Fix new user does not appear in start chat after request IOU

Details

Fix new user does not appear in start chat after request IOU
Fixed Issues

$ https://github.com/Expensify/App/issues/30296
PROPOSAL: https://github.com/Expensify/App/issues/30296#issuecomment-1778602547
Tests

Go to FAB > Request money
Create a request money with a new user
Go to FAB > Start chat
Enter the user whom we created request above
Verify that this user is displayed in start chat

[x] Verify that no errors appear in the JS console

Offline tests

Same as above
QA Steps

Go to FAB > Request money
Create a request money with a new user
Go to FAB > Start chat
Enter the user whom we created request above
Verify that this user is displayed in start chat

[x] Verify that no errors appear in the JS console

PR Author Checklist

[x] I linked the correct issue in the ### Fixed Issues section above
[x] I wrote clear testing steps that cover the changes made in this PR

[x] I added steps for local testing in the Tests section
[x] I added steps for the expected offline behavior in the Offline steps section
[x] I added steps for Staging and/or Production testing in the QA steps section
[x] I added steps to cover failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)
[x] I tested this PR with a High Traffic account against the staging or production API to ensure there are no regressions (e.g. long loading states that impact usability).

[x] I included screenshots or videos for tests on all platforms
[x] I ran the tests on all platforms & verified they passed on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[x] I verified there are no console errors (if there's a console error not related to the PR, report it or open an issue for it to be fixed)
[x] I followed proper code patterns (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick)
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method

[x] If any non-english text was added/modified, I verified the translation was requested/reviewed in #expensify-open-source and it was approved by an internal Expensify engineer. Link to Slack message:

[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I followed the guidelines as stated in the Review Guidelines
[x] I tested other components that can be impacted by my changes (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar are working as expected)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] I verified that if a function's arguments changed that all usages have also been updated correctly
[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG))

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.

Screenshots/Videos

Android: Native
https://github.com/Expensify/App/assets/129500732/b93d529f-d690-4af9-aaa5-9202da14f16a

Android: mWeb Chrome
https://github.com/Expensify/App/assets/129500732/cc3ef1f1-6c2b-45b0-aa7c-f93b36fd7550

iOS: Native
https://github.com/Expensify/App/assets/129500732/376330b2-1d81-429f-b3e7-354308330e1e

iOS: mWeb Safari
https://github.com/Expensify/App/assets/129500732/a6044b6c-2e0c-4ee5-b81f-d01e2246de34

MacOS: Chrome / Safari
https://github.com/Expensify/App/assets/129500732/36ae5e2c-f0dd-41aa-9e73-cfefb5a44a73

MacOS: Desktop
https://github.com/Expensify/App/assets/129500732/6b5dbceb-1ea8-4caf-b5f0-5279e8d580fb

Reviewing now

@dukenv0307 Checked with multiple different emails, same case still exists.

Got it. @dukenv0307 . Seems for some accounts its still the issue.
Will testing with your account mentioned.

Reviewer Checklist

[x] I have verified the author checklist is complete (all boxes are checked off).
[x] I verified the correct issue is linked in the ### Fixed Issues section above
[x] I verified testing steps are clear and they cover the changes made in this PR

[x] I verified the steps for local testing are in the Tests section
[x] I verified the steps for Staging and/or Production testing are in the QA steps section
[x] I verified the steps cover any possible failure scenarios (i.e. verify an input displays the correct error message if the entered data is not correct)
[x] I turned off my network connection and tested it while offline to ensure it matches the expected behavior (i.e. verify the default avatar icon is displayed if app is offline)

[x] I checked that screenshots or videos are included for tests on all platforms
[ ] I included screenshots or videos for tests on all platforms
[x] I verified tests pass on all platforms & I tested again on:

[x] Android: Native
[x] Android: mWeb Chrome
[x] iOS: Native
[x] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[x] MacOS: Desktop

[ ] If there are any errors in the console that are unrelated to this PR, I either fixed them (preferred) or linked to where I reported them in Slack
[x] I verified proper code patterns were followed (see Reviewing the code)

[x] I verified that any callback methods that were added or modified are named for what the method does and never what callback they handle (i.e. toggleReport and not onIconClick).
[x] I verified that the left part of a conditional rendering a React component is a boolean and NOT a string, e.g. myBool && <MyComponent />.
[x] I verified that comments were added to code that is not self explanatory
[x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing.
[x] I verified any copy / text shown in the product is localized by adding it to src/languages/* files and using the translation method
[x] I verified all numbers, amounts, dates and phone numbers shown in the product are using the localization methods
[x] I verified any copy / text that was added to the app is grammatically correct in English. It adheres to proper capitalization guidelines (note: only the first word of header/labels should be capitalized), and is approved by marketing by adding the Waiting for Copy label for a copy review on the original GH to get the correct copy.
[x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README.
[x] I verified the JSDocs style guidelines (in STYLE.md) were followed

[x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers
[x] I verified that this PR follows the guidelines as stated in the Review Guidelines
[x] I verified other components that can be impacted by these changes have been tested, and I retested again (i.e. if the PR modifies a shared library or component like Avatar, I verified the components using Avatar have been tested & I retested again)
[x] I verified all code is DRY (the PR doesn't include any logic written more than once, with the exception of tests)
[x] I verified any variables that can be defined as constants (ie. in CONST.js or at the top of the file that uses the constant) are defined as such
[x] If a new component is created I verified that:

[x] A similar component doesn't exist in the codebase
[x] All props are defined accurately and each prop has a /** comment above it */
[x] The file is named correctly
[x] The component has a clear name that is non-ambiguous and the purpose of the component can be inferred from the name alone
[x] The only data being stored in the state is data necessary for rendering and nothing else
[x] For Class Components, any internal methods passed to components event handlers are bound to this properly so there are no scoping issues (i.e. for onClick={this.submit} the method this.submit should be bound to this in the constructor)
[x] Any internal methods bound to this are necessary to be bound (i.e. avoid this.submit = this.submit.bind(this); if this.submit is never passed to a component event handler like onClick)
[x] All JSX used for rendering exists in the render method
[x] The component has the minimum amount of code necessary for its purpose, and it is broken down into smaller components in order to separate concerns and functions

[x] If any new file was added I verified that:

[x] The file has a description of what it does and/or why is needed at the top of the file if the code is not self explanatory

[x] If a new CSS style is added I verified that:

[x] A similar style doesn't already exist
[x] The style can't be created with an existing StyleUtils function (i.e. StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)

[x] If the PR modifies code that runs when editing or sending messages, I tested and verified there is no unexpected behavior for all supported markdown - URLs, single line code, code blocks, quotes, headings, bold, strikethrough, and italic.
[x] If the PR modifies a generic component, I tested and verified that those changes do not break usages of that component in the rest of the App (i.e. if a shared library or component like Avatar is modified, I verified that Avatar is working as expected in all cases)
[x] If the PR modifies a component related to any of the existing Storybook stories, I tested and verified all stories for that component are still working as expected.
[x] If the PR modifies a component or page that can be accessed by a direct deeplink, I verified that the code functions as expected when the deeplink is used - from a logged in and logged out account.
[x] If a new page is added, I verified it's using the ScrollView component to make it scrollable when more elements are added to the page.
[x] If the main branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to the Test steps.
[ ] I have checked off every checkbox in the PR reviewer checklist, including those that don't apply to this PR.

Screenshots/Videos

Android: Native

https://github.com/Expensify/App/assets/46707890/3b7cdd38-d96c-431c-a60e-8fa21c2d8e1f

Android: mWeb Chrome

https://github.com/Expensify/App/assets/46707890/4c910fe0-6bb6-4879-973a-e73a3a16c879

iOS: Native

https://github.com/Expensify/App/assets/46707890/7dfeacc0-ebe1-4cb3-8231-204ac5131c34

iOS: mWeb Safari

https://github.com/Expensify/App/assets/46707890/28867aa3-71aa-4d92-aaa7-cb34c85143f5

MacOS: Chrome / Safari

https://github.com/Expensify/App/assets/46707890/dd831160-cf30-4caf-bae8-e84d9c32616b

MacOS: Desktop

https://github.com/Expensify/App/assets/46707890/e8575383-a8a5-4e62-a460-fa601960ec1f

:hand: This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release.

🚀 Deployed to staging by https://github.com/madmax330 in version: 1.4.14-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅

🚀 Deployed to staging by https://github.com/madmax330 in version: 1.4.14-0 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
success ✅

🕸 web 🕸
success ✅

🚀 Deployed to production by https://github.com/jasperhuangg in version: 1.4.14-6 🚀

platform
result

🤖 android 🤖
success ✅

🖥 desktop 🖥
success ✅

🍎 iOS 🍎
failure ❌

🕸 web 🕸
success ✅


ImportError: No module named web

I'm having trouble with the commands to build the examples on Windows.  I'm using  Python 2.7 on Windows 7.
C:\jit>python make.py build
Traceback (most recent call last):
  File "make.py", line 6, in <module>
    from serve import render
  File "C:\jit\serve.py", line 1, in <module>
    import web
ImportError: No module named web

I tried adding c:\jit to my PATH env var, and to PYTHONPATH, to no avail.
Can someone please tell me how to get this to run?
Thanks.

It's because the web directory is a symbolic link to webpy/web. Windows tends not to support symbolic links with git, and so the web directory appears broken.
As a workaround, just copy webpy/web to web, and it should work again.


NixOS: Unable to build the plugin

Hi! I've just recently started trying out nixos and I am trying to get my hyprland setup from arch ported to nix.
I am trying to include this plugin but i am encoutering the error: Configuring incomplete, errors occurred! when running home-manager switch --flake ./ from where my flake is.
here is the full log:
@nix { "action": "setPhase", "phase": "unpackPhase" }
Running phase: unpackPhase
unpacking source archive /nix/store/ny48grcxzz34945k29iz3likha0qrhj8-source
source root is source
@nix { "action": "setPhase", "phase": "patchPhase" }
Running phase: patchPhase
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
Running phase: updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "configurePhase" }
Running phase: configurePhase
fixing cmake files...
cmake flags: -GNinja -DCMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_BUILD_TYPE=RelWithDebInfo -DBUILD_TESTING=OFF -DCMAKE_INS>
-- The C compiler identification is GNU 13.3.0
-- The CXX compiler identification is GNU 13.3.0
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /nix/store/zansxqviinfh345skvpy5f0z58snr229-gcc-wrapper-13.3.0/bin/gcc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /nix/store/zansxqviinfh345skvpy5f0z58snr229-gcc-wrapper-13.3.0/bin/g++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Gathering git info
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
CMake Error at CMakeLists.txt:32 (add_subdirectory):
  The source directory

    /build/source/subprojects/udis86

  does not contain a CMakeLists.txt file.

-- Setting up wlroots
-- Found PkgConfig: /nix/store/2hfzaqv42iwrpk3ya24cnjsklz6f68lw-pkg-config-wrapper-0.29.2/bin/pkg-config (found version "0.29.2")
-- Found WaylandScanner at /nix/store/wbl7gr8h4kq166mvksql9pkwn7cg3i6p-wayland-1.22.0-bin/bin/wayland-scanner
-- Found wayland-protocols at //nix/store/zpvm7frfza5zz7asifi1xh0ca8h1v8n8-wayland-protocols-1.35/share/wayland-protocols
-- Configuring Hyprland in Release with CMake
-- Checking deps...
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found OpenGL: /nix/store/a5vcvrkh1c2ng5kr584g3zw3991vnhks-libGL-1.7.0/lib/libOpenGL.so  found components: GLES3
-- Checking for modules 'xkbcommon;uuid;wayland-server;wayland-client;wayland-cursor;wayland-protocols;cairo;pango;pangocairo;pixman-1;libdrm;libinput;hwdata;libseat;libdisplay-info;libliftoff;libudev;gbm;hy>
--   Found xkbcommon, version 1.7.0
--   Found uuid, version 2.39.4
--   Found wayland-server, version 1.22.0
--   Found wayland-client, version 1.22.0
--   Found wayland-cursor, version 1.22.0
--   Found wayland-protocols, version 1.35
--   Found cairo, version 1.18.0
--   Found pango, version 1.52.2
--   Found pangocairo, version 1.52.2
--   Found pixman-1, version 0.43.4
--   Found libdrm, version 2.4.120
--   Found libinput, version 1.25.0
--   Found hwdata, version 0.382
--   Found libseat, version 0.8.0
--   Found libdisplay-info, version 0.1.1
--   Found libliftoff, version 0.4.1
--   Found libudev, version 255
--   Found gbm, version 24.1.1
--   Found hyprlang, version 0.5.2
--   Found hyprcursor, version 0.1.9
--   Found hyprutils, version 0.1.4
-- Looking for execinfo.h
-- Looking for execinfo.h - found
-- Configuration supports execinfo
-- Looking for backtrace in execinfo
-- Looking for backtrace in execinfo - not found
-- Looking for sys/timerfd.h
-- Looking for sys/timerfd.h - found
-- Checking for module 'epoll-shim'
--   No package 'epoll-shim' found
-- XWAYLAND Enabled (NO_XWAYLAND not defined) checking deps...
-- Checking for modules 'xcb;xwayland;xcb-util;xcb-render;xcb-xfixes;xcb-icccm;xcb-composite;xcb-res;xcb-ewmh;xcb-errors'
--   Found xcb, version 1.17.0
--   Found xwayland, version 24.1.0
--   Found xcb-util, version 0.4.1
--   Found xcb-render, version 1.17.0
--   Found xcb-xfixes, version 1.17.0
--   Found xcb-icccm, version 0.4.2
--   Found xcb-composite, version 1.17.0
--   Found xcb-res, version 1.17.0
--   Found xcb-ewmh, version 0.4.2
--   Found xcb-errors, version 1.0.1
-- SYSTEMD support is requested (NO_SYSTEMD not defined)...
-- Setting precompiled headers
-- Setting link libraries
-- Checking for module 'hyprutils>=0.1.1'
--   Found hyprutils, version 0.1.4
-- Checking for modules 'tomlplusplus;hyprutils>=0.1.1'
--   Found tomlplusplus, version 3.4.0
--   Found hyprutils, version 0.1.4
-- Configuring incomplete, errors occurred!

here is my flake setup
https://github.com/winterSteve25/dotfiles/blob/nixos/flake.nix
and this is my plugin setup
https://github.com/winterSteve25/dotfiles/blob/nixos/home/hyprland.nix
Any help is greatly appreciated, thanks!!

I know nothing about NixOS, but it seems from this:
-- Gathering git info
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
fatal: not a git repository (or any of the parent directories): .git
CMake Error at CMakeLists.txt:32 (add_subdirectory):
  The source directory

    /build/source/subprojects/udis86

  does not contain a CMakeLists.txt file.

that maybe the Hyprland submodules are not correctly cloned? Can you do some kind of recursive clone?
Does it also fail if you don't add the plugin? Because it seems to fail at the Hyprland configure step, not this plugin's

Hmm, maybe? Hyprland itself works fine though.

Specifying a submodule on the hyprland repo seems to have fixed the issue, but now I'm experiencing the same issue as #30

The issue has been resolved by following that thread, thanks for pointing me in the right direction!


Position Top Center dont works

I put the Menu to Top but when i Click opens the sub buttons to left side not to bottom. How can i Fix this? Please Help me

Add the following 2 lines in your code if you want to put it at the top|centre :
setStartAngle(180)
setEndAngle(0)
If you want to put it at any other place just play with the two angles and find whats best suited for you.
For example the below code is for a fab button at the bottom | centre
FloatingActionMenu actionMenu = new FloatingActionMenu.Builder(this)
                .setStartAngle(-180)
                .setEndAngle(0)
                .addSubActionView(button1)
                .addSubActionView(button2)
                .addSubActionView(button3)
                .addSubActionView(button4)
                .attachTo(mFloatingActionButton)
                .build();


Use Chain.init_scope in the quick start

Initialization of links with Chain.__init__ is obsolete from Chainer v2. This PR changes to use Chain.init_scope instead in the quick start. As some I ran the code to confirm it works well, some results have changed (mainly caused by the change of random seed). Let me know if it is troublesome.

Coverage remained the same at 71.567% when pulling 23f201b556f3010316c996d7847efe841c321ea7 on delta2323:update-quickstart into 9c7136ae55962190b41c550ecaa41c8a84ac5cd6 on chainer:master.

LGTM


Bug in member seeder

bug import class in member seeder
add predis package as option for using redis driver
update gitignore to ignore pnpm lock file

PR added to the release 1.0.2


MAN, you fact your....

It's obvious that "manufactured" is not gender-neutral as it clearly contains the 3 letter word, "man".

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

ID: 8e3fbd78-e2ad-bfc6-9f2f-13f739b57937
Version Independent ID: 9ce3e837-12b6-e7b8-6bef-597ec2570dbb
Content: Bias-free communication - Microsoft Style Guide
Content Source: styleguide/bias-free-communication.md
Product: non-product-specific
GitHub Login: @pallep
Microsoft Alias: pallep

Well then, what about MENopause? MENstruation? MENtal breakdown?

Now that you MENtion it...those too are tragically NOT gender-neutral.
May I suggest:
MENopause = can't breed
MENstruation = raining blood
MENtal breakdown = lost your sh!t

what about MANager?

Not so fast on "MANufacture"...consider it's etymology and you'll see that you're arbitrarily attributing meaning where those three letters (in this instance) have none. The word comes from the 1560s, "something made by hand," from Middle French manufacture (16th century), from Medieval Latin manufactura "a making by hand". https://www.etymonline.com/word/manufacture

"MANufacture"...consider it's etymology and you'll see that you're arbitrarily attributing meaning

the complaint was obviously sarcasm to point out the pedantic nature of microsofts demands.

Fair enough, @DatPat  (<:


Track additional state for a build within an endpoint RegenerationContext

Being able to track state about a specific regeneration is quite useful in Cilium. To trigger certain events in policy calculation in Cilium, we have fields in Endpoint like forcePolicyCompute which were added in order to trigger certain behavior on certain regenerations. Instead of storing such information in the endpoint, store it in an endpoint.RegenerationRequest, which is passed down through the regeneration process. This reduces the amount of state held in the endpoint itself (which requires locking), and instead keeps state related to regeneration passed as an immutable parameter. I think this would reduce the need for a fair amount of locking for a given endpoint.
Along with this, add a UUID for use in this RegenerationContext. This would be used for logging during a given regeneration.

I'd propose the following:
// RegenerationContext provides context to regenerate() calls to determine
// the caller, and which specific aspects to regeneration are necessary to
// update the datapath to implement the new behavior.
type RegenerationContext struct {
	// Reason provides context to source for the regeneration, which is
	// used to generate useful log messages.
	Reason string

	// ReloadDatapath forces the datapath programs to be reloaded. It does
	// not guarantee recompilation of the programs.
	ReloadDatapath bool

	// Stats are collected during the endpoint regeneration and provided
	// back to the caller
	Stats regenerationStatistics

        // This regeneration was caused by a change of endpoint's identity.
        IdentityChange bool

        // This regeneration was caused by a change of endpoint's configuration.
        ConfigurationUpdate *models.ConfigurationMap

        // This regeneration was caused by a change in the policy repository (addition, deletion, update of rules).
        PolicyUpdate bool

        // Whether daemon configuration was updated and requires regeneration of endpoint programs.
        DaemonConfigurationUpdate bool
}

Thoughts?

Related-to https://github.com/cilium/cilium/issues/5365

Reopening, this is still relevant.


Friendly Ask

i am reading the paper 《Tiny Time Mixers (TTMs): Fast Pre-trained Models for Enhanced Zero/Few-Shot Forecasting of Multivariate Time Series》, and i search the model name on the GitHub and find this repo, so i want to know is this the official repo for the paper , because i saw the code is extremely sample

I'm re-implementing the paper for my own learning.
It's still alpha code.
Thanks for asking.

get it , thank you for your reply


Expose curdoc and session_context when using serve

Addresses https://github.com/pyviz/panel/issues/294

Codecov Report

Merging #336 into master will decrease coverage by 0.01%.
The diff coverage is 95.74%.

@@            Coverage Diff             @@
##           master     #336      +/-   ##
==========================================
- Coverage   89.47%   89.45%   -0.02%
==========================================
  Files          85       85
  Lines        6872     6888      +16
==========================================
+ Hits         6149     6162      +13
- Misses        723      726       +3

Impacted Files
Coverage Δ

panel/io/model.py
49.01% <0%> (ø)
:arrow_up:

panel/io/notebook.py
69.74% <0%> (ø)
:arrow_up:

panel/pane/tests/test_holoviews.py
100% <100%> (ø)
:arrow_up:

panel/pane/tests/test_base.py
100% <100%> (ø)
:arrow_up:

panel/tests/test_interact.py
100% <100%> (ø)
:arrow_up:

panel/tests/test_layout.py
100% <100%> (ø)
:arrow_up:

panel/widgets/tests/test_button.py
100% <100%> (ø)
:arrow_up:

panel/tests/test_param.py
100% <100%> (ø)
:arrow_up:

panel/io/save.py
80% <100%> (ø)
:arrow_up:

panel/tests/test_io.py
100% <100%> (ø)
:arrow_up:

... and 17 more

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 12287d2...fd38048. Read the comment docs.


Unhandled duplicate present-proof record error during Person flow

Description of problem
During the Person flow, duplicate proof requests are being received - see below error. I'm not sure how or why multiple identical proof requests are being received by the wallet. It doesn't appear to affect the user, but it should be fixed regardless.
Expected behavior
No duplicate entries
Steps to reproduce
Go through Person flow multiple times.
Screenshots and/or log output
WARN  Possible Unhandled Promise Rejection (id: 0):
[RecordDuplicateError: DidCommMessageRecord: Multiple records found for given query '{"associatedRecordId":"b80eb0e3-4212-489e-beaf-7f1b5eacbe15","messageName":"presentation","protocolName":"present-proof","protocolMajorVersion":"1"}']

Environment

[ ] Occurs on Android (not tested)
[x] Occurs on iOS

Build #:
1701 and earlier
Android Device Model:
iOS Device Model:
Workaround
Severity

[ ] High
[x] Medium
[ ] Low

Haven't seen this for awhile, closing


Aperture native timeouts

With this PR now stable and close to being merged into the aperture repo, we can use that to provide LSAT expiration support from aperture baked LSATs. This simplifies the application by quite a bit and makes it easier to deploy a meme server that can be protected by an LSAT that can expire. This also means that the only caveats sphinx-meme has to care about are application specific (currently just file size limits as documented here).
This PR supersedes this one in sphinx-meme by using the new aperture docker image for aperture. It also replaces the sphinx meme image which is over 2 years old with a newer one that supports the new largefile endpoint (that is opt-in only). Ideally the official image can be updated and used here (the one referenced is just build and published from master).

sorry to have missed this one @bucko13 ! I was travelling quite a bit this spring, but finally back in action


HTTP timeout improvements

This leverages the tuple timeout of the requests package in order to distinguish between the connection timeout and the response read timeout.
When a timeout is passed as a numeric value, it refers to the read_timeout.
When no explicit timeout is passed, the core.timeout value in the config file is now used, or if not present, defaults to 180. This also refers to the read_timeout.
The connection timeout defaults to 5. In order to overwrite it, one must pass a tuple of the form (connection_timeout, read_timeout).
https://jira.mesosphere.com/browse/DCOS_OSS-1956
https://jira.mesosphere.com/browse/DCOS_OSS-1957

run all integration tests

Thank you Bilal.
Unfortunately, if my testing is valid, this does not address the problem fully.
The following is an attempt to set the timeout to 600, and then you can see that there is still an error when installing the Enterprise CLI at a timeout of 15 seconds.
Adam@MacBook-Pro ~/D/m/m/dcos-cli> git branch
* (HEAD detached at bilal/DCOS_OSS-1956)
Adam@MacBook-Pro ~/D/m/m/d/cli> rm -rf dist/
Adam@MacBook-Pro ~/D/m/m/d/cli> make binary
...
Adam@MacBook-Pro ~/D/m/m/d/cli> dist/dcos config set core.timeout 60
[core.timeout]: already set to '60'
Adam@MacBook-Pro ~/D/m/m/d/cli> dist/dcos --log-level=debug --debug package install --cli dcos-enterprise-cli --yes
MainThread: 2017-12-18 20:53:05,680 dcos/http.py:_request:155 - Sending HTTP ['get'] to ['https://<IP_ADDRESS>/capabilities']: {'Accept': 'application/vnd.dcos.capabilities+json;charset=utf-8;version=v1', 'Content-Type': 'application/vnd.dcos.capabilities+json;charset=utf-8;version=v1'}
MainThread: 2017-12-18 20:53:05,687 urllib3/connectionpool.py:_new_conn:824 - Starting new HTTPS connection (1): <IP_ADDRESS>
send: b'GET /capabilities HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nUser-Agent: python-requests/2.18.4\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nAccept: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nContent-Type: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDA1NDc4MX0.IBOY8X8Bc7UmzalNMU51MowtM25JOhr8CPopcaAgqnAbKEJPslpMplPE_rZep39qGqj_ZueZCMKEkhTGAkgMsDpqIBgm1Wx-p6Cy_rg6BpVqVg3q-RBvnQyc1D4hUBN6BM5RLoPrWo1wwHGveuQ-RRE9hodXkr1f4U9kId2lQLtxYDN6DSeyLTI78aLsrFS7gGdNxSshTkAemAAdpsoQVgPg6MkM2aohcVu9XR9pGcGvpek266K7zDUMZWg0Gz0ocps_0c1JaQYhDaDIpfWaaM0lzQUoTEU3Q4Y04KyXJM4rr1qEhi9atFA26gfIRY2V00vYs-lWMRRxbCFEsqzRKQ\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
MainThread: 2017-12-18 20:53:05,858 urllib3/connectionpool.py:_make_request:396 - https://<IP_ADDRESS>:443 "GET /capabilities HTTP/1.1" 200 144
MainThread: 2017-12-18 20:53:05,863 dcos/http.py:_request:185 - Received HTTP response [200]: {'Date': 'Mon, 18 Dec 2017 20:53:40 GMT', 'Connection': 'keep-alive', 'Server': 'openresty/<IP_ADDRESS>', 'Content-Type': 'application/vnd.dcos.capabilities+json;charset=utf-8;version=v1', 'Content-Length': '144'}
MainThread: 2017-12-18 20:53:05,863 dcos/util.py:timer:609 - duration: dcos.http._request: 0.18s
MainThread: 2017-12-18 20:53:05,875 dcos/http.py:_request:155 - Sending HTTP ['post'] to ['https://<IP_ADDRESS>/package/describe']: {'Accept': 'application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3', 'Content-Type': 'application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1'}
MainThread: 2017-12-18 20:53:05,877 urllib3/connectionpool.py:_new_conn:824 - Starting new HTTPS connection (1): <IP_ADDRESS>
header: Server header: Date header: Content-Type header: Content-Length header: Connection send: b'POST /package/describe HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nUser-Agent: python-requests/2.18.4\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nAccept: application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3\r\nContent-Type: application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1\r\nContent-Length: 38\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDA1NDc4MX0.IBOY8X8Bc7UmzalNMU51MowtM25JOhr8CPopcaAgqnAbKEJPslpMplPE_rZep39qGqj_ZueZCMKEkhTGAkgMsDpqIBgm1Wx-p6Cy_rg6BpVqVg3q-RBvnQyc1D4hUBN6BM5RLoPrWo1wwHGveuQ-RRE9hodXkr1f4U9kId2lQLtxYDN6DSeyLTI78aLsrFS7gGdNxSshTkAemAAdpsoQVgPg6MkM2aohcVu9XR9pGcGvpek266K7zDUMZWg0Gz0ocps_0c1JaQYhDaDIpfWaaM0lzQUoTEU3Q4Y04KyXJM4rr1qEhi9atFA26gfIRY2V00vYs-lWMRRxbCFEsqzRKQ\r\n\r\n'
send: b'{"packageName": "dcos-enterprise-cli"}'
MainThread: 2017-12-18 20:53:21,010 dcos/http.py:_request:177 - HTTP Timeout
Traceback (most recent call last):
  File "urllib3/connectionpool.py", line 387, in _make_request
  File "<string>", line 2, in raise_from
  File "urllib3/connectionpool.py", line 383, in _make_request
  File "http/client.py", line 1198, in getresponse
  File "http/client.py", line 297, in begin
  File "http/client.py", line 258, in _read_status
  File "socket.py", line 576, in readinto
  File "ssl.py", line 937, in recv_into
  File "ssl.py", line 799, in read
  File "ssl.py", line 583, in read
socket.timeout: The read operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "requests/adapters.py", line 440, in send
  File "urllib3/connectionpool.py", line 639, in urlopen
  File "urllib3/util/retry.py", line 357, in increment
  File "urllib3/packages/six.py", line 686, in reraise
  File "urllib3/connectionpool.py", line 601, in urlopen
  File "urllib3/connectionpool.py", line 389, in _make_request
  File "urllib3/connectionpool.py", line 309, in _raise_timeout
urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='<IP_ADDRESS>', port=443): Read timed out. (read timeout=15)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "dcos/http.py", line 164, in _request
  File "requests/api.py", line 58, in request
  File "requests/sessions.py", line 508, in request
  File "requests/sessions.py", line 618, in send
  File "requests/adapters.py", line 521, in send
requests.exceptions.ReadTimeout: HTTPSConnectionPool(host='<IP_ADDRESS>', port=443): Read timed out. (read timeout=15)
MainThread: 2017-12-18 20:53:21,013 dcos/util.py:timer:609 - duration: dcos.http._request: 15.14s
Request to URL [https://<IP_ADDRESS>/package/describe] timed out.

Thank you Bilal.
Unfortunately, if my testing is valid, this does not address the problem fully.
The following is an attempt to set the timeout to 600, and then you can see that there is still an error when installing the Enterprise CLI at a timeout of 15 seconds.
Adam@MacBook-Pro ~/D/m/m/dcos-cli> git branch
* (HEAD detached at bilal/DCOS_OSS-1956)
Adam@MacBook-Pro ~/D/m/m/d/cli> rm -rf dist/
Adam@MacBook-Pro ~/D/m/m/d/cli> make binary
...
Adam@MacBook-Pro ~/D/m/m/d/cli> dist/dcos config set core.timeout 60
[core.timeout]: already set to '60'
Adam@MacBook-Pro ~/D/m/m/d/cli> dist/dcos --log-level=debug --debug package install --cli dcos-enterprise-cli --yes
MainThread: 2017-12-18 20:53:05,680 dcos/http.py:_request:155 - Sending HTTP ['get'] to ['https://<IP_ADDRESS>/capabilities']: {'Accept': 'application/vnd.dcos.capabilities+json;charset=utf-8;version=v1', 'Content-Type': 'application/vnd.dcos.capabilities+json;charset=utf-8;version=v1'}
MainThread: 2017-12-18 20:53:05,687 urllib3/connectionpool.py:_new_conn:824 - Starting new HTTPS connection (1): <IP_ADDRESS>
send: b'GET /capabilities HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nUser-Agent: python-requests/2.18.4\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nAccept: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nContent-Type: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDA1NDc4MX0.IBOY8X8Bc7UmzalNMU51MowtM25JOhr8CPopcaAgqnAbKEJPslpMplPE_rZep39qGqj_ZueZCMKEkhTGAkgMsDpqIBgm1Wx-p6Cy_rg6BpVqVg3q-RBvnQyc1D4hUBN6BM5RLoPrWo1wwHGveuQ-RRE9hodXkr1f4U9kId2lQLtxYDN6DSeyLTI78aLsrFS7gGdNxSshTkAemAAdpsoQVgPg6MkM2aohcVu9XR9pGcGvpek266K7zDUMZWg0Gz0ocps_0c1JaQYhDaDIpfWaaM0lzQUoTEU3Q4Y04KyXJM4rr1qEhi9atFA26gfIRY2V00vYs-lWMRRxbCFEsqzRKQ\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
MainThread: 2017-12-18 20:53:05,858 urllib3/connectionpool.py:_make_request:396 - https://<IP_ADDRESS>:443 "GET /capabilities HTTP/1.1" 200 144
MainThread: 2017-12-18 20:53:05,863 dcos/http.py:_request:185 - Received HTTP response [200]: {'Date': 'Mon, 18 Dec 2017 20:53:40 GMT', 'Connection': 'keep-alive', 'Server': 'openresty/<IP_ADDRESS>', 'Content-Type': 'application/vnd.dcos.capabilities+json;charset=utf-8;version=v1', 'Content-Length': '144'}
MainThread: 2017-12-18 20:53:05,863 dcos/util.py:timer:609 - duration: dcos.http._request: 0.18s
MainThread: 2017-12-18 20:53:05,875 dcos/http.py:_request:155 - Sending HTTP ['post'] to ['https://<IP_ADDRESS>/package/describe']: {'Accept': 'application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3', 'Content-Type': 'application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1'}
MainThread: 2017-12-18 20:53:05,877 urllib3/connectionpool.py:_new_conn:824 - Starting new HTTPS connection (1): <IP_ADDRESS>
header: Server header: Date header: Content-Type header: Content-Length header: Connection send: b'POST /package/describe HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nUser-Agent: python-requests/2.18.4\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nAccept: application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3\r\nContent-Type: application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1\r\nContent-Length: 38\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDA1NDc4MX0.IBOY8X8Bc7UmzalNMU51MowtM25JOhr8CPopcaAgqnAbKEJPslpMplPE_rZep39qGqj_ZueZCMKEkhTGAkgMsDpqIBgm1Wx-p6Cy_rg6BpVqVg3q-RBvnQyc1D4hUBN6BM5RLoPrWo1wwHGveuQ-RRE9hodXkr1f4U9kId2lQLtxYDN6DSeyLTI78aLsrFS7gGdNxSshTkAemAAdpsoQVgPg6MkM2aohcVu9XR9pGcGvpek266K7zDUMZWg0Gz0ocps_0c1JaQYhDaDIpfWaaM0lzQUoTEU3Q4Y04KyXJM4rr1qEhi9atFA26gfIRY2V00vYs-lWMRRxbCFEsqzRKQ\r\n\r\n'
send: b'{"packageName": "dcos-enterprise-cli"}'
MainThread: 2017-12-18 20:53:21,010 dcos/http.py:_request:177 - HTTP Timeout
Traceback (most recent call last):
  File "urllib3/connectionpool.py", line 387, in _make_request
  File "<string>", line 2, in raise_from
  File "urllib3/connectionpool.py", line 383, in _make_request
  File "http/client.py", line 1198, in getresponse
  File "http/client.py", line 297, in begin
  File "http/client.py", line 258, in _read_status
  File "socket.py", line 576, in readinto
  File "ssl.py", line 937, in recv_into
  File "ssl.py", line 799, in read
  File "ssl.py", line 583, in read
socket.timeout: The read operation timed out

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "requests/adapters.py", line 440, in send
  File "urllib3/connectionpool.py", line 639, in urlopen
  File "urllib3/util/retry.py", line 357, in increment
  File "urllib3/packages/six.py", line 686, in reraise
  File "urllib3/connectionpool.py", line 601, in urlopen
  File "urllib3/connectionpool.py", line 389, in _make_request
  File "urllib3/connectionpool.py", line 309, in _raise_timeout
urllib3.exceptions.ReadTimeoutError: HTTPSConnectionPool(host='<IP_ADDRESS>', port=443): Read timed out. (read timeout=15)

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "dcos/http.py", line 164, in _request
  File "requests/api.py", line 58, in request
  File "requests/sessions.py", line 508, in request
  File "requests/sessions.py", line 618, in send
  File "requests/adapters.py", line 521, in send
requests.exceptions.ReadTimeout: HTTPSConnectionPool(host='<IP_ADDRESS>', port=443): Read timed out. (read timeout=15)
MainThread: 2017-12-18 20:53:21,013 dcos/util.py:timer:609 - duration: dcos.http._request: 15.14s
Request to URL [https://<IP_ADDRESS>/package/describe] timed out.

@adamtheturtle : my bad this was quite messy, I've adjusted the PR to match with the doc and introduced a connection timeout. This should fix your problem.

Thanks @bamarni - let me know when you'd like another review.

@adamtheturtle : I've updated the PR and added tests. Only fixing the code to use the core.timeout config value is not enough, I'm seeing more and more reports of timeout errors (mainly in the context of cosmos) lately. From DC/OS 1.11, 5 seconds is not enough anymore, therefore the default has to be bumped.
As this PR now makes the distinction between the connection and read timeout, I'm fine with using the documented 180 seconds.

Thank you @bamarni - I want to do two tests with the built binary before approving this:

Make sure that I can install the Enterprise CLI
Set the default timeout to 1 second and see the timeout error that I saw before

Otherwise, I'm happy. We've discussed some code organisation, but I am a consumer and will leave it to you to make the decisions about how to organise the code you are maintaining.
Please can you link to the JIRA issue(s) that you propose this closes, so that reviewers can assess whether this is a comprehensive fix.
Other than that, this changes the default read timeout to 180 seconds. I'd like @jgehrcke to have the opportunity to comment on that. I really don't have well informed opinions on that matter.

Other than that, this changes the default read timeout to 180 seconds. I'd like @jgehrcke to have the opportunity to comment on that. I really don't have well informed opinions on that matter.

I assume it changes the read timeout to 180 seconds from a rather small value. This is a good choice.
Here is how I see what matters in this context in practice:
The connect timeout
In practice, a TCP connection attempt should rarely take longer than a few seconds. Even under extremely bad transport layer conditions. Therefore, a very long connect() timeout rarely makes sense for a program that a human user interacts with. If that program could not connect() to the remote end within 5 s to 10 s then the user deserves to see a corresponding error message and might want to retry manually.
The receive/read timout
In practice, after a TCP connection has been established and after an HTTP request has been sent through it, it might take the remote system a long while to process the HTTP request and to generate a corresponding HTTP response. The time between receiving the request and emitting the response cannot in general be assumed to be limited by the network, but by anything (think of a compute job that takes 10 s or 1 min to complete before a response can be emitted). Before the response is generated the client hangs in a recv() system call and the receive/read timeout applies. Of course, the goal is to provide an error message to the user as early as possible, whenever it makes sense. However, an even more important goal is to not abort the recv() prematurely, e.g. 1 second before the HTTP response would have arrived (I think that's the case that you, Adam, ran into). That is why for setting a reasonable receive timeout ideally we understand what the conceptual upper bound is for the duration of the operation in question. If we don't know that (as seems to be the case for some operations performed by Cosmos) the only reasonable option then is to set a large receive timeout to make sure that the client waits "long enough". I think that's what "this changes the default read timeout to 180 seconds" achieves here. It's a change pro reliability, and not so much for UX. When we have to pick one, reliability is more important than UX, so that's the correct first step.

Thanks @jgehrcke . @bamarni - that confirms to me that is a good change. Please make the minor changes I suggested and then I will do a manual test as described above. Then I expect to approve this PR.

@adamtheturtle : about the 3 places with the 5 seconds timeout you've commented on, they correspond to

/metadata : used when setting-up a cluster
/dcos-metadata/dcos-version.json
/mesos/state-summary

These requests are either made when setting-up a cluster or listing clusters (to have their version in the list). Historically the timeout has been set to something low because they might not be reachable and we want to fail early in such cases (eg. it means the user made a typo when doing cluster setup, or that a cluster is down and the version shown in cluster list should be N/A).
So here what matters the most here is the connection timeout which has to be low, in order to fail fast when the connection cannot be established (this is something expected and valid for the use-cases I mentioned before). As for reading the responses, they are pretty small and delivered fast from my experience, there were already a small timeout there (even 1sec). It is very unlikely that they fail because of the read timeout (maybe the mesos state summary is a little slower than the others, but it is already using a 5 seconds timeout currently).
Thanks @jgehrcke for the detailed explanation, I also agree that the connect timeout should be pretty low and the read timeout higher. In the future we might adjust the read timeout on a component per component basis.

@bamarni that's a great explanation and I would like it or similar to be in the codebase.
When the next maintainer wants to change it, they should know the context.

I've added comments on top of the 3 places.

Thank you Bilal.
I ran the command which had been failing a few times.
With the CLI master, it failed every time.
With this change, it failed a few times on a different timeout error.
I think that this means that your change works - more testing to come - but another issue has been uncovered.
Let's try to understand before merging this.
Below are the logs for two attempts with a binary built from this branch.
The first is a failure:
(e2e) Adam@MacBook-Pro ~/D/m/m/d/cli> dist/dcos --debug package install --cli dcos-enterprise-cli --yes
send: b'GET /capabilities HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nUser-Agent: python-requests/2.18.4\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nAccept: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nContent-Type: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server header: Date header: Content-Type header: Content-Length header: Connection send: b'POST /package/describe HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nUser-Agent: python-requests/2.18.4\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nAccept: application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3\r\nContent-Type: application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1\r\nContent-Length: 38\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
send: b'{"packageName": "dcos-enterprise-cli"}'
reply: 'HTTP/1.1 504 Gateway Time-out\r\n'
Error while fetching [https://<IP_ADDRESS>/package/describe]: HTTP 504: "Gateway Time-out".
header: Server header: Date header: Content-Type header: Content-Length header: Connection ⏎                                                                                (e2e) Adam@MacBook-Pro ~/D/m/m/d/cli> time dist/dcos --debug package install --cli dcos-enterprise-cli --yes
send: b'GET /capabilities HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nAccept: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nUser-Agent: python-requests/2.18.4\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nContent-Type: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server header: Date header: Content-Type header: Content-Length header: Connection send: b'POST /package/describe HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nAccept: application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3\r\nUser-Agent: python-requests/2.18.4\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nContent-Type: application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1\r\nContent-Length: 38\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
send: b'{"packageName": "dcos-enterprise-cli"}'
reply: 'HTTP/1.1 504 Gateway Time-out\r\n'
Error while fetching [https://<IP_ADDRESS>/package/describe]: HTTP 504: "Gateway Time-out".
header: Server header: Date header: Content-Type header: Content-Length header: Connection        62.33 real         0.85 user         0.71 sys

The second is a success:
(e2e) Adam@MacBook-Pro ~/D/m/m/d/cli> time dist/dcos --debug package install --cli dcos-enterprise-cli --yes
send: b'GET /capabilities HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nUser-Agent: python-requests/2.18.4\r\nConnection: keep-alive\r\nAccept-Encoding: gzip, deflate\r\nAccept: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nContent-Type: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server header: Date header: Content-Type header: Content-Length header: Connection send: b'POST /package/describe HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nUser-Agent: python-requests/2.18.4\r\nConnection: keep-alive\r\nAccept-Encoding: gzip, deflate\r\nAccept: application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3\r\nContent-Type: application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1\r\nContent-Length: 38\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
send: b'{"packageName": "dcos-enterprise-cli"}'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server header: Date header: Content-Type header: Content-Length header: Connection By Deploying, you agree to the Terms and Conditions https://mesosphere.com/catalog-terms-conditions/#certified-services
Installing CLI subcommand for package [dcos-enterprise-cli] version [1.3.0]
send: b'GET /package/resource?url=https://downloads.mesosphere.io/cli/binaries/darwin/x86-64/1.3.0/da2e75e78079662dd9940c7e848770ad8e55c97124a57a2d5786a679e6dfe6d0/dcos-enterprise-cli HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nUser-Agent: python-requests/2.18.4\r\nConnection: keep-alive\r\nAccept-Encoding: gzip, deflate\r\nAccept: application/json\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server header: Date header: Content-Type header: Content-Length header: Connection header: Content-Disposition New commands available: dcos backup, dcos security

This is compared to the kinds of failures I see with master:
(e2e) Adam@MacBook-Pro ~/D/m/m/d/cli> time dist/dcos --debug package install --cli dcos-enterprise-cli --yes
send: b'GET /capabilities HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nConnection: keep-alive\r\nAccept-Encoding: gzip, deflate\r\nUser-Agent: python-requests/2.18.4\r\nAccept: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nContent-Type: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server header: Date header: Content-Type header: Content-Length header: Connection send: b'POST /package/describe HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nConnection: keep-alive\r\nAccept-Encoding: gzip, deflate\r\nUser-Agent: python-requests/2.18.4\r\nAccept: application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3\r\nContent-Type: application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1\r\nContent-Length: 38\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
send: b'{"packageName": "dcos-enterprise-cli"}'
Request to URL [https://<IP_ADDRESS>/package/describe] timed out.
        7.12 real         0.93 user         0.77 sys
(e2e) Adam@MacBook-Pro ~/D/m/m/d/cli> time dist/dcos --debug package install --cli dcos-enterprise-cli --yes
send: b'GET /capabilities HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nAccept-Encoding: gzip, deflate\r\nAccept: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nConnection: keep-alive\r\nUser-Agent: python-requests/2.18.4\r\nContent-Type: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server header: Date header: Content-Type header: Content-Length header: Connection send: b'POST /package/describe HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nAccept-Encoding: gzip, deflate\r\nAccept: application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3\r\nConnection: keep-alive\r\nUser-Agent: python-requests/2.18.4\r\nContent-Type: application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1\r\nContent-Length: 38\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
send: b'{"packageName": "dcos-enterprise-cli"}'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server header: Date header: Content-Type header: Content-Length header: Connection By Deploying, you agree to the Terms and Conditions https://mesosphere.com/catalog-terms-conditions/#certified-services
Installing CLI subcommand for package [dcos-enterprise-cli] version [1.3.0]
send: b'GET /package/resource?url=https://downloads.mesosphere.io/cli/binaries/darwin/x86-64/1.3.0/da2e75e78079662dd9940c7e848770ad8e55c97124a57a2d5786a679e6dfe6d0/dcos-enterprise-cli HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nAccept-Encoding: gzip, deflate\r\nAccept: application/json\r\nConnection: keep-alive\r\nUser-Agent: python-requests/2.18.4\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
Request to URL [https://<IP_ADDRESS>/package/resource?url=https://downloads.mesosphere.io/cli/binaries/darwin/x86-64/1.3.0/da2e75e78079662dd9940c7e848770ad8e55c97124a57a2d5786a679e6dfe6d0/dcos-enterprise-cli] timed out.
        7.36 real         1.01 user         0.82 sys

It looks as though the core.timeout does apply to this new work as hoped:
(e2e) Adam@MacBook-Pro ~/D/m/m/d/cli> dist/dcos config set core.timeout 2
[core.timeout]: already set to '2'
(e2e) Adam@MacBook-Pro ~/D/m/m/d/cli> time dist/dcos --debug package install --cli dcos-enterprise-cli --yes
send: b'GET /capabilities HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nAccept: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nUser-Agent: python-requests/2.18.4\r\nContent-Type: application/vnd.dcos.capabilities+json;charset=utf-8;version=v1\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
reply: 'HTTP/1.1 200 OK\r\n'
header: Server header: Date header: Content-Type header: Content-Length header: Connection send: b'POST /package/describe HTTP/1.1\r\nHost: <IP_ADDRESS>\r\nAccept-Encoding: gzip, deflate\r\nConnection: keep-alive\r\nAccept: application/vnd.dcos.package.describe-response+json;charset=utf-8;version=v3\r\nUser-Agent: python-requests/2.18.4\r\nContent-Type: application/vnd.dcos.package.describe-request+json;charset=utf-8;version=v1\r\nContent-Length: 38\r\nAuthorization: token=eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJ1aWQiOiJhZG1pbiIsImV4cCI6MTUxNDIxMTg5OH0.EhTiqJMAu_DfTv0TkXw0l0pemEBqPtEEx8AS4lwHKGHNWAmvng7Z1_xYVL1kac49As5wRTmomyorrEJ0LkrmtBvbZcIgYzLTmDpaYqFPK8FSLySkwF8ghi3EKiISicCIC473Ucyejv4hMAFNXkU17BZZkiUkO7B_CSwEdt2DeAZ_YruoF_5YowE9FiwGi89qt0_H27ywjgT4eyVIg6frh9J2KBwwBZk-rjZRN0xhhS88k1uddlpafMLTiGhfcdTUoo8KAglHdI3HsB77KjCpRjHVGDIBvPJlRbshNcGrAQ3DdvFrsbS4GtNsE3D2BMX9na7NxuR2nsIJVXuA8q10Lw\r\n\r\n'
send: b'{"packageName": "dcos-enterprise-cli"}'
Request to URL [https://<IP_ADDRESS>/package/describe] timed out.
        3.90 real         0.88 user         0.73 sys

@adamtheturtle : the 504 timeout error seems like a cluster-side problem, the CLI receives a successful error response there.
It seems like admin router is timing-out while it doesn't get any data to read from cosmos.

run all integration tests

Thanks for the reviews @adamtheturtle @jgehrcke @mnaboka


Improving examples in README to better visualize what parameters are provided.

Improving examples in README to better visualize what parameters are provided to constructor.
Adding composer.phar to .gitignore.

Good suggestions, thanks!


[xstream] Remove extractor

[x] I've verified and I assure that I'm running youtube-dl 2017.08.06

Before submitting an issue make sure you have:

[x] At least skimmed through the README, most notably the FAQ and BUGS sections
[x] Searched the bugtracker for similar issues including closed ones

What is the purpose of your issue?

[ ] Bug report (encountered problems with youtube-dl)
[ ] Site support request (request for adding support for a new site)
[ ] Feature request (request for a new functionality)
[ ] Question
[x] Other

'http://frontend.xstream.dk/btno/feed/video/?platform=web&id=86588'
'http://frontend.xstream.dk/ap/feed/video/?platform=web&id=21039'
Videos are not working, domain changed to xstream.net,  can't find video there.

http://frontend.xstream.dk/btno/feed/video/?platform=web&id=86588 still has videos - those are Yahoo! MRSS (Media RSS), which are not supported by most browsers, so you won't see videos.


v1: assistants-search view when user is set in agent configurations list

Description
Fix of https://github.com/dust-tt/dust/pull/7912 which caused an incident with our slack workflow (system api key without user override). Use assistants-search when a user is set (which will give us all agents + agents owned by the user. Otherwise use the existing code-path relying on all.
Also add a check for presence of user for assistant-search out of consistency with list (otherwise would error at a lower level when querying the models)
Also assistants-search seems to be preferable to list when user is set as there is no in-list filtering, but happy to reconsider this?
Risk
Low (tested locally that the flow used by the slack bot is preserved)
Deploy Plan

deploy front

Re favorites and cleaning: \o/


Specify TLS Provider for Swift gRPC Client Connection

What are you trying to achieve?
Is it possible to use Swift gRPC with a custom TLS provider? (like openSSL v3?). The objective is to use a custom TLS provider that will work with the Swift gRPC framework. Has anyone done this before.
What have you tried so far?
I found a SO post that looks like someone may have been able to do this in C++.
I am looking to see if something similar is offered in this framework.

swift-nio-ssl does not support pluggable TLS backends.

@Lukasa  Got it, thanks. We are looking to be fips compliant. Currently not sure if Apple's Network framework is fips compliant (latest version).
If it is compliant, is there is a chance that SWIFTNIO-SSL is still using Native iOS for the SSL connection so that its actually doing SWIFTNIO-SSL -> Apple SSL -> Boring SSL. Can you confirm this? I am aware that we can use a client configuration backed by the network framework.

Network.framework is the way you use native iOS TLS.


Add a wiki: Medapedia

An anonymous user has submitted a new wiki via our submission form.
Link to origin wiki: https://medabots.fandom.com/wiki/Medabots_Wiki
Link to destination (independent) wiki: https://medarot.meowcorp.us/wiki/Medapedia

Added in v3.9.0 (now available for Chrome, should be available in Firefox within a few days).


Encrypted request body and Swagger: How document and make use of 'try it out'

Description
We are using FastAPI to create an endpoint that receives rsa encrypted data in the request body.
The body consists of binary data (not a json).
We are able to implement the functionality we want, but are struggeling with the documentation and testing in swagger-ui.
What we tried so far
We implemented it along the FastAPI documentation using the starlette Request to access the body:
from fastapi import FastAPI, Body, Request

app = FastAPI()

@app.post(path='/use_request')
async def use_request(request: Request):
    encrypted_body = await request.body()
    #decrypt body content and do stuff
    return 'something'

The endpoint works (e.g. when using it with Postman), but the usage of the body is not documented in Swagger, and we cannot use Swagger to "try it out" as the body binary file cannot be uploaded anywhere:

According to swagger-ui, we can set the request body content as application/octet-stream and can then upload a binary file in swagger-ui.
We tried to define the Body as a function parameter with media_type="application/octet-stream":
from fastapi import FastAPI, Body, Request

app = FastAPI()

@app.post(path='/use_body')
def use_body(encrypted_body: bytes = Body(..., media_type="application/octet-stream")):
    #decrypt body content and do stuff
    return 'something'

This results in swagger-ui with the desire documentation and ability to upload a binary file for testing:

When using this endpoint structure (with Postman or via swagger-ui), we run into the following error:
{
    "detail": "There was an error parsing the body"
}

Question
How can we both use the testing and documentation functionality of swagger-ui/openapi with our encrypted data?
Is there a way to get the unprocessed body content using FastAPIs Body()?
Environment

OS: Linux / Windows
FastAPI Version: 0.60.1
Python version: 3.7.7

Not sure if this is a perfect answer, but one thing I suggest is looking at doing the decryption of the body with a pydantic validator. Look for example at the root validators section: https://pydantic-docs.helpmanual.io/usage/validators/#root-validators. In that example the values input would be encrypted and you could return a decrypted dictionary for example.

Thank you for your reply @jjbankert !
I looked into what you proposed, but did not succeed unfortunately.
For me there seems to be no way to feed the pydantic model bytes that are not encapsulated in a json.
This is a minimal example of what I tried:
from fastapi import FastAPI, Body, Request
from pydantic import BaseModel,  root_validator

app = FastAPI()

class DecryptModel(BaseModel):
    """Model that takes care of body decryption."""

    @root_validator(pre=True)
    def decrypt_body(cls, values):
        #decrypt body here
        return values

@app.post(path='/use_pydantic')
def use_body(decrypted_body: DecryptModel = Body(...)):
    #do stuff
    return 'something'

When I try to send bytes, I get the same error as described above:
{
    "detail": "There was an error parsing the body"
}

The root_validator is only entered when I send the body as a json (e.g. sending {"key":"value"}.
It also seems impossible to send data as a normal string, because a json is expected:
When sending a string like "test", it returns the following error:
{
    "detail": [
        {
            "loc": [
                "body",
                0
            ],
            "msg": "Expecting value: line 1 column 1 (char 0)",
            "type": "value_error.jsondecode",
            "ctx": {
                "msg": "Expecting value",
                "doc": "test",
                "pos": 0,
                "lineno": 1,
                "colno": 1
            }
        }
    ]
}

For me it seems that FastAPI at some point uses pydantic DecryptModel.parse_raw(body_data) as this produces the same error.
The latter error might also be more a pydantic problem here, as I did not find a way to feed a model with a string that cannot be parsed as a json.
Is there any way to receive binary body data without validation of any sort?
Something like
from fastapi import FastAPI, Body, Request

app = FastAPI()

@app.post(path='/use_body')
def use_body(encrypted_body: bytes = Body(...)):
    #decrypt body content and do stuff
    return 'something'

@tiangolo I am still stuck with the problem described above.
Essentially my question is:
Is it possible to receive the whole body without any validation as a parameter?
(no pydantic validation, no preprocessing, simply the raw data as e.g. bytestring)
Is there a flag like blow: (example not working)
@app.post(path='/get_body')
def get_body(raw_body:bytes = Body(... , validation=False)):
    #decrypt body content and do stuff
    return 'something'

I also have this problem! Someone found some solution?

Did anybody figure out how to solve this? I have the same problem here...

You can use pydantic root_validator with pre=True flag to decrypt your request
After this your validator will return argument to input base model.
All thanks to root validator
@root_validator(pre=True)
def decrypt(cls, values):
    output = base64.b64decode(values.get("key_in_raw_json_request"))`
    cipher = AES.new(key.encode("utf-8"), AES.MODE_ECB)`
    return json.loads(unpad(cipher.decrypt(enc),16))

The solution by @kalmastenitin above is good if only a few of your request types need to be decrypted. But if you need a more general solution to decrypt all or most incoming messages, you will want to create FastAPI middleware or maybe a dependency. Middleware is quite powerful. It applies to the whole API and allows manipulating raw incoming and outgoing messages without any pydantic validation. Dependencies are simpler and more limited, but can be applied to single routes or path functions.


Can't disable tab completions

I would like to use Emmet to just work when using html shortcuts, such as ul>li*5
I do not want Emmet to try and complete a normal html tag because it always fails.
I have tried disabling the tab completion in the settings, however, this does not work.
Can you please tell me how I can achieve this?
Currently, I have to keep disabling your plugin, and then I have to enable it when I want to use it during those precious moments when I want to use it's best feature.
Thanks for your help.

hey there! actually i'm also facing the same problem in sublime text 3 with emmet that when i use suppose ul>li*6 and hit tab it doesn't work, what to do in this situation ?


Error: StaticServer could not start

I'm on iOS with these library versions: "react-native": "~0.63.3", "react-native-static-server": "^0.5.0"
This is my useEffect to start the server:
 useEffect(() => {
    const server = new StaticServer(
      8080,
      RNFS.MainBundlePath + '/sketch',
      { localOnly: true },
    )
    server.start()
      .then(setUrl)
      .catch(console.log)

    return () => {
      if (server && server.isRunning()) {
        server.stop()
      }
    }
  }, [])

When the screen loads, all i get is Error: StaticServer could not start with no further details.  Anyone have any ideas?

In case someone else encounters this, make sure that if you're running on an iOS simulator that there are no other services running on port 8080 (or the port assigned to StaticServer) on the host computer.  I had to change my port from 8080 because there was another webapp running there.


Update the hyperlink to Laravel

Closes #83632

@HiranmayaGundu : Thanks for your contribution! The author(s) have been notified to review your proposed change.

#label:"aq-pr-triaged"

#sign-off


Crashed when @property NSNumber is  assigned with unix timestamp value

Is it because of int overflow ? whats the alternative ? i want to save a NSUInteger as object in realm. What is the solution ?
*** Terminating app due to uncaught exception 'RLMException', reason: 'Invalid value '1464572538' for property 'timestamp''

Whats the max value of  NSNumber ???

@modLX4 The max value of NSNumber <RLMInt> is same as 64 bit integer.<PHONE_NUMBER> does not exceed max value. It should work. The error message indicates that a different type of value was assigned the property.
Could you show your code around assigning the value to timestamp for investigation?

@modLX4 do you have any updates on this? Thanks!

I hope @kishikawakatsumi's answer helped you @modLX4! We're closing this issue now because we haven't heard back from you in a little while.


fix(handlers): typescript redeclare issue

Fixing Cannot redeclare block-scoped variable issue in typescript projects.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Issue 3068 - concatenation operator doesn't like typed named enums

Allow const conversion when the enum's base type converts to the target type.
http://d.puremagic.com/issues/show_bug.cgi?id=3068

Seems like it doesn't pass phobos unittests.

Yeah I know, I just haven't gotten around to digging into it yet.


⚠ GLDDNS Server (ns2.glddns.com) has degraded performance

In df68790, GLDDNS Server (ns2.glddns.com) (ns2.glddns.com) experienced degraded performance:

HTTP code: 200
Response time: 394 ms

Resolved: GLDDNS Server (ns2.glddns.com) performance has improved in e50f6f1 after 7 minutes.


1.3.1

Coverage remained the same at 99.669% when pulling bb62577c14b22f5d84818c97089158ec5e0ffbe4 on 1.3.1 into 501790dc1ddf6c3ad6abddc6ad42a2b069d68e58 on master.


include a modern use example

note that using use structure::structure should be sufficient (see: macro-changes), but requires an update to the proc-macro-hack dependency (see: https://github.com/dtolnay/indoc/issues/24).

Thanks!


[DS Project] Police killing dataset

This work is a part of a master project DS Project @ University of Vienna

Analyze Civilians Killed by Police dataset
Bring it to Knodle ecosystem (converting to Knodle format)
Make experiments with different weak supervision strategies within Knodle framework
Improve the case searching quality
Explore the combination of event and relation extraction

This task was created to track the progress and make sure our job is productive. Please provide a short update before our weekly meeting for each of these areas:
🏆 What was accomplished in the previous week:
⛔ Problems and roadblocks:
🎯 Plans for the next week: (if you are not sure, you could add it after the meeting)

I spent the last two weeks preprocessing my data and bringing it to the Knodle format. The short meeting with Anastasiia in between was very helpful, and I think now everything should work. (Except a few minor things in code - I get the output I want (mapping_rules_labels_t and rule_matches_z + the CSVs), but I'm not always sure if I'm doing it in the right or most efficient way).

I uploaded my preprocessing notebooks and will need some feedback of Anastasiia on them. As my next step, I want to use this feedback and make necessary changes.

I finally finished the data preprocessing. Next week, I will start with some experiments using Knodle, especially Autotrainer and Multitrainer for the beginning.

This week, I had to continue working on my rules... I had a look at the rule accuracy after preprocessing the data and found out that the accuracy is quite low. I improved my rules and looked at the positive test samples, which are not covered by any rule - now I'm not exactly sure what to do with them... I also tried to use a trainer, but haven't found out yet how to get the model input in the right format. Next week, I can hopefully solve the rule problem, which is still an issue, and work more with Knodle.

This week, I had to continue working on my rules... I had a look at the rule accuracy after preprocessing the data and found out that the accuracy is quite low. I improved my rules and looked at the positive test samples, which are not covered by any rule - now I'm not exactly sure what to do with them... I also tried to use a trainer, but haven't found out yet how to get the model input in the right format. Next week, I can hopefully solve the rule problem, which is still an issue, and work more with Knodle.

After the meeting yesterday:

the both sets of rules (1 - keywords from the paper, 2 - self-made regexes) are fine in different ways

keyowrds - 99% accuracy, 0.2% TN
regexes - 62% accuracy, 56% TN

there is a problem with transforming the data to TensorDataset: more than 52Gb are needed

solution 1: reduce the number of samples (to make pof; 132680 -> ...)
solution 2: reduce tfidf max_features  parameter (52947 -> ...)
solution 3: use IterableDataSet instead (https://pytorch.org/docs/stable/data.html#iterable-style-datasets)

After the meeting today:
Main idea we found today: in the original paper, the keywords were used to collect the data, and not to annotate the data. For data annotation, the authors used KB + denoising with EM.
Now we have 2 scenarios:

(close to the scenario in the original paper)

use knowledge base as the source of information (knowledge base entry = rules)
make NER (with spacy) on the raw data -> map the knowledge base rules (?rule matches AND ?the type matches)
todo: check what KB it is? how do they use it?

(our own)

use self-written patterns as rules

Despite the RegEx, we can also use the entries from the knowledge base that was used in the paper of Keith et al. for labelling the training data.
The Fatal Encounters Database (https://fatalencounters.org/) contains information about people dying or experiencing violence in encounters with the police, including the name of the victim, a short description of the incidence and the use of force (whether a person in an encounter was, for instance, killed by the police or committed suicide or died in an accident while the police was present). For us, only the entries about actual police killings (no suicide, no accidents etc.) are relevant.
In our test dataset that should be labelled, a sample will be assigned to the positive class if the name of the victim in the sample can be found in the database. It will be assigned to the negative class if the name cannot be found. The problem here is that when the name of a civilian is found in the database, all samples containing this name will be labelled positive. However, it does not necessarily mean that each sample containing this civilian’s name describes the killing of the civilian by the police. Samples which in fact do not do so, will be incorrectly labelled positive. (If civilian Y is in the database, positive train samples could be something like “Officer X killed civilian Y after having coffee” as well as “Officer X had coffee while civilian Y killed someone.”) This method is called “hard” distant label training by Keith et al. and is incorrect in 36% of all cases. (They receive slightly better results if they consider not only the name of the victim, but also the location of the killing.) To improve their results, they use the EM-algorithm. In our case, we will denoise the erroneous labels using Knodle.
How the Knodle input is supposed to look like:
mapping_rules_labels_t:

rows: all names of people in the test samples (the rules)
columns: classes “police_killing” or “no_police_killing”,
=> 0 or 1 whether a name was found in the Fatal Encounters Database

rule_matches_z:

rows: the samples
columns: the rules (names of people in the test samples)
=> 0 or 1 whether a sample does contain a name

Quick update:  by using the names in the FE-Database as rules, our accuracy improves dramatically compared the RegEx rules.
93% accuracy, 97.5% true negatives.
True positives: 8274
True negatives: 38370
False positives: 999
False negatives: 604

I have completed the preprocessing and try to use the trainers in Knodle. I keep getting the following error: RuntimeError: expected scalar type Long but found Int. Accoring to the debugger, the datatype of the target that the lossfunction needs (I use CrossEntropyLoss from torch.nn) is incorrect (it is torch.int32 but should be torch.long/ torch.int64). Unfortunatelly, I could not find out yet what target is in this case and where I have to change the datatype.

I could solve the RuntimeError, but now the model (Majority Vote) only predicts the positive class for each sample. (I also tried to train the model with the exact same amount of positive and negative train samples to avoid overfitting, this did not change anything.)


Issue #295 Vagrant 1.9 compatibility

Addressing #295
Instead of running the DNS server with ruby start_server.rb 10053 --gem_path=~/.vagrant.d/gems/gems  we could start it as a plugin command:
vagrant landrush run-server 10053

This way we can avoid passing the gems directory along, because vagrant sets all of that up for us.
wdyt?

This way we can avoid passing the gems directory along, because vagrant sets all of that up for us.

Interesting idea. I need to look a bit closer at this. There seems to be some issues with the tests on Windows though.

It seems like vagrant is not on the PATH (is it the right term?) on this Windows build. Do you know what is the best course of action?

Do you know what is the best course of action?

Not out of the top of my head. If it is really just a PATH issue, we can just make sure vagrant is added to the PATH. One would expect though that it is. I guess I would like to know why it is not on the PATH first. Give me a few days to look into this. I am a bit swamped with other things right now, but hopefully I get a bit of time over the next days to look into this.

Anyone mind if I poke this issue to see what its status is? :)

Any news on this? Is this repo maintained anymore?

I'm embedding Landrush/Vagrant into a desktop app (essentially a GUI for Vagrant) and ended up having to include this script which runs after updating Vagrant to latest:
#!/bin/bash

# Fix compatibility issues with Vagrant >= 1.9.2 and Landrush 1.2.0
if [[ -L ~/.vagrant.d/gems/gems && -d ~/.vagrant.d/gems/gems ]]; then
  echo "already symlinked"
else
  echo "creating symlink"
  mkdir -p ~/.vagrant.d/gems/2.2.5/gems
  mkdir -p ~/.vagrant.d/gems/gems
  mv -f ~/.vagrant.d/gems/gems/* ~/.vagrant.d/gems/2.2.5/gems/ 2>&1 > /dev/null
  rm -r ~/.vagrant.d/gems/gems
  ln -sf ~/.vagrant.d/gems/2.2.5/gems ~/.vagrant.d/gems/gems 2>&1 > /dev/null
  echo "symlink created"
fi

# Install required plugins (just to be safe)
vagrant plugin install landrush --plugin-version 1.2.0
# … other plugins

# Attempt to repair existing plugins
vagrant plugin expunge --reinstall --force

The app also includes an embedded Ruby (2.2.5) so you may need to change that if you're running a different version of Ruby locally.

I am going to close this pull request. I am not generally opposed to this, but as part of issue #324 Landrush already upgraded to Vagrant 2.1.2. AFAICT everything works fine.
I can see that the proposed change makes things a bit easier since we let Vagrant deal with setting up the various paths. At the same time, it relies on vagrant being on the PATH. In most cases that might be the case, but not always (see the AppVeyor).
Regarding the problem which occurred when the gem path changed, the server start script worked as expected. However, due to the change one either needed to delete ~/.vagrant.d or do a reinstall of the plugin.


Document hra-pop queries in Markdown file

Can extract comments from SPARQL queries

@andreasbueckle please review. It has been merged to main.

Thanks, reviewed it looks great! Added note to paper to point here and document. Closing this.

Done, see REPORTS.MD


fix: [Blogpost] The Power of Polkadot's Asset Hub: Revolutionizing Asset Management

Thank you for your contribution to the KodaDot - One Stop Shop for Polkadot NFTs.
👇 __ Let's make a quick check before the contribution.
PR Type

[x] Bugfix
[ ] Feature
[ ] Refactoring

Context

[x] Closes #6559
[ ] Requires deployment <snek/rubick/worker>

Did your issue had any of the "$" label on it?

[x] My DOT address: Payout

Copilot Summary

🤖 Generated by Copilot at a8fbabe
This change adds a new blog post about the Polkadot Asset Hub to the content/blog directory. The blog post introduces the features and benefits of the Polkadot Asset Hub for asset management, especially for NFTs. The blog post supports the kodadot/nft-gallery web app, which showcases NFTs on the Polkadot network.

🤖 Generated by Copilot at a8fbabe

Polkadot Asset Hub
A blog post to explain it
Autumn leaves of NFTs

is it me or..

https://deploy-preview-6562--koda-canary.netlify.app/blog/the-power-of-polkadot's-Asset-hub-Revolutionizing-asset-management
but works!

is it me or..

I have fixed this issue. https://github.com/kodadot/nft-gallery/issues/6561

pay 50 usd
speedy delivery

😍 Perfect, I’ve sent the payout
💵 $50 @ 4.93 USD/DOT ~ 10.142 $DOT
🧗 16SjUbGKSdjCdWTy3NNT3JxbRVGGqD4mwkHpc6BD9U2Rp29Z
🔗 0x030275103b4ead15beebd2657da19c5499dbd5598d3a60b69dfc035440ef015c
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


Cloud Commander support

I found myself many time going over ssh just to move or rename certain files and looked for a web based file manager.
I found filebrowser but it is kinda discontinued so I found Cloud Commander, which is in active development and has dual panels like Midnight commander and such.

This looks great, thanks! I've also heard a recommendation for Filestash (formerly known as 'nuage'), and I was meaning to submit a pull request to add support for that at some point too.

Apparently it's possible to do this with Dolphin too?
https://github.com/aptalca/docker-dolphin
https://rawgit.com/Squidly271/AppsThread/master/forumpost0.html

Nice, thank you! :+1:
Hope you don't mind but I tweaked the docs slightly post-merge...


Add Validated Instances For FUUID Construction

Add Validated Instances For FUUID Construction. Also added an ApplicativeError[F, E[Throwable]] based instance for any E which is an Applicative, which backs the Validated based instances.

@ChristopherDavenport just going through some old PRs for cleanup. Anything I can do to get this merged?


YouTube-dl download video only

Checklist

[x] I'm asking a question
[ ] I've looked through the README and FAQ for similar questions
[ ] I've searched the bugtracker for similar questions including closed ones

Question

Hello,
When I try to download a YouTube video and I check the available format, I see that it only gives me "video only". How to download a video with audio?
Best regards.

Read FAQ on format selection.


Update the SDP and DRP to be compatible with react-with-direction

This change prevents automatic flipping on styles that are manually handled via the isRTL prop.
to: @airbnb/ui-frameworks @ljharb @yzimet

@ljharb can you take another look?

hmm @majapw it seems like we missed something, looking at the example in storybook (ref) the calendar is not visible:

what the shit


Fixing variable conflicts between Superset and Boot(swatch/strap)

CATEGORY
Choose one

[x] Bug Fix
[ ] Enhancement (new features, refinement)
[ ] Refactor
[ ] Add tests
[ ] Build / Development Environment
[ ] Documentation

SUMMARY
There were a couple variable collisions between Superset's variables.less file and the Bootswatch theme's variables.less, both of which had an @gray value and @gray-light. I renamed the one ones the Bootstrap/Bootswatch side to have a @bs-... prefix to namespace them for now. Hopefully all is looking more like it ought to now.
BEFORE/AFTER SCREENSHOTS OR ANIMATED GIF
Before:

After:

REVIEWERS
@graceguo-supercat

Codecov Report

Merging #8650 into master will increase coverage by 6.04%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #8650      +/-   ##
==========================================
+ Coverage   65.76%   71.81%   +6.04%
==========================================
  Files         482      121     -361
  Lines       23824    12778   -11046
  Branches     2594        0    -2594
==========================================
- Hits        15667     9176    -6491
+ Misses       7984     3602    -4382
+ Partials      173        0     -173

Impacted Files
Coverage Δ

superset/assets/src/components/Checkbox.jsx

.../assets/src/dashboard/reducers/dashboardFilters.js

...ets/src/dashboard/components/dnd/DragDroppable.jsx

superset/assets/src/components/EditableTitle.jsx

...src/explore/components/controls/VizTypeControl.jsx

...t/assets/src/components/InfoTooltipWithTrigger.jsx

.../src/dashboard/components/UndoRedoKeylisteners.jsx

...ts/src/explore/components/ExploreActionButtons.jsx

.../src/dashboard/components/FilterTooltipWrapper.jsx

...sets/src/dashboard/components/DashboardBuilder.jsx

... and 351 more

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 acf0753...c3d6d52. Read the comment docs.


V2 MainLoop fix by @bdisp

Potentially Fixes #2674  -

@BDisp - In this, I see you have retained the thread that calls ReadKey.
Can you explain why you think this thread is needed vs. my solution which does not use the thread, but still passes all unit tests?
Also, my fix does not require a new API to be added to IMainLoopDriver.
Is there a unit test missing? What am I not understanding?

@BDisp - In this, I see you have retained the thread that calls ReadKey.

Yes, for eventually if we need to use even for unit tests.

Can you explain why you think this thread is needed vs. my solution which does not use the thread, but still passes all unit tests?

It wasn't by think mine is better or not, it was only for you do, please, testing with ReSharp to prove if it still throw the thread wasn't stopped after unit test finished. But you can still maintain your changes to the FakeMainLoop.

Also, my fix does not require a new API to be added to IMainLoopDriver.

Well, since we still working on a breaking changing v2 I think that isn't a problem, The MainLoop.Stop currently only call Wakeup method, which isn't a signal to stop the main loop, but awake it. Even the SynchronizationContext use it to awake the main loop to processes some thread that was returned by the Post method.

Is there a unit test missing? What am I not understanding?

Well I didn't no unit tests for this because there already exist. The main reason for the changes I did is the possibility of the derived IMainLoop to dispose some threads processes that prevent it for really stop.

I think my fix is better as it does not require a new thread and does not introduce new APIs.


Auth page responsiveness issue fixed.

I've updated the authentication template component and am fixing the responsiveness bugs. Here is the result after making changes, kindly review it.
After:
https://github.com/user-attachments/assets/69373150-622e-4124-a626-182660d47a9a
Before:

Good Work @wajaht-ali .


Testing on Azure - attempting to follow Lachlan Evenson demo on Azure, fail with location error

The ark pod fails as follows:
I0906 07:36:32.999205       1 server.go:244] Configuring cloud provider for backup service
An error occurred: missing location in azure configuration in config file
The azure config (examples\azure\10-ark-config.yaml) was modified as follows:
azure:
location: australiaeast
apiTimeout: 20s

@segeva can you post your entire config yaml?

azure folder with the modified 10-ark-config.yaml
azure.zip

@segeva ok I think I see what's happened. You're running our image tagged "latest", which corresponds to v0.3.3. You will need to follow the documentation for that version, as the documentation for the master branch applies only to that branch, and things have changed between v0.3.3 and master. In v0.3.3, you need to make sure your config looks like this: https://github.com/heptio/ark/blob/v0.3.3/examples/azure/10-ark-config.yaml.
We are working on making it easier to find documentation for the latest tagged release, previous releases, and the current bleeding-edge master, but we don't have that in place yet.
Please follow the v0.3.3 docs and let us know if that fixes things for you. Thanks!

Great, this worked.
I noticed that the tagged versions 'deployments' are still pointing to latest images, possibly common helm chart with specific images versions in the ‘values’ file can help …


Remove steering wheel offset for planner slow down for curves

Description
In selfdrive/controls/lib/longitudinal_planner.py, the 	limit_accel_in_turns() function limits long accel based on lat accel. It uses a back of the hand calculation of lateral accel based on steering angle that does not include a car's steer angle offset (as observed by liveParams). In cars with a large steer offset, the carState steer angle can be high enough when traveling in a straight line that this function ends up limiting long accel. This problem is reported in #33667.
Additionally,  limit_accel_in_turns() has a FIXME comment: "This function to calculate lateral accel is incorrect and should use the VehicleModel"
This PR implements this FIXME change, using a VehicleModel updated with liveParams values to calculate lateral accel more accurately. It also includes liveParams average steer angle offset in order to fix the problem described above.
Verification
Awaiting verification route on this commit
@garrettpall drove on these changes and verified the problem is resolved and everything drives as it should. However that was not on this specific commit.
Fixes #33667

While using the VM here is correct, we have avoided making this change as these limits were found via in-car testing a few years ago to be comfortable and we don't want to change them until we decide to spend more time re-tuning them. Can you only include the angle offset fix here? That is more immediately mergable.

Thanks Shane. I've reverted the use of vehicle model as you suggest. Now it's just the addition of angle offset (and cleanup of the repeated use of sm['carState'])

Now it's just the addition of angle offset (and cleanup of the repeated use of sm['carState'])

The cleanup aspect is a little debatable, the style in which submaster objects are referenced is consistent before this PR and would be inconsistent after.
Could we leave that aside, at least for now? It's a good practice for null-effect refactors/cleanups to be considered separately from functional changes like this.
If we just recalculate the angle, right next to the v_ego assignment, and pass it to limit_accel_in_turns:
  calibrated_steer_angle = sm['carState'].steeringAngleDeg - sm['liveParameters'].angleOffsetAverageDeg

Then this becomes a three-line PR with the nature of the change visually obvious.

thanks for the PR! I hope you can see how this diff is much easier to merge immediately vs the original commit.

Yes. Much cleaner this way. Thanks Shane and Jason!


[CSPM] Add a test for non audit resource (non existing file)

What does this PR do?
Add a small test for linux audit resource for non existing file path
Motivation

Additional Notes

Possible Drawbacks / Trade-offs

Describe how to test/QA your changes

Reviewer's Checklist

[ ] If known, an appropriate milestone has been selected; otherwise the Triage milestone is set.
[ ] Use the major_change label if your change either has a major impact on the code base, is impacting multiple teams or is changing important well-established internals of the Agent. This label will be use during QA to make sure each team pay extra attention to the changed behavior. For any customer facing change use a releasenote.
[ ] A release note has been added or the changelog/no-changelog label has been applied.
[ ] Changed code has automated tests for its functionality.
[ ] Adequate QA/testing plan information is provided if the qa/skip-qa label is not applied.
[ ] At least one team/.. label has been applied, indicating the team(s) that should QA this change.
[ ] If applicable, docs team has been notified or an issue has been opened on the documentation repo.
[ ] If applicable, the need-change/operator and need-change/helm labels have been applied.
[ ] If applicable, the k8s/<min-version> label, indicating the lowest Kubernetes version compatible with this feature.
[ ] If applicable, the config template has been updated.

merged in c227864f2cc483444ae0ab307a84e637f2d20aa4