Feature/DEV-8604: Implementation of multi-level subsections

Thank you for contributing to Quire! Please complete the form below to submit your pull request for review.
For the Title of this pull request, please use the format "Type/Issue-#: Brief description." For Type, the options are Fix, Feature, Docs, or Chore. Issue-# is only needed if this pull request addresses an exisiting issue.
Checklist
Please put an X within the brackets that apply [X].

[X] I have read the CONTRIBUTING.md file.

[X] I have made my changes in a new branch and not directly in the main branch

[ ] I am requesting feedback on a draft pull request

Is this pull request related to an open issue? If so, what is the issue number?
DEV-8604: "Implementation of multi-level subsections in Quire"
Please briefly describe the goal of this pull request and how it may impact Quire's functionality.
The goal is to support publications with multiple levels of nested sub-sections, and more specifically to generate and display a valid contents list showing and linking to these nested pages in both contents pages and the sidebar menu, and in all contents list formats Quire supports (list, brief, abstract, and grid). The list also needs to support section pages with and without landing pages of their own (ie., linked and not linked).
Please describe the changes you made, and call out any details you think are particularly relevant for the Quire team to note in their review.
The primary work was in rewriting the contents-list.html partial, as well as the quire-contents-list.scss styles. For the partial, I split it into multiple smaller partials to aid in clarity and ease future development. They're all in the layouts/partials/contents-list directory. The primary partial is contents-list.html, there are also a set of four list-item-types partials (abstract, brief, grid, and list), and finally four “utility” partials (add-card-image, add-closing-tags, add-list-item-type, add-section-heading). I'd be interested in the team's thoughts on the naming of these utility partials as we haven’t done something like this before.
For the SCSS, I rewrote it and ultimately cut the lines down by about 50% and hopefully made them a little more legible. For the grid layout, I relied more on CSS Grid, where before we used floats and grid only where supported. Support seems wide enough now. I tested the styles in multiple browsers and in the PDF output using two different sets of test content with various configurations and in both the modern and classic theme styles.
Finally, I removed two parameters from the default config.yml file: tocType and menuType. I then added a new parameter menuClass. The original params were meant to offer some customization options but tocType was redundant to and sometimes in conflict with the classes we instructed users to add to the page yaml for contents pages so it’s not needed at all. And replacing menuType (whose possible values were "short" and "full") with menuClass ("list" and "brief") offered the chance to make the menu customization options more parallel with that of the contents pages.
Does this pull request necessitate changes to Quire's documentation?
Yes, the parameter changes mentioned above will have to be documented. I also think we could do a better job documenting contents functionality in general. I’ll work on this.
Include screenshots of before/after if applicable.
Here are some screenshots of test content in multi-level sub-sections in all four contents style types (brief, list, abstract, and grid):

Additional Comments

@mphstudios, @hbalenda @anderspollack This is a significant PR for this new feature. I've added all three of you as reviewers as we've done in the past, but trust you'll work out how best to approach this. Happy to chat it through on our call tomorrow as well.
This also our first use of the Pull Request Template that @Erin-Cecele created for us. Feedback on that would also be most welcome: https://github.com/thegetty/quire/blob/main/.github/pull_request_template.md. Does it give you the right info? Too much / too little? Anything else you'd like contributors to be including?
Thanks!

Thanks @mphstudios! I went ahead and removed the add- prefix as you suggested. Looking at it again with some distance I think you're right. With the new commit, you'll need to approve the PR again before I can merge


[TableCell] Flex breaks table display

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
Each row is split between multiple ones, so this is like there is only one column.
https://codesandbox.io/s/intelligent-nobel-fmi3i?file=/src/App.js
Expected Behavior 🤔
https://codesandbox.io/s/ovus8
Steps to Reproduce 🕹
See above sandbox.
Context 🔦
I'm trying to build a table with some cells containing an image. I want this image to have a width equal to the column width using Flex.
Your Environment 🌎
I use Chrome.
System:
OS: Windows 10 10.0.21301
Binaries:
Node: 12.19.0 - C:\Program Files\nodejs\node.EXE
Yarn: 1.22.5 - C:\Program Files (x86)\Yarn\bin\yarn.CMD
npm: 6.14.8 - C:\Program Files\nodejs\npm.CMD
Browsers:
Chrome: Not Found
Edge: Spartan (44.21301.1000.0)
npmPackages:
@material-ui/core: ^4.11.3 => 4.11.3
@material-ui/data-grid: ^4.0.0-alpha.19 => 4.0.0-alpha.19
@material-ui/icons: ^4.11.2 => 4.11.2
@material-ui/styles:  4.11.3
@material-ui/system:  4.11.3
@material-ui/types:  5.1.0
@material-ui/utils:  4.11.2
@types/react:  17.0.1
react: ^17.0.1 => 17.0.1
react-dom: ^17.0.1 => 17.0.1
styled-components: ^5.2.1 => 5.2.1

@NeutrinoXY You would need to create a wrapper inside the td, you can't change the display of a cell and expect it to render correctly inside a table

Thanks for your quick answer.


assimp package does not link irrXML

Describe the bug
I have a simple program that uses assimp.
CMakeLists.txt is configured with the following:
find_package(assimp CONFIG REQUIRED)
target_link_libraries(cubist PRIVATE assimp::assimp)
#target_link_libraries(cubist PRIVATE /home/chrome/code/vcpkg/installed/x64-linux/lib/libIrrXML.a)

Program does not build unless I comment out the second target_link_libraries line.
Environment

OS: linux
Compiler: clang version 9.0.0-2 (tags/RELEASE_900/final)

To Reproduce
Steps to reproduce the behavior:

./vcpkg install assimp
Add assimp to your project and include the files.
Try to build

Expected behavior
Expect not to see compiler errors.
Failure logs
[build] [5/5 100% :: 1.151] Linking CXX executable cubist
[build] FAILED: cubist
[build] : && /bin/clang++-9  -g   CMakeFiles/cubist.dir/src/Mesh.cpp.o CMakeFiles/cubist.dir/src/Model.cpp.o CMakeFiles/cubist.dir/src/ShaderProgram.cpp.o CMakeFiles/cubist.dir/src/main.cpp.o  -o cubist  /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libspdlogd.a /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libglad.a /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libglfw3.a /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libz.a /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libfmtd.a /usr/lib/x86_64-linux-gnu/librt.so -lm -ldl /usr/lib/x86_64-linux-gnu/libX11.so -lpthread && :
[build] ld: error: undefined symbol: irr::io::createIrrXMLReader(irr::io::IFileReadCallBack*)
[build] >>> referenced by AMFImporter.cpp:414 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/AMF/AMFImporter.cpp:414)
[build] >>>               AMFImporter.cpp.o:(Assimp::AMFImporter::ParseFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, Assimp::IOSystem*)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced by ColladaParser.cpp:125 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/Collada/ColladaParser.cpp:125)
[build] >>>               ColladaParser.cpp.o:(Assimp::ColladaParser::ColladaParser(Assimp::IOSystem*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced by ColladaParser.cpp:168 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/Collada/ColladaParser.cpp:168)
[build] >>>               ColladaParser.cpp.o:(Assimp::ColladaParser::ReadZaeManifest[abi:cxx11](Assimp::ZipArchiveIOSystem&)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced by IRRMeshLoader.cpp:148 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/Irr/IRRMeshLoader.cpp:148)
[build] >>>               IRRMeshLoader.cpp.o:(Assimp::IRRMeshImporter::InternReadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, aiScene*, Assimp::IOSystem*)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced by IRRLoader.cpp:915 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/Irr/IRRLoader.cpp:915)
[build] >>>               IRRLoader.cpp.o:(Assimp::IRRImporter::InternReadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, aiScene*, Assimp::IOSystem*)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced by OgreImporter.cpp:131 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/Ogre/OgreImporter.cpp:131)
[build] >>>               OgreImporter.cpp.o:(Assimp::Ogre::OgreImporter::InternReadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, aiScene*, Assimp::IOSystem*)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced by OgreXmlSerializer.cpp:744 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/Ogre/OgreXmlSerializer.cpp:744)
[build] >>>               OgreXmlSerializer.cpp.o:(Assimp::Ogre::OgreXmlSerializer::OpenReader(Assimp::IOSystem*, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced by XGLLoader.cpp:213 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/XGL/XGLLoader.cpp:213)
[build] >>>               XGLLoader.cpp.o:(Assimp::XGLImporter::InternReadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, aiScene*, Assimp::IOSystem*)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced by FIReader.cpp:1832 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/X3D/FIReader.cpp:1832)
[build] >>>               FIReader.cpp.o:(Assimp::FIReader::create(Assimp::IOStream*)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced by D3MFImporter.cpp:474 (/home/chrome/code/vcpkg/buildtrees/assimp/src/v5.0.0-fa91f462f7/code/3MF/D3MFImporter.cpp:474)
[build] >>>               D3MFImporter.cpp.o:(Assimp::D3MFImporter::InternReadFile(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, aiScene*, Assimp::IOSystem*)) in archive /home/chrome/code/vcpkg/installed/x64-linux/debug/lib/libassimpd.a
[build] >>> referenced 1 more times

It seems that update break my #6593 changes.

I think that's a source bug.
Because assimp's config.cmake, targets.cmake and targets-debug/release.cmake are generated using configure_file instead of using cmake function export, dependencies are not added to the import list.

@matjam I encountered this too, and have identified somewhat of a workaround
find_library(ASSIMP_ZLIB_LIBRARY z)
find_library(ASSIMP_IRRXML_LIBRARY IrrXML)

message("ASSIMP_ZLIB_LIBRARY   = " "${ASSIMP_ZLIB_LIBRARY}")
message("ASSIMP_IRRXML_LIBRARY = " "${ASSIMP_IRRXML_LIBRARY}")

target_link_libraries(cubist PRIVATE
  assimp::assimp
  ${ASSIMP_ZLIB_LIBRARY}
  ${ASSIMP_IRRXML_LIBRARY}
)

@idcrook Yep, that works. But I think we need to wait upstream to fix this source issue, and then we will update the assimp version to resolve this issue.

ah that's a much nicer workaround than I was able to do. Thanks!

When I try the workaround mentioned by @idcrook the build is successful but the program crashes and returns "exit code 139 (interrupted by signal 11: SIGSEGV)". Any idea how to fix this? I don't have much experience with CMake.

Since upstream has not fixed this error for a long time, I'm fixing it now.


Pretrained models

Thanks for sharing the code!
Would it be possible to share the pretrained BoxOnlyENet models?

In progress, will do, stay tuned. Cheers!


A question about number of frames to extract

How is number of frames to extract determined? Does it increase automatically as the video length increases?

It is determined in the config of processing data and I think it's always 300 if you don't set it manually.

It is determined in the config of processing data and I think it's always 300 if you don't set it manually.

How to set it manually?

You can see the help message for ns-process-data, eg ns-process-data video --help. The --num-frames-target argument is what you're looking for!


chore: bdd-sbhg-import-1584517661 to 0.0.1

chore: Promote bdd-sbhg-import-1584517661 to version 0.0.1

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approvers:
If they are not already assigned, you can assign the PR to them by writing /assign  in a comment when ready.
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Better error reporting  in the TUI when transaction posting fails on chain

Problem: When a tx submission fails it's not clear why because the error messages are obscure/cryptic/not visible
We cannot remember exactly what the problem was initially so we need to make sure we clarify the problem
Goal: We want the node to provide better error reporting when a L1 transaction posting fails (not when it's not observed) immediately, possibly giving a human-understandable message :)

[x] Reproduce manually issue on a working head, possible steps:

ensure the user does not have enough fund to post init tx (or will lead to a lower than minimal UTxO)
start a head in TUI
post init
see it fail -> is it understandable/visible/actionable?

We should have given more details to this story.
We should try to open our head again to see if we stumble upon the issue again

These are the big 5 potential errors which output we can improve:
data ErrCoverFee
  = ErrNoAvailableUTxO
  | ErrNotEnoughFunds Text
  | ErrUnknownInput Text
  | ErrNoPaymentUTxOFound Text
  | ErrScriptExecutionFailed Text
  | ErrCostEstimation Text

We should focus on errors for which a user can do something about so that we help him fix the situation and let the other errors as they are for now:

ErrNotEnoughFunds
ErrNoPaymentUTxOFound
ErrNoAvailableUTxO

Out of scope for now ("more details in the logs"):

ErrUnknownInput
ErrCostEstimation


Fix buffer sizes in ParseUserName + add some tests

Fixes  #24

There are two license files:  License.md and LICENSE.md on the repo, on Windows git doesn't like that as the file system is case insensitive.


Add bandit analyzer

Current coverage is 87.83% (diff: 100%)

Merging #30 into master will not change coverage

@@             master        #30   diff @@
==========================================
  Files             6          6
  Lines           222        222
  Methods           0          0
  Messages          0          0
  Branches          0          0
==========================================
  Hits            195        195
  Misses           27         27
  Partials          0          0

Powered by Codecov. Last update c4ef650...da6abfe

Coverage remained the same at 87.838% when pulling da6abfe7678734f72aab50d0a570784404a3c885 on bandit into c4ef650a10280d320599a78f315be9345a5b082f on master.

Coverage remained the same at 87.838% when pulling da6abfe7678734f72aab50d0a570784404a3c885 on bandit into c4ef650a10280d320599a78f315be9345a5b082f on master.

Coverage remained the same at 87.838% when pulling da6abfe7678734f72aab50d0a570784404a3c885 on bandit into c4ef650a10280d320599a78f315be9345a5b082f on master.

Coverage remained the same at 87.838% when pulling da6abfe7678734f72aab50d0a570784404a3c885 on bandit into c4ef650a10280d320599a78f315be9345a5b082f on master.

Coverage remained the same at 87.838% when pulling da6abfe7678734f72aab50d0a570784404a3c885 on bandit into c4ef650a10280d320599a78f315be9345a5b082f on master.


Dependencies on request-scroped providers lead to DI failure

Is there an existing issue for this?

[X] I have searched the existing issues

Current behavior
I have a request-scoped service somewhere in ths bottom of the dependencies tree. When I try to inject to my command runner a service, that directly or indirectly injects a request-scoped provider the DI system becomes unpredictable. The most common failure is that the command runners constructor is not being called and its dependencies are undefined`. In some cases the mase behaviour is observed on other providers.
I think it is reasonable that CLI executor can not inject a request - it has not an incoming HTTP request. But the problem is unpredictable DI behaviour without any warnings or errors. It becomes hard to investigate resons of such errors: in our team it took aout 4 months between the first encounter with such error and discovering the reason.
Minimum reproduction code
https://github.com/xydens/nest-commander-mrr-0 this is the reproduction repo.

yarn install
yarn build
node dist/cli.js articles:publish-delayed

You will see:
/nest-commander-bug-example-0/dist/domain/articles/publish-delayed-articles.command.js:28
            const authorGrants = this.grantService.getGrants(article.authorId);
                                                   ^

TypeError: Cannot read properties of undefined (reading 'getGrants')
    at /Users/m.kutepov/work/nest-commander-bug-example-0/dist/domain/articles/publish-delayed-articles.command.js:28:52
    at Array.forEach (<anonymous>)
    at PublishDelayedArticlesCommand.run (/Users/m.kutepov/work/nest-commander-bug-example-0/dist/domain/articles/publish-delayed-articles.command.js:27:25)
    at Command.<anonymous> (/Users/m.kutepov/work/nest-commander-bug-example-0/node_modules/nest-commander/src/command-runner.service.js:102:54)
    at Command.listener [as _actionHandler] (/Users/m.kutepov/work/nest-commander-bug-example-0/node_modules/nest-commander/node_modules/commander/lib/command.js:482:17)
    at /Users/m.kutepov/work/nest-commander-bug-example-0/node_modules/nest-commander/node_modules/commander/lib/command.js:1264:65
    at Command._chainOrCall (/Users/m.kutepov/work/nest-commander-bug-example-0/node_modules/nest-commander/node_modules/commander/lib/command.js:1158:12)
    at Command._parseCommand (/Users/m.kutepov/work/nest-commander-bug-example-0/node_modules/nest-commander/node_modules/commander/lib/command.js:1264:27)
    at /Users/m.kutepov/work/nest-commander-bug-example-0/node_modules/nest-commander/node_modules/commander/lib/command.js:1062:27
    at Command._chainOrCall (/Users/m.kutepov/work/nest-commander-bug-example-0/node_modules/nest-commander/node_modules/commander/lib/command.js:1158:12)

Expected behavior
The attached repository has another example of missusing a request-module: it has a pseudo-cron-job based on @nestjs/schedule, that also indirectly requires request-scoped RolesService. Unlike the Commander module, when I inject a request-scoped provider into a cron-job the scheduler explicitly warns:
[Nest] 40731  - 01/26/2023, 1:45:48 AM    WARN [Scheduler] Cannot register cron job "ArticlesCleanupService@handleCron" because it is defined in a non static provider.

I think, nest-commander should also at least explicitly throw an error, when it encouters a request-soped provider in command dependencies. Or, it will be better, allow to put a fake REQUEST into service container and handle request-scoped services as a common nest app.
Package

[X] nest-commander
[ ] nest-commander-schematics
[ ] nest-commander-testing

Package version
2.5.0, 3.4.0
Node.js version
16.14
In which operating systems have you tested?

[X] macOS
[ ] Windows
[ ] Linux

Other
No response

I'll see about the possibility of overriding Nest's default REQUEST token so that a mock non-request scoped provider can be used. If not, I'll add in an error and release that as part of the next release. I'll have to think about the type of release though.

From a primitive test, it looks like being able to provide an override of Nest's REQUEST is doable. I'm gonna try to extend this out to providing it as a part of the CommandRunnerModule that gets created under the hood of the CommandFactory so that it's automatically taken care of. Maybe even provide an interface in the CommandFactory to pass in a mock request context

Hmm, as it turns out, currently global modules are resolved after internal modules (probably a change that can be made somewhere inside Nest's core code) so the InternalCoreModule always resolves theREQUEST provider before my CommandRunnerModule can. So at the moment, this can be mitigated by providing your own REQUEST provider inside the module containing the command, but I don't (yet) have a way to provide a global override when using the module. Looking at updating Nest's code to allow for this though

Okay, so there's not much we can do in Nest's code base for this, but I have added in a try/catch around the call that gives a nice warning when a (probably) request scoped provider gets used

I've also created a @RequestModule() decorator to wrap Nest's standard @Module() decorator that you can pass a mock request value to that is singleton so that a mock request can be used and the request scoped provider (so long as it isn't explicitly set to REQUEST) can be treated as a singleton in the case of the CLI

Added in<EMAIL_ADDRESS>


Footer links and info fix

Describe the bug
As seen no proper contact information is there in footer + links to socials not working except github

@shobhitexe thank you to find out this issue.


Changes done for Dataplex Sink with Uniform Output Format and code reuse

This commit contains changes for dataplex plugins.
Sink plugin -> Design and Run time changes
Uniform Output Format changes.
Code Reuse changes of moving common code to Utils classes.
Junits.
Connector Plugin for browse functionality.
Source Plugin -> Basic file structure with design time functionality.

Please fix conflict in src/main/java/io/cdap/plugin/gcp/bigquery/sink/AbstractBigQuerySink.java

Closing pull request to raise separate PR.


Needs guidance for dotnet build

The instructions in this doc only work for executing msbuild at the command line. They do not work for dotnet build.
We need documentation for this flow using dotnet build.

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

ID: ca46de41-5103-a318-3553-3bf05c59751b
Version Independent ID: 27b60762-dfe8-9320-c891-164e2f0ca980
Content: Code Generation in a Build Process - Visual Studio (Windows)
Content Source: docs/modeling/code-generation-in-a-build-process.md
Product: visual-studio-windows
Technology: vs-ide-modeling
GitHub Login: @mgoertz-msft
Microsoft Alias: mgoertz

@brandonh-msft -- Brandon, thank you for your suggestion.  Please consider these resources:

Ask a question or find an answer on the Microsoft Q&A page for Visual Studio.
Check the Visual Studio MSDN Forum.
Stack Overflow
Reddit

@mgoertz-msft -- Marco, please look into this issue.

@brandonh-msft That's correct. The current T4 Engine is built on .NET Framework and cannot run in a .NET Core process, which is what dotnet.exe is. There is a big VS Feedback suggestion ticket asking for .NET Core based T4. We are working on that and have shipped a new command line executable that you can try. For more information see our blog post at: https://devblogs.microsoft.com/dotnet/t4-command-line-tool-for-dotnet/

Thanks @mgoertz-msft - that's good progress but still beholden to a VS install & running from a dev cmd from what I can tell (unless I'm missing something). What I'd like to see is the ability for somebody to clone a GH repo and run dotnet build w/ a project that utilizes T4 w/o having to install anything other than .NET. In other words, provide compatibility to the VSCode-only crowd.
If we could update the docs ref'd by this issue w/ the link provided, though, that would be good information for devs looking to do this today, I think. Meanwhile I'd love to collab on this flow if you're willing :) hit me up.


download error

please see log from enigma:
18:49:04.4927 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:04+0100 [-] [Screen] Showing screen 'SetupSummary'. 18:49:04.4951 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:04+0100 [-] [Screen] Showing screen 'EPGImportConfig'. 18:49:04.5004 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:04+0100 [-] [EPGImport] nextImport, source= ExYu Channels By Nuno 18:49:04.5012 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:04+0100 [-] [EPGImport] Downloading: https://raw.githubusercontent.com/shaxxx/epg/raw/main/output/nuno.xml.gz to local path: /tmp/epgimport.gz 18:49:06.0494 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] [EPGImport] No IPv6, using IPv4 directly: https://raw.githubusercontent.com/shaxxx/epg/raw/main/output/nuno.xml.gz 18:49:06.0524 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] Starting factory <HTTPDownloader: https://raw.githubusercontent.com/shaxxx/epg/raw/main/output/nuno.xml.gz> 18:49:06.0544 driver/rcinput.cpp:38 handleCode [eRCDeviceInputDev] 0 160 1 18:49:06.0614 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] KEY: 352 1 KEY_OK OK 18:49:06.4464 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] [EPGImport] download failed: [Failure instance: Traceback (failure with no frames): <class 'twisted.web.error.Error'>: 404 Not Found 18:49:06.4469 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] ] 18:49:06.4475 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] [EPGImport] imported 0 events 18:49:06.4514 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] [XMLTVImport] Save last import date and count event 18:49:06.4520 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] [XMLTVImport] Run check deep standby after import 18:49:06.4526 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] [EPGImport] #### Finished #### 18:49:06.4537 /usr/lib/python2.7/site-packages/twisted/python/util.py:815 untilConcludes  2021-07-25 18:49:06+0100 [-] Stopping factory <HTTPDownloader: https://raw.githubusercontent.com/shaxxx/epg/raw/main/output/nuno.xml.gz>
`

Your URL is invalid? How did you come up with this url?
Use krkadoni.sources.xml file from this repository.
https://github.com/shaxxx/epg/raw/main/output/nuno.xml.gz works as expected.


Could support backlog Settings in the Configuration file for the Listener.

Support backlog Settings in the Configuration file for the Listener. The final listener queue size depends on min(Backlog, net.core.somaxconn).
static_resources:
  listeners:
  - name: listener_0
    address:
      socket_address: { address: <IP_ADDRESS>, port_value: 2046 }
    tcp_backlog_size: 1024

I see it is implemented on master
  - address:
      socket_address:
        address: <IP_ADDRESS>
        port_value: 15009
    tcp_backlog_size: 1234
    # the rest ....

$ ss -nltp |grep 15009
LISTEN   0         1234                <IP_ADDRESS>:15009            <IP_ADDRESS>:*        users:(("envoy-static",pid=48605,fd=357)

This was fixed here https://github.com/envoyproxy/envoy/pull/12625/files


Enhancement: Add to playlist should be opened after creating a playlist

After creating a playlist, it currently takes two additional clicks to add tracks to the new playlist.

Given that most people would probably like to fill a newly created playlist with songs, the Add to playlist screen should automatically open for the new playlist after the user clicks Create in the naming dialog.

I agree this behavior can be improved, but just opening this screen without asking would be a bit annoything, I'd rather show a toast that would suggest opening this screen to, like we have in _SaveQueueAsPlaylistAction. This is compromise that would not annoy and improve UX at the same time.

I don't feel like it would be annoying at all, adding items to the newly created playlist is just the next logical step. Can you think of an example where the user wouldn't want to add something to the new playlist?

Can you think of an example where the user wouldn't want to add something to the new playlist?

User creates a playlists and fills it in later, in a way that they prefer to do that. There is lots of ways to do this - from any screen in the app, in fact.

I don't feel like it would be annoying at all, adding items to the newly created playlist is just the next logical step.

From UX point of view it seems like a screaming "you should add tracks NOW", while mildly suggesting a user to fast-jump to do this seems like a behavior that would suit all.


Bug 2100682: Delete only the appropriate HW device in the modal

📝 Description
Fixes:
https://bugzilla.redhat.com/show_bug.cgi?id=2100682
Delete only the appropriate hardware device (GPU device/Host device)
from the devices list, when clicking on the icon to delete
on the right in the modal.
🎥 Demo
Having 2 devices with the same Name leading to the buggy scenario:

Before:
Deletion of the one of the devices caused deletion of all the devices with the same Name:

After:
Only the appropriate device deleted:

@glekner @avivtur @metalice @pcbailey @yzamir @vojtechszocs please review

/lgtm


Detect whether VS Code is in liveshare session

Detect whether VSC is running in live share
Currently when in a live share session, the client vsc session ends up with a number of messages getting displayed:

Interpreter not selected
Test framework not selected
Linter messages

Messages:

We have messages in the status bar
We have popups appearing as well

No longer an issue. If it were, then we'd need to report them to the live share team.


Discuss if global type registry in go-runtime is a good idea

This came up in standup while discussing this PR: https://github.com/TBD54566975/ftl/pull/1448
Adding a ticket so we can discuss more a bit later. We decided to merge the PR as a stop-gap.

We discussed this in the daily sync and there are a couple of limitations with the current approach:

The type registry is effectively static for the lifetime of a module's execution, but the registry is dynamically constructed and requires a context.Context to use.
Related to 1, this implies that it cannot be used by methods that don't pass a context around, including the stdlib's encoding/json.
Currently the registry is only constructed in the generated main.go, which doesn't exist during tests, and thus the type registry cannot be used with ftltest at all.

A proposed solution is to:

Modify the type registry to be globally scoped.
Extend the external_module.go template to register its types in an init() function.

eg.
func init() {
  typeregistry.Register(
    typeregistry.SumType[MySumType](*new(Variant1), *new(Variant2)),
  )
}

This will automatically register the module's types whenever it is imported.


Fixed #153: rustsym integration incorrectly assumed that the current …

…workspace path would be the crate root.
Moved CommandService.cwd() to PathService.cwd() as it seems to be more appropriate.

👍


Cant build containers

~/graphprotocol-mainnet-docker$ bash start
Step 15/20 : RUN npm i -g<EMAIL_ADDRESS>--registry https://registry.npmjs.org/ --unsafe-perm=true
 ---> Running in fcb844d20863
npm WARN deprecated<EMAIL_ADDRESS>No longer supported. Use the multi-stream support in the latest core Pino
npm WARN deprecated<EMAIL_ADDRESS>This module renamed to process-warning
/home/graph/.npm-global/bin/graph-indexer -> /home/graph/.npm-global/lib/node_modules/@graphprotocol/indexer-cli/bin/graph-indexer

><EMAIL_ADDRESS>install /home/graph/.npm-global/lib/node_modules/@graphprotocol/indexer-cli/node_modules/@graphprotocol/cost-model
> node-pre-gyp install --fallback-to-build=false --update-binary || yarn build-release

node-pre-gyp ERR! install response status 502 Bad Gateway on https://github.com/graphprotocol/agora/releases/download/v0.1.14/graphprotocol-agora-plugin-v0.1.14-node-v83-linux-x64.tar.gz
node-pre-gyp ERR! install error
node-pre-gyp ERR! stack Error: response status 502 Bad Gateway on https://github.com/graphprotocol/agora/releases/download/v0.1.14/graphprotocol-agora-plugin-v0.1.14-node-v83-linux-x64.tar.gz
node-pre-gyp ERR! stack     at /home/graph/.npm-global/lib/node_modules/@graphprotocol/indexer-cli/node_modules/@mapbox/node-pre-gyp/lib/install.js:67:15
node-pre-gyp ERR! stack     at processTicksAndRejections (internal/process/task_queues.js:95:5)
node-pre-gyp ERR! System Linux 5.4.0-99-generic
node-pre-gyp ERR! command "/usr/bin/node"<EMAIL_ADDRESS>"install" "--fallback-to-build=false" "--update-binary"
node-pre-gyp ERR! cwd /home/graph/.npm-global/lib/node_modules/@graphprotocol/indexer-cli/node_modules/@graphprotocol/cost-model
node-pre-gyp ERR! node -v v14.20.0
node-pre-gyp ERR! node-pre-gyp -v v1.0.9
node-pre-gyp ERR! not ok
response status 502 Bad Gateway on https://github.com/graphprotocol/agora/releases/download/v0.1.14/graphprotocol-agora-plugin-v0.1.14-node-v83-linux-x64.tar.gz
sh: 1: yarn: not found
npm ERR! code ELIFECYCLE
npm ERR! syscall spawn
npm ERR! file sh
npm ERR! errno ENOENT
npm ERR<EMAIL_ADDRESS>install: `node-pre-gyp install --fallback-to-build=false --update-binary || yarn build-release`
npm ERR! spawn ENOENT
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/graph/.npm/_logs/2022-09-06T22_56_56_430Z-debug.log
ERROR: Service 'cli' failed to build: The command '/bin/sh -c npm i -g<EMAIL_ADDRESS>--registry https://registry.npmjs.org/ --unsafe-perm=true' returned a non-zero code: 1

fixed by rerun the process one more time


Doesn't work

When I try to do unplug2shutdown.py --configure, the console immediately prompts a lot of errors. I have all the software that was needed, and I am on a Raspberry Pi 3B on Raspbian.

Hello, this is a very old proof of concept that has never actually been maintained.
Thanks for understanding,
Claudio


Can the maximum playback speed be adjusted to 4x?

That's a very useful plugin, thank you very much!
Can the maximum playback speed be adjusted to 4x?

I just released a new version 0.4.0 which allows 4x speed. Please give it a try.

There was an issue with the release process, but 0.4.0 is out now

@UIyidu9322 there was an issue in the release process, which has been fixed and 0.4.0 is available now.


Introduce net

Codecov Report

Merging #10 into master will decrease coverage by 6.1%.
The diff coverage is 56.81%.

@@            Coverage Diff             @@
##           master      #10      +/-   ##
==========================================
- Coverage   67.54%   61.43%   -6.11%
==========================================
  Files          10       18       +8
  Lines         228      529     +301
==========================================
+ Hits          154      325     +171
- Misses         57      161     +104
- Partials       17       43      +26

Impacted Files
Coverage Δ

net/connPassError.go
0% <0%> (ø)

net/udp_unix.go
17.64% <17.64%> (ø)

net/udp.go
29.72% <29.72%> (ø)

net/tcplistener.go
60.52% <60.52%> (ø)

net/connUDP.go
62.22% <62.22%> (ø)

net/tlsconfig.go
65.67% <65.67%> (ø)

net/conn.go
67.85% <67.85%> (ø)

net/tlslistener.go
68.57% <68.57%> (ø)

... and 6 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 6b22e66...730bcfd. Read the comment docs.


added preloader

Issue Title: Preloader
resolve issue: #265
Type of change ☑
What sort of change have you made:

[x] New feature (non-breaking change which adds functionality)

Checklist: ☑

[x] My code follows the guidelines of this project.
[x] I have performed a self-review of my own code.
[x] I have commented my code, particularly wherever it was hard to understand.
[x] I have made corresponding changes to the documentation.
[x] My changes generate no new warnings.
[x] I have added things that prove my fix is effective or that my feature works.
[x] Any dependent changes have been merged and published in downstream modules.

How Has This Been Tested? ⚙
I have tested in the local environment

@singodiyashubham87 pre.json contains the animation in json format

@Jagpreet153 I understand but it's not an image file. It should be placed under "src/utils/" with the name "preLoaderAnimation.json" & not "pre.json", So that it may provide context of what that JSON is all about.

@Jagpreet153 I understand but it's not an image file. It should be placed under "src/utils/" with the name "preLoaderAnimation.json" & not "pre.json", So that it may provide context of what that JSON is all about.

Ok I will make these changes

@Jagpreet153 Additionally, move the Preloader.jsx to the "src/components" directory & not inside the chatbot directory.


Don't Merge! PR real time test for webhook case

Docs Build status updates of commit fbd61ec:
:clock10: Pending: waiting for processors (21 builds ahead of you)
:warning: Docs Build is busy, currently there are 21 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit fbd61ec:
:clock10: Full build: the average full build time is 5 min(s) 43 sec(s), this is based on the last 30 build(s) for this repository.

Docs Build status updates of commit fbd61ec:
:warning: Validation status: warnings

File
Status
Preview URL
Details

docs-ref-conceptual/testing.md
:warning:Warning
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)
Details

docs-ref-conceptual/testing.md

[Warning] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Warning] Missing attribute: title.
[Warning] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Warning] Missing attribute: title.
[Warning] Missing attribute: either ms.prod or ms.service is required. Use ms.prod for on-premise products, or ms.service for cloud services.
[Warning] Missing attribute: title.

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


Bump saucie and other deps

Saucie 2.0 seems to hang after sauce runs complete. Just moved back to 1.4.1.


单页节点的纸张方向能不能可设置

What problem does this feature solve?
单页节点的纸张方向可设置，而不是全篇。
What does the proposed API look like?
单页节点的纸张方向可设置，而不是全篇。

https://github.com/Hufe921/canvas-editor/issues/718


Course outline / syllabus

It would be helpful to have a document that lists the course outline included in the repository, that we can then refer to to a) check we have covered everything we want to, and b) think about what to add or remove, and the order of different topics. @arm61 do you have the draft outline we put together in Bristol?
This can also then be a first draft for a student-facing syllabus / breakdown of the weeks and the learning activities / concepts.

The majority of the outline currently is present in the project (https://github.com/pythoninchemistry/ch40208/projects/2) but I agree that a more readable document with a week by week run down would be nice. Will deal with on Tuesday

There is a first draft in the pull request. Ben if you can review it? (weeks 7 and 8 are we pick two of those topics [or completely different topics] and they work on them for the week).
Will do more detail (phrase it as learning objectives etc.) once you are happy with the content.
I think that the "good coding practice" in week 6 could be swapped with week 8 and then the exercises would be the filler for when we are both away?

Reopening this because it should include the changes from our discussion last week.

I have updated the course outline to match the stuff we spoke about. Although I am not 100% sure what you will be doing in week 8/9 so if you can fill those in @bjmorgan

Course synopsis added here: https://github.com/pythoninchemistry/ch40208/blob/master/Synopsis %26 Assessment 2019.pdf


Performance Gap on Argoverse 2 Validation Set

Thanks for sharing this perfect work!
After evaluating the pre-trained model on Argoverse 2 validation set using the default configuration, I found a performance gap between the results I got and the data in the table IV (the last row). Here is the comparison:

This issue does not occur on the Argoverse 1 validation set.:

Looking forward to your reply!

@Yipeng-Zhou Hi, thanks for your feedback! Actually, the released checkpoint for AV2 is not the one we used in the paper. I will check this issue and upload the correct one soon.

Sorry for the late reply. Unfortunately, I cannot find the exact checkpoint for the experiment. So I re-train the network and get a checkpoint that achieves similar performance. I have updated the weight at saved_models/simpl_av2_bezier_ckpt-fix.tar, and the quantitative result on AV2 validation set is:
Validation set finish, cost 72.22 secs
-- minade_1: 2.045 minfde_1: 5.594 mr_1: 0.663 brier_fde_1: 5.594 minade_k: 0.777 minfde_k: 1.452 mr_k: 0.196 brier_fde_k: 2.069

If you have any questions, please let me know.
Again, thanks for your valuable feedback!


Fix discrepancy in code explanation

Height of a RowDefinition is 2* in the code snippet, which is also how the image shows it, whereas the explanation given under it mistakenly says that it is 3*.

This seems like a small (but important) contribution, so no Contribution License Agreement is required at this point. We will now review your pull request.
Thanks,
Microsoft Pull Request Bot


Dependency memcached-northscale doesn't work on MRI 1.9.3-p0.

Not sure why I'm filing the bug here, simply to sound it out, I guess.
Under 1.9.3 the memcached-northscale Gem doesn't work, (compile errors owing to missing symbols here…) therefore amnesia doesn't work.
What level of effort do you imagine is required to take a different memcached driver?
Update: Having taken a moment to look at the source. I imagine you can expect a fork/pull soon enough

We could try updating the gem dependency for the gem...
Have you checked to see if there is an issue logged for memcached-northscale?
On 21/01/2012, at 3:53 AM, Lee<EMAIL_ADDRESS>wrote:

Not sure why I'm filing the bug here, simply to sound it out, I guess.
Under 1.9.3 the memcached-northscale Gem doesn't work, (compile errors owing to missing symbols here…) therefore amnesia doesn't work.
What level of effort do you imagine is required to take a different memcached driver?

Reply to this email directly or view it on GitHub:
https://github.com/benschwarz/amnesia/issues/3

That gem is very outdated. You really want to use dalli. @leehambley May be worth trying to integrate that, the API is similar.

@lstoll My thoughts exactly, @benschwarz you can likely expect a patch this weekend.

Interestingly enough, someone supplied a patch for dalli and I rejected it[1]… however back then it was by no means accepted as 'the one to use'.
[1] https://github.com/benschwarz/amnesia/pull/2

Oh yeah, I remember that one. I think times have changed since then though.

I'll let @leehambley choose to decide if its worth using the old code in #2 or not… and wait to see if he supplies a patch.

1.9.3 is eol. should be closed as well.


Sequel support?

Maybe add an option for a page to have a "sequel", which is then linked at either the top or the bottom of the page (I'm not sure yet)

This is probably best done using series taxonomy.


State machine improvements

[ ] Manual arm code doesn't work
[ ] Speed up arm control
@sjiyeng put rest of changes requested

Intake/outtake speed controlled by state machine
Move intake vs outtake button to driver, a and b buttons
Make which d pad corresponds to what height more intuitive, will ask lee
manual control on driver controller, max speed of .1


namespace for states; transition function for #761

Addresses #761
Still working on this.

[x] Tests for new functionality/models or Tests to reproduce the bug-fix in code.
[ ] Updated documentation of features that add new functionality.
[x] Update CHANGELOG.md with major/minor changes.

Tests for this PR are passing locally.
The implementation is still a bit rough, especially in light of the dealing with "poststates", which are slated to be substantially revised (see #798).
But I think it is at a state now where it makes sense to request a review from @mnwhite .

Next steps for this PR:

replace "post state" storage with a step at the beginning/end of a period which stores values from states_now in states_prev, and put None/NaN values in all the states_now
include a configurable ante_vars with functions for initializing the state at time = 0.

Ah, working on this reminded me of the other reason for the poststate designation.
The poststates notionally need to be computed after a control variable is determined via a decision rule.
I believe that this wrinkle will get smoothed over once we use the topological order of model variables, or some user-defined framing, to determine execution order.
In the short term, I'm going to have to keep using the somewhat vague and overloaded 'poststate' category:

getPoststates will calculate state values that depend on controls....
... but store these values in state_now momentarily...
... before transferring them to state_prev

I have almost all the bugs worked out in the new implementation (i.e., most tests are passing) but I have a sticky issue I need feedback from @mnwhite about.
It has to do with how the AgentType classes, now organized with state_now and state_prev namespaces, interact with the Market class.
Some things I notice:

While the market solve() method uses agent simulation as part of the makeHistory() step, I don't believe initializeSim on the agents is ever called. This makes for a different path for seeding the antecedent state (i.e., the state_prev values needed to simulate a period.)
I guess the pushing and pulling of state from the market to the agent objects is done in the sow() and reap() methods.

these used to work by setting agent attributes
now, we need to make the decision of whether they sow to state_prev and reap from state_now, or what.
It looks like the marketAction command simulates one period, which would cycle state_prev on time period--so maybe the market reads from and writes to state_prev?

does this use the same mortality mechanics as a regular simulation?

Thanks in advance for any thoughts on this.

Tests are now passing.
There remains a design issue which has not be resolved in a satisfactory way yet.
Model classes currently use a combination of explicitly defined state variables and inherited state variables.
In the current pattern, the lists of 'state' variables are inherited in such a way that many downstream classes have dummy states used by ancestor's models, but unused themselves. This is messy.
There is also a problem that in some places, the 'state variable' is defined by assignment to two dictionaries (state_now and state_prev) in the model constructors. This is untidy and can lead to bugs in future models.

There seem to be some inconsistencies across the model classes in how inheritance is done. This makes it harder to have a consistent design for these things.
I'm wondering if there's a specific reason why the constructor for AggShockConsumerType calls the AgentType constructor, rather than its superclass IndShockConsumerType's constructor. It takes several steps to reproduce some of the aspects of IndShockConsumerType after the call to the AgentType constructor.

Latest commit cleans up some of the state_var inheritance issues.
However, locally this change breaks the Fast models developed by @alanlujan91
@alanlujan91 do you have any insight into why this may be happening? I have not touched the Fast classes directly in this PR. The main thing the most recent change does to the core classes is create a state_vars (no underscore) variable on the AgentType class and has this variable be modified directly in subclasses like ConsIndShockModel

Hmm. I see tests are passing online. So the issue with the Fast models must be a local issue.
In that case, I request a review from @mnwhite

Latest commit cleans up some of the state_var inheritance issues.
However, locally this change breaks the Fast models developed by @alanlujan91
@alanlujan91 do you have any insight into why this may be happening? I have not touched the Fast classes directly in this PR. The main thing the most recent change does to the core classes is create a state_vars (no underscore) variable on the AgentType class and has this variable be modified directly in subclasses like ConsIndShockModel

@sbenthall if this issue persists, I can take a look later this week.

Quick reactions:

It looks like getStates() now returns the new state variables, but doesn't actually record them in a history.  AgentType.simOnePeriod() also doesn't try to collect any output from getStates.

Did you mean to rename getStates() to transition()?  ConsGenIncProcessModel has this renamed, but it's not changed in core; not sure if this is WIP.

The fact that time advances and everything in state_now should be copied to state_prev should be the first thing that happens in the period, not the last thing.  As written, any time the user simulates and then looks at state_now, she would expect to see the current values of variables at the end of the simulation... but instead she sees empty arrays.

That dictionary move/copy should be part of simOnePeriod itself, not something the user has to ask for by calling AgentType.getPostStates() (or any other method).  It's part of the machinery.

Thanks for this, @mnwhite

It looks like getStates() now returns the new state variables, but doesn't actually record them in a history.  AgentType.simOnePeriod() also doesn't try to collect any output from getStates.

I believe getStates(), getControls() etc are being phased out, but not yet in this PR.
In core, getStates() wraps the transition() method, which is modeled on Dolo's transition functions. I was going to split this up into a frame-specific transition function in a future step. getStates (for now) stores the results of the transition in memory.
https://github.com/econ-ark/HARK/pull/836/files#diff-250396a11470a27af0e8cc6a3474b16cR660-R663
Corresponding with Dolo, the transition method returns the values of the changed variables.
In some cases because of the irregularity between different models, I was unable to liquidate the getStates variable completely. Separately, it may be that I have missed some revisions to the new style.
I'll check over this again.

3. The fact that time advances and everything in state_now should be copied to state_prev should be the first thing that happens in the period, not the last thing

4. That dictionary move/copy should be part of simOnePeriod itself, not something the user has to ask for by calling AgentType.getPostStates() (or any other method).  It's part of the machinery.

Ah, these are good points. I will make this change. Thanks!

Crap, I missed that AgentType.getStates calls AgentType.transition.  My bad.
On Wed, Sep 30, 2020 at 2:24 PM Sebastian Benthall<EMAIL_ADDRESS>wrote:

Thanks for this, @mnwhite https://github.com/mnwhite

It looks like getStates() now returns the new state variables, but
doesn't actually record them in a history. AgentType.simOnePeriod() also
doesn't try to collect any output from getStates.

I believe getStates(), getControls() etc are being phased out, but not yet
in this PR.
In core, getStates() wraps the transition() method, which is modeled on
Dolo's transition functions. I was going to split this up into a
frame-specific transition function in a future step. getStates (for now)
stores the results of the transition in memory.
https://github.com/econ-ark/HARK/pull/836/files#diff-250396a11470a27af0e8cc6a3474b16cR660-R663
Corresponding with Dolo, the transition method returns the values of the
changed variables.
In some cases because of the irregularity between different models, I was
unable to liquidate the getStates variable completely. Separately, it may
be that I have missed some revisions to the new style.
I'll check over this again.

The fact that time advances and everything in state_now should be
copied to state_prev should be the first thing that happens in the
period, not the last thing

That dictionary move/copy should be part of simOnePeriod itself, not
something the user has to ask for by calling AgentType.getPostStates() (or
any other method). It's part of the machinery.

Ah, these are good points. I will make this change. Thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/econ-ark/HARK/pull/836#issuecomment-701562881, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ADKRAFMSKCFYVZBBW3ULSCTSINZWFANCNFSM4RMGNOQA
.

As a consequence of this, I will need to change simBirth so that it populates state_now instead of state_prev.
The upshot of this is that agents will be born into t = 0 without the normal transition logic.
This is a slightly different flavor than before, where simBirth populated poststate_vars which was a kind of "yesterday".

Ah, hmm. But that has some friction with getMortality, which creates newborns with different t-1 state?

getMortality should just call simDeath and simBirth, I think.  getMortality
can be called after state_now is moved to state_prev. simBirth should
overwrite state_prev entries of everyone who is flagged in who_dies,
creating a new "previous state" for newborns that describes how they come
into the world; any state variables that aren't specified in simBirth
should be left as NaN.

This is how it worked before.
However, since simBirth is also called by initializeSim, then those birth conditions get erased if the state moves from _now to _prev at the beginning of the period.

I think I need to put the moving for state from _now to _prev in between getMortality and the model transition.

Just put a conditional on getMortality then:
if self.t_sim > 0:
    self.getMortality()
Then it gets skipped only if this is the very first simulated period in
history.
On Wed, Sep 30, 2020 at 2:59 PM Sebastian Benthall<EMAIL_ADDRESS>wrote:

I think I need to put the moving for state from _now to _prev in between
getMortality and the model transition.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/econ-ark/HARK/pull/836#issuecomment-701581952, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ADKRAFN3KTPRTFRUOZATLMLSIN5ZNANCNFSM4RMGNOQA
.

That is not as elegant.

Oh dear. Now the shock logic and the state logic are quite divergent.
I don't think I'll be able to fix that in this PR.
The main issue I see, which I'll bring up again, is that I think that the default population/mortality model is an extension of the MDP formalism, but I haven't yet seen a mathematical description of its form. It's a messier process when the single source of truth is raw code.

I'm going to write up some math about this. I think it's needed for the documentation at the very least.
I expect there's also some venue (maybe not ones you are interested in yourself) where it is publishable.

We could also split mortality so that simDeath happens at the end of the
period, drawing boolean flags for who_dies as the last step.  simBirth
would then happen at the beginning of the next period.
At the beginning of simOnePeriod, state_now automatically gets moved back
to state_prev and state_prev values for indices marked in who_died get
set to empty.  Then simBirth acts as it usually does, filling in state_prev
for who_dies.
We could then remove simBirth from initializeSim and instead just set
who_dies to all True.  This means that the initial population can't be
examined after calling initializeSim, but maybe we need to live with that.
Or we can just have a 1 line conditional that says the very first period of
time is slightly special.

If you really want mortality in an MDP, the model is essentially that there
is some probability that each period, rather than experiencing the normal
intertemporal transition, your state instead gets randomly drawn from some
distribution that is exogenous to your idiosyncratic state. Moreover, you
weight future utility flows in this event by factor zero.
On Wed, Sep 30, 2020 at 3:19 PM Sebastian Benthall<EMAIL_ADDRESS>wrote:

I'm going to write up some math about this. I think it's needed for the
documentation at the very least.
I expect there's also some venue (maybe not ones you are interested in
yourself) where it is publishable.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/econ-ark/HARK/pull/836#issuecomment-701592481, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ADKRAFJATGIM5F4SVECWCILSIOAF5ANCNFSM4RMGNOQA
.

These are all possibilities.
I wonder which one is the cleanest or best motivated?
I would prefer for this PR to not depend on that design decision any more than necessary since it's already doing a lot.
But I think it's a discussion worth having and getting right for sure.
The reason why I think the population and mortality aspects of HARK models are extensions to/beyond the MDP formalism is that:

MDPs tend to be single agent
we're talking about simulations with large AgentCounts and tracking the population dynamics over time (such as steady state distributions of income)
the assumption that the population is of constant size, and that a person who dies is immediately replaced with a newborn, is a strong assumption

I think I see how mortality can be internalized to the MDP for the purpose of determining optimal behavior.

The death-and-replacement assumption is mostly for computational efficiency
/ pre-allocating memory.  It works best in a perpetual youth model, but
it's also fine with age heterogeneity as long as you don't want to do any
experiments with exogenously killing off part of the population, and
procreation is exogenous.
In models with endogenous birth or death, this method doesn't work.
On Wed, Sep 30, 2020 at 4:10 PM Sebastian Benthall<EMAIL_ADDRESS>wrote:

These are all possibilities.
I wonder which one is the cleanest or best motivated?
I would prefer for this PR to not depend on that design decision any more
than necessary since it's already doing a lot.
But I think it's a discussion worth having and getting right for sure.
The reason why I think the population and mortality aspects of HARK models
are extensions to/beyond the MDP formalism is that:

MDPs tend to be single agent
we're talking about simulations with large AgentCounts and tracking
the population dynamics over time (such as steady state distributions of
income)
the assumption that the population is of constant size, and that a
person who dies is immediately replaced with a newborn, is a strong
assumption

I think I see how mortality can be internalized to the MDP for the purpose
of determining optimal behavior.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/econ-ark/HARK/pull/836#issuecomment-701617985, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ADKRAFMTCCFABS24NFWDU33SIOGC5ANCNFSM4RMGNOQA
.

I'm making an issue to discuss this specifically now... I'd like to continue there because I think it is a deep and important topic but also a little far afield from trying to keep state variables in a namespace.

I have been hung up on a difficult bug in the KrusellSmith classes.
One of the tests for the KS economy solver was not passing.
I added tests, based on values I was getting from master, which has isolated the issue to something happening in the solveAgents step within the economy class.
But I'm a little stumped where to go from here.

I believe the issue has to do with how the way the KS model is written in master, it's ambiguous whether EmpNow is a shock or a state.
I think it's technically an exogenous process but it's time dependent and so tracked as a "post-state".
In an earlier PR, I added a namespace for shocks. But I did not track shocks_now and shocks_prev separately. (I believe in some cases the shock history is tracked separately).

Using fine-grained tests ( see #850 ) I believe I've been able to isolate the bug to
KrusellSmithType.preComputeArrays()
There is a changed numerical value in the mNextArray created in preSolve().
I'm surprised, because as far as I know I'm not touching any of this stuff in the refactoring of the model variables for simulation.
@mnwhite any guesses what could be causing things to change this early on?

Progress: More testing has confirmed that before preSolve(), the AFunc that is being given to the KS agent has changed in this PR.

Ok. I figured out the problem.
I had been building out the test suite in an incorrect way.
The way it had been organized, the new tests I was writing (see #850) were running test_economy first, then later test_methods, using the same Economy object.
This was causing it to start with an already converged AFunc value, which was being distributed to the agent when getEconomyData was called.
I believe that the way reset() is written on the KS economy class and the Market class more generally, reset() will not change AFunc back to its original value! This seems like a bug to me.
What I'm doing now is rewriting the test cases in the recommended way: the setUp function is defined in one TestCase class, which is then subclassed for each more specific test.
Separately, I wonder if @mnwhite agrees that this behavior of reset() is not ideal. If so, I'll add an issue for it. This seems related, but not identical, to #849.

Nope, it's not that easy...(!)
Now I've isolated the problem to updateDynamics().
AFunc is not being set the same value across the two branches.
Worse, it looks like there's some stochastic variation in updateDynamics such that running the same test multiple times on the same branch comes up with different AFunc[0].slope values.

The calculation of the AFunc seems to depend on some attributes of the market, intercept_prev and slope_prev. These are as far as I know neither sow or reap variables on the market, but it looks like they are neverthless some kind of stored Market state that is iterated on.
What's happening here?

The KS economy class had a bug.
It used a copy() of the parameters dictionary, instead of a deepcopy().
Because the economy class stores the previous slope/intercept by mutating the lists, this was changing the default intercept and slope values.
This bug is now fixed in this PR.

There was an error in my transitioning of KS into the new state namespace.
I didn't properly change mNow. Tests are passing locally now!

ugh. One more case to fix: the Portfolio model.

Ok. Tests are passing locally. Phew
The issue was with how I was dealing with initialization and birth of AdjustNow and ShareNow.
In the current Portfolio model, these are anomalous: they need to be set as "post states" for a period's transition function, but they are a shock and a control variable respectively. As such they are not handled yet in this new treatment of state_now and state_prev.
I'll need to revisit this design while working on #838 (namespacing the control variables).
Please merge #853 , new tests for ConsPortfolio model, before this PR.


Cut a new release

Can we cut a new release, @jan-auer added some fixes for clone-suffixes and asked for a release with the new changes. Do you think that could be possible @fitzgen? :)

I can look at doing a release this weekend.

@khuey that's perfect, thank you! :+1:

I can't push the tag to Github yet but 0.2.15 is live on crates.io.


Model not working properly

I tried using ur model ,  but from the first line it was showing errors.

spam

ignore


Add onStarted hook method.

The reason to add this method is to add support for test static page.
Add some extraReducer, and invoke onStarted method when dva start is done,
in this way, a static mock feature is easy to be supported in a plugin.
see #1480

感谢 PR，我觉得先用其他的 mock 方案吧。


[NHentai] Fix search with exact tag

Checklist:

[x] Updated extVersionCode value in build.gradle for individual extensions
[ ] Updated overrideVersionCode or baseVersionCode as needed for all multisrc extensions
[ ] Referenced all related issues in the PR body (e.g. "Closes #xyz")
[ ] Added the isNsfw = true flag in build.gradle when appropriate
[x] Have not changed source names
[ ] Have explicitly kept the id if a source's name or language were changed
[ ] Have tested the modifications by compiling and running the extension through Android Studio
[ ] Have removed web_hi_res_512.png when adding a new extension

Hi I encountered issue with version 1.4.43. If I sort by popular today, this week, or this month (no other filter) only few results will be shown.
Below is sort by popular today.

Hi I encountered issue with version 1.4.43. If I sort by popular today, this week, or this month (no other filter) only few results will be shown. This was not an issue in 1.4.42.

Will fixed soon


Bug: Sysbox v0.2.1 Error response from daemon on Ubuntu 18.04

after building from source and running the given example
docker run --runtime=sysbox-runc -it debian
i get the following error:
docker: Error response from daemon: OCI runtime create failed: failed to register with sysbox-mgr: failed to invoke Register via grpc: rpc error: code = Unavailable desc = connection error: desc = "transport: Error while dialing dial unix /run/sysbox/sysmgr.sock: connect: no such file or directory": unknown.
ERRO[0000] error waiting for container: context canceled

@max55, did you find the issue, right? Looks like sysbox daemons may not be running in your setup. If you are building from sources you can make use of the 'scr/sysbox' script to launch sysbox processes.
Let us know if any question.

Thanks for the quick reply. I somehow solved the problem by installing the deb-package. (I didn't spot that before)

Thanks @max55. Would be great if you could copy-paste the set of instructions you executed to reproduce the issue you saw ... we may be missing something here 😔


Errors in gdscript_parser.cpp

Godot version
4.0.2.stable
System information
Windows 10
Issue description
Engine keeps spamming me this

Steps to reproduce
No steps, issue happens from time to time absolutely randomly
Minimal reproduction project
N/A

Without an example of a script that causes this we can't really investigate this.

You can help the process by reducing your project until you can identify which part of it causes the error spam

Well, the problem is that this issue happened randomly couple times and my code changed since these moments so I don't really have an example that will immediatly trigger this issue. And that's ofc sad. But I can upload all the scripts that the project had at the moment the issue happened. Luckily there are only 3 small scripts since it's basic learn project.
P.S. Problem happened in chunk.gd script that was attached to MeshInstance3D with ArrayMesh created in it. Other 2 scripts wasn't attached to anything.
Hope this helps!
mrp.zip

Hey I got the same bug. The issue seems to arise when writing the const keyword.
Godot version
4.1.stable
System Information
Windows 11
Issue description
The parser is writing parser bug errors when the const keyword is written by itself no matter the scope

Steps to reproduce
Node3D + a new script attached to it
Minimal reproduction project
N/A
I also tried it on my Android 11 smartphone with a Node2D, same problem.

I can confirm, that hanging const on a line causes a bunch of following lines being printed:
modules/gdscript/gdscript_parser.cpp:4337 - Parser bug: Mismatch in extents tracking stack.

The line number is correct for 4.1-stable, it's in GDScriptParser::complete_extents(Node *p_node).

For me it happens too, when i write the prefix "const" into an empty line.

@Drachenbauer The issue has been fixed already and the fix will be available in future versions of the engine (4.1.2 and 4.2).


The FluterView must be created from Activity in Android ?

    Activity activity = (Activity)this.getContext();
    if (nativeView == null) {
        this.mNativeView = new FlutterNativeView(activity.getApplicationContext());
    } else {
        this.mNativeView = nativeView;
    }
    this.mNativeView.attachViewAndActivity(this, activity);

the code copied from FlutterView.
it is seems that the view must work with Activity.
And now I  want to add a flutter view in the  input method , is there any way to make it ?

FlutterView does require an Activity.  #18115 will remove that requirement in a new version of FlutterView.
Can you describe what you mean by "I want to add a flutter view in the input method"?

Thanks for your reply.  “I want to add a flutter view in the input method” means that I want add the FlutterView in the android keyboard view. May I cloud make it in the new version of FlutterView


Export boarding pass to the Apple Wallet

https://developer.apple.com/wallet/

Just out of curiosity, why is this not a desirable feature? I was going to submit a feature request precisely for this, but seeing as this issue is labeled wontfix, I assume there's no point in doing so.

This is handled by the native part of our application, not by the react-native part of the application.
The feature should already be a part of the kiwi.com app 🙂

Thank you very much for the reply! With the knowledge that the feature should be there somewhere in the app, I actually managed to find it :)
Might I suggest that the app could make it a little more easily discoverable? When I open the booking details, the first boarding-pass-related menu item I see is Open boarding pass, which opens the pdf version. The pdf version has a share button, so I thought if Apple Wallet export is not listed there, the feature simply is not available.
But in the next section of Booking details, Trip info, there's a Tickets menu item which is subtitled Boarding passes, and only there do you get more info and options, including Apple Wallet export. However, it did not occur to me to investigate this further until I knew for sure (thanks to you) that the feature should be available somewhere in the app.
Or at least, since this github issue pops up pretty prominently on google when searching for "kiwi boarding pass apple wallet", this might help other people who are wondering how to do this. I've seen complaints on-line that booking flights through Kiwi makes it impossible to retrieve mobile boarding passes (because you can't manage the flight directly) -- this is clearly not true (cf. above), but it indicates I might not be the only person having trouble accessing the feature :)

Thank you very much for your feedback, I will create an issue on our closed-source mobile repo for this, linking to your comment 😊


Nested FunctionTool return type/arg model JSON schemas are not properly serialized

What happened?
This is the content of the tools field sent to the OpenAI chat completion API endpoint:
[{
  "name": "get_asset_by_gltf_id",
  "description": "Retrieves the asset associated with the provided glTF ID.\nThis endpoint allows fetching the asset details using the glTF ID and supports additional query parameters.",
  "parameters": {
    "type": "object",
    "properties": {
      "parameters": {
        "$ref": "#/$defs/GetAssetByGltfIdParametersProperties",
        "description": "parameters"
      }
    },
    "required": [
      "parameters"
    ]
  }
}]

Two problems here:

OpenAPI does not support references ($ref).
The reference pointer itself is invalid.

What did you expect to happen?
{
  "name": "get_asset_by_gltf_id",
  "description": "Retrieves the asset associated with the provided glTF ID.\nThis endpoint allows fetching the asset details using the glTF ID and supports additional query parameters.",
  "parameters": {
    "type": "object",
    "properties": {
      "parameters": {
        "properties": {
          "gltf_id": {
            "description": "The ID of the Gltf to get the Asset from",
            "title": "Gltf Id",
            "type": "string"
          },
          "fields[asset]": {
            "anyOf": [
              {
                "items": {
                  "type": "string"
                },
                "type": "array"
              },
              {
                "type": "null"
              }
            ],
            "default": null,
            "description": "Specifies which fields should be returned. The value **MUST** be a comma-separated\n(U+002C COMMA, \u201c,\u201d) list that refers to the name(s) of the fields to be returned.\n\nAn empty value indicates that no fields should be returned.\n\nOmitting this parameter indicates that all fields should be returned.",
            "title": "Fields[Asset]"
          }
        },
        "required": [
          "gltf_id"
        ],
        "title": "GetAssetByGltfIdParametersProperties",
        "type": "object"
      }
    },
    "required": [
      "parameters"
    ]
  }
}]

How can we reproduce it (as minimally and precisely as possible)?
class Foo(BaseModel):
    count: int
    size: Optional[float] = None

class Bar(BaseModel):
    apple: str = 'x'
    banana: str = 'y'

class Spam(BaseModel):
    foo: Foo
    bars: List[Bar]

async def get_spam(test: Spam) -> str:
    return Spam(foo={'count': 4}, bars=[{'apple': 'x1'}, {'apple': 'x2'}])

async def main() -> None:
    # Define an agent
    spam_agent = AssistantAgent(
        name="weather_agent",
        model_client=OpenAIChatCompletionClient(
            model="gpt-4o-2024-08-06",
            # api_key="YOUR_API_KEY",
        ),
        tools=[get_spam],
    )

    # Define termination condition
    termination = TextMentionTermination("TERMINATE")

    # Define a team
    agent_team = RoundRobinGroupChat([spam_agent], termination_condition=termination)

    # Run the team and stream messages to the console
    stream = agent_team.run_stream(task="Give me some spam")
    await Console(stream)

# NOTE: if running this inside a Python script you'll need to use asyncio.run(main()).
await main()

AutoGen version
0.4.0.dev6
Which package was this bug in
Core
Model used
gpt-4o
Python version
3.12
Operating system
Ubuntu 24.04
Any additional info you think would be helpful for fixing this bug
Working fix:
diff --git a/python/packages/autogen-core/src/autogen_core/components/tools/_base.py b/python/packages/autogen-core/src/autogen_core/components/tools/_base.py
index abbd3002..dcec015f 100644
--- a/python/packages/autogen-core/src/autogen_core/components/tools/_base.py
+++ b/python/packages/autogen-core/src/autogen_core/components/tools/_base.py
@@ -73,6 +73,10 @@ def __init__(
     def schema(self) -> ToolSchema:
         model_schema = self._args_type.model_json_schema()

+        import jsonref
+        model_schema = jsonref.replace_refs(model_schema, proxies=False)
+        del model_schema["$defs"]
+
         tool_schema = ToolSchema(
             name=self._name,
             description=self._description,

Thanks for the issue!


Rename border color to keep color scales consistent

Changes lighterGray to lightGray, and the previous lightGray to borderGray – which is mostly intended for form component borders

Codecov Report

Merging #92 into master will not change coverage.
The diff coverage is 100%.

@@          Coverage Diff          @@
##           master    #92   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files          18     18
  Lines         174    174
=====================================
  Hits          174    174

Impacted Files
Coverage Δ

src/theme.js
100% <100%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

Caution: this will impact the Divider PR, which uses lighterGray in storybook.


Improve SEO

Add stuff like:

sitemap.xml
robots.txt

Here are some links to get started:

Google's Search Engine Optimization (SEO) Starter Guide
Implementing SEO and Open Graph tags in Eleventy

Here's another useful article: https://www.belter.io/eleventy-sitemap/


Verify hash without building a tree with all hashes

For getting the Proof of some hash we need to build a Merkle tree with all leaves, but why we need to build a Merkle tree for verifying the hash, if we have a Proof.
Seems the Merkle tree solves the issue of using all hashes for verifying the one, but here we need to use all hashes for verifying, which is a not-optimized solution.
Maybe I miss something, will be glad for an answer.
Thanks in advance.

For verifying we should just provide the nodes which actually form an audit trail towards the merkle root. We could generate this proof by recursion.

For the given leaf node(consider it as childnode) determine its parent
For the parent node determine if the childnode is left child or the right child, if it is left add the right child to the audit trail and vice versa.
Now consider the parent node as the new childnode and recursively call the function with this new parent node and the audit trail.
I might have misinterpreted the problem but if it is correct then i think this will lead to a right solution.

Verify function doesn't utilise leaves used when creating MerkleTree obj. It should be ok to create a MerkleTree obj with empty array (instead of original leaves), and with the same hashAlgorithm and options (if any). Then provide the proofs, leaf, and root (no changes here) for verify().

Yes @hendrikttan is correct; you may instantiate merkle tree as usual but with empty leaves and then call verify:
const tree = new MerkleTree([], hashFn, options)
const verified = tree.verify(proof, targetNode, root)

or use the static verify method:
const verified = MerkleTree.verify(proof, targetNode, root, hashFn, options)


Reached the end of the file error at the random places of file while playing with startRemoteAudio

I get this exception at about 20 seconds pass the start of the file, while the file itself has a duration like 140 seconds and more
AudioConverterErrors.swift:errorDescription:78:: Reached the end of the file
Doesn't actually make the playback any worse though (except, after the seek function I have to also call play if the audio has been playing, but that's not a big deal).

No longer reproing. But feel free to reopen if you see this error still


Two instance of plugin

Hello,
is it possible to enable two instances of the plugin or connect to two wled hosts?

two instances might be possible if you compile the plugin yourself multiple times under different names (its pain). multiple hosts isnt really doable by myself as i only have a single strip


Making sure to check compare string, rather than an object

Before:

After:

Reviewer: @philipnrmn

Nice!! :D

mesosphere-ci Retest this please


include and extend outside of a class or module

Should the following code cause an offense?
# person.rb
include ActionView::Helpers::ConvenientHelper
class Person < ActiveRecord::Base
end

with the "right" version either including the module within Person, or explicitly including the module within Object:
# Either
class Person < ActiveRecord::Base
  include ActionView::Helpers::ConvenientHelper
end

# Or
Object.class_eval do
  include ActionView::Helpers::ConvenientHelper
end

In this case it looks like a mistake, but I've also seen include outside of any class in rake files.
An example of someone else encountering this kind of code: http://stackoverflow.com/questions/5161428/in-ruby-or-rails-why-is-include-sometimes-inside-the-class-and-sometimes-outs

include is sometimes legitimately used at the top level. Personally, I don't like the idea of adding a cop to check this.

I am very much in favour of this.

Added in #4840.


Add nbconvert to poetry

The environment can't add notebook files in the UI without nbconvert.

Could you elaborate? We are trying to reduce the dependencies as much as possible, and focus on the ones needed to deploy PrivateGPT to production setups. Notebooks are not the priority. Maybe a note in the documentation or an optional dependency would be better.

No worries, just noticed the error by default poetry env that it spits out an error even trying to upload the notebook files. This fixes that issue.

Trying to keep dependencies to the minimum, closing this PR as notebook files are not generally used as an input.


suzerain_joins_the_war in tributaries.6 doesn't look like it does anything

Possibly Fixed by most recent commit


web compent connectedCallback not trigger

OS: mac 13.2.1 (22D68)
Thorium  111.0.5563.69 (arm64)

web compent connectedCallback not trigger
in chrome

in Thorium

my mistake


Add request_status to BigQuery events, update BigQuery schema

Context
We're standardising the BigQuery Event schema across Find and Apply.
Changes proposed in this pull request

create a JSON schema file, usable in tests, to act as a reference point — we can copy this into Find. The field names etc (eg occurred_at) are now also aligned with TVS
add the request_status field to bring us into line with the schema

Link to Trello card
https://trello.com/c/nKBZ0XEX/3541-add-requeststatus-to-bigquery-events

@duncanjbrown I can see events coming through now 🎉 , but can we test events with query params to test that aspect?


Does ring-attn not support dropout?

In the backward function of ring-attn, rng_state does not use the value from forward function, but directly passes in None.
Does this indicate that ring-attn does not support dropout?

Good catch! yeah, I think it's hard to support dropout with the current implementation...

咱们有没有研究过te中的cp并行呢？这块是支持dropout的。这块逻辑是否可借鉴呢？
http://gitlab.software.cambricon.com/neuware/oss/nvidia/TransformerEngine/-/blob/v1.4.0_mlu/transformer_engine/pytorch/attention.py#L884-891


Custom Disruptor?

Yo, again ~
Zerio is using some custom Disruptor? Because now in master branch when load the project it's failed to load Disruptor.
Cheers.

Hi,
Yes, sorry about that. Zerio is currently depending on the not yet released UnmanagedDisruptor<T> and UnmanagedRingBuffer<T> types. My colleague (and complice) @ocoanet will release a new version of the disruptor soon, but until then, you need to clone the disruptor-net repo locally and reference the project manually to make Zerio compile.
I will reference the nuget package as soon as possible.
I'm currently working on updating the readme to document the main design changes.

Hi @rverdier ,
Currently (due to the current state of the experimental project) is high CPU consumption expected? When I turn on the server and client, my cpu reaches 90% usage (i7).
Thanks.

Hello,
Currently, Zerio uses 3 threads by peer:

One for the RequestProcessor (first event handler of the disruptor) responsible for dispatching I/O requests to the RIO request queue
One for the SendCompletionProcessor (second and last event handler of the disruptor) responsible for polling send request completions
One for the ReceiveCompletionProcessor, acting as the reception loop (polling receive request completions and resubmitting receive requests after incoming message handling)

With the current implementation, the CPU usage is expected to be quite high (especially if you run both the client and the server on your local machine), because I use a very aggressive WaitStrategy in the disruptor: the BusySpinWaitStrategy. You can play with others wait strategies by modifying the RequestProcessingEngine.CreateDisruptor the method.
Also, you can reduce the aggressiveness of the reception loop using a SpinWait in ReceiveCompletionProcessor.ProcessCompletion:
var spinWait = new SpinWait();
while (_isRunning)
{
    var resultCount = completionQueue.TryGetCompletionResults(results, maxCompletionResults);
    if (resultCount == 0)
    {
        spinWait.SpinOnce();
        continue;
    }

    for (var i = 0; i < resultCount; i++)
    {
        var result = results[i];
        var sessionId = (int)result.ConnectionCorrelation;
        var bufferSegmentId = (int)result.RequestCorrelation;

        OnRequestCompletion(sessionId, bufferSegmentId, (int)result.BytesTransferred);
    }
}

Thanks again for answering @rverdier .
I need to test the settings of the Disruptor, because working with other servers on the same machine and with high use of cpu is a bit complicated, but Zerio is amazing!
I'm wanting to use Zerio without Zerio's own client dependency (because I would like to use with Unity and trying to use disruptor and other reflection dependencies will only bring more headaches due to il2cpp and the high cpu usage , it is not a serious problem for the server to use so much cpu, but the client is already another story). Is there anything that can be done without too many headaches to adapt to zerio (using a simple network tcp layer)?
Happy New Year!
Regards.

The purpose of having busy waiting strategies is to have better latencies. But if you do not have strong requirements on this side you can very easily get the CPU usage of Zerio down to almost 0 (when idle) using blocking strategies for example, and a SpinWait in the reception loop.
Note that I pushed a new HybridWaitStrategy that only busy spins for the first, more critical, RequestProcessor event handler.

Is there anything that can be done without too many headaches to adapt to zerio (using a simple network tcp layer)?

It is very easy to write a simple TCP client for Zerio (you could take example on the TcpFeedClient), you don't have to use RIO on the client side. The only "protocol" constraint is that ZerioServer will echo back the first message it receives as a handshake.

Thanks, you are very receptive. xD
Problem I am checking now is that I can not connect 2 sessions at the same time, even changing sessioncount, winsocket is returned error 10055.

No problem! And yes, there is currently an issue with the queue sizing. I'm working on it and will try to push a fix soon.

@jclitwin It should be a bit better now. Don't forget to change the ZerioConfiguration.SessionCount if you want more than 2 client sessions. Right now session contexts are preallocated so you have to set the max number of session a ZerioServer can handle concurrently.

@rverdier woow! It is working perfectly!
There are some buffers that are initialized but their sizes are not defined by ZerioConfiguration itself, is that purposeful? Example: MessageFramer, TcpFrameReceiver, TcpFrameSender.
Do you have any kind of roadmap and you know current bugs or improvements? Apparently Zerio already looks stable.
I am willing to risk adapting Zerio into my project with #if and see how the performance will differ.
Thanks again with this great work!

Yes, I need to make more values configurable. The TCP based implementations will be used for temporary benchmarks but I will get rid of them at some point.
I have no roadmap yet but I plan to work full time on the project next week. I guess I'll see things more clearly after that and maybe I will be able to update the documentation and create a bunch of issues directly on Github.

Would it be a good idea to add disruptor configuration to the ZerioServer like in the constructor? In order to choose the type of WaitStrategy. Because there are types of servers that are not so crucial to be so aggressive (example something like the Login Server) and not having to change directly in the core.

I just pushed new configuration options to make the disruptor wait strategy configurable, as well as the polling wait strategies used both for sends and receives.
If you want minimal CPU usage when idle, you can try these settings for example:
config.RequestEngineWaitStrategyType = RequestEngineWaitStrategyType.BlockingWaitStrategy;
config.ReceiveCompletionPollingWaitStrategyType = CompletionPollingWaitStrategyType.SpinWaitWaitStrategy;
config.SendCompletionPollingWaitStrategyType = CompletionPollingWaitStrategyType.SpinWaitWaitStrategy;

there is a problem when you start the server and client and close the client, you can't connect a new client.

Yes, I'm aware of it. Both ZerioServer and ZerioClient are pretty broken regarding starts and stops for now; I'll be addressing these issues this week I think. I'm afraid you'll have dispose and re-instantiate the client each time you want to reconnect in the meanwhile.

@rverdier
Yo,
Was the project stopped?
Cheers.

I'm not actively working on the project these days, but it doesn't mean it is "stopped".

Thanks for answering. I see enormous potential at Zerio, which is why I was concerned that the project had been stopped.

The purpose of having busy waiting strategies is to have better latencies.

Because of the delay, I chose the UDP protocol.
The delay problem is actually a TCP protocol problem.
Compared with the delay caused by the network protocol, the delay caused by the program logic can be ignored.

UDP protocol combined with aggressive ARQ algorithm can achieve very good results(less dela/latency ). For example, this protocol is https://github.com/skywind3000/kcp.

For me, if RIO can be used to provide higher throughput, also reducing CPU utilization is the most important goal.
Although if you are willing to spend money, server resources are abundant, but all this requires more cost-money.


e2e: Use XIt instead of commenting code

This change is

Reviewed 1 of 1 files at r1.
Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Review status: all files reviewed at latest revision, all discussions resolved.

Comments from Reviewable


Feature: Choose which classes should be included in the YML definition

Description
It would be possible to choose which classes should be included in the YML/Json generated file via a selector rather than attributes?
Applying the SDK's custom attributes on existing code makes really difficult the adoption of this framework. It would help to keep your code base agnostics from any external framework.
Alternatives
Not applicable
Additional info
Add any other context or screenshots about the feature request here.
Example
From
[Message(..)]
public class Event
{
}

To:
..
.UseMessage(message => message..., "namespace/anything else")

I'm gonna assume it does. Please reopen if need be ;)


Waymo Env seems to have memory leak issue. Add unit test to check this after fix.

Not perfect, but the issue is greatly reduced.

LHS is the updated version, RHS is original. I would merge those changes soon.


Use options manager for default row height and column width

Found you delayed the \fwrite($sheetFilePointer, '<sheetData>'); in WorksheetManager.  But therefore invalid sheets will be generated if you simply call $writer->addNewSheetAndMakeItCurrent() without adding data to the worksheet.
in my opinion startSheet should look like this
public function startSheet(Worksheet $worksheet)
{
  ...
  \fwrite($sheetFilePointer, self::SHEET_XML_FILE_HEADER);
  \fwrite($sheetFilePointer, $this->getXMLFragmentForDefaultCellSizing());
  \fwrite($sheetFilePointer, $this->getXMLFragmentForColumnWidths());
  \fwrite($sheetFilePointer, '<sheetData>');

But then there is no time to call $writer->setDefaultColumnWidth or $writer->setDefaultRowHeight before the first sheet is created (by WriterMultiSheetsAbstract->openWriter()).
Therefore i have refactored setDefaultColumnWidth and setDefaultRowHeight to  use the OptionsManager like writer->setTempFolder. I believe setting default values before the writer is opened is the easier way.

Back to your solution!
Can not get this to work without delaying the the <sheetData>.
I have fixed the main problem by moving the started flag from WorksheetManager to the Worksheet.
Sadly the is now way to configure the the first worksheet that is created by openWriter.

Thanks! This seems to work well. I will merge this, let's see if we can get it merged into the main project finally.


Phi2 WebGPU support in WASM module?

I don't see if there is any WebGPU support in the wasm examples for Phi2
Thank you.

hi @loretoparisi we don't have a WebGPU backend yet, it's on the plan https://github.com/huggingface/candle/issues/344


Test running pre-processing steps of existing constraint pipeline

Completed, the code and tables have been looked over. Avery will add the path to the jupyter notebook

path to the testing code: gs://gnomad-avery/constraint/testing_constraint_code.ipynb

Avery will add docstring and submit PR

The repo haven't been added. Here is the link to PR: https://github.com/macarthur-lab/gnomad_lof/pull/7

Path to regenerated exome table: gs://gnomad-avery/constraint/model/exomes_processed.ht
Path to regenerated genome table: gs://gnomad-avery/constraint/model/genomes_processed.ht


group messages/broadcasts

would it be possible to add a notification to group messages/broadcasts for Group Ironman players?

from developer console:
Group Ironman chat:
2023-09-12 20:40:57 EEST [Client] DEBUG client-patch - Chat message type CLAN_GIM_CHAT: Hello
Clan chat:
2023-09-12 20:44:32 EEST [Client] DEBUG client-patch - Chat message type CLAN_CHAT: Gzz
seems like it should be possible to have a separate setting for clan chat and group chat


Invite me to the GitHub Community Organization

Name
Kush Gupta
Discord Username (if applicable)
Kush#4965
Twiiter username (if applicable)
mekushgupta
Additional Context
Hello everyone. My name is Kush Gupta  and I'm from Kanpur ,Uttar Pradesh ,India . I have completed bachelor of computer application from  virendra swarup college of management studies ,Kanpur.
I am a Computer Science student . I very please to exchange ideas in computer  and other field with different peoples.
I am interested in computer science and topics like Artificial Intelligence have always had a fascination for me.

Hey Kush,
welcome to our community, please accept the invite


Question: remote data, client side filtering

Hello,
@tabalinas
Is there a configuration that allows remote data loading and client side filtering, or just I have to implement it?

found solution in other issue
/close


Add support for Pub/Sub IAM methods and tests

This fixes #1198

Coverage increased (+0.009%) to 85.455% when pulling 17b9947834c862def74de77a747be973be91e9b7 on mziccard:pubsub-iam into ba74dc3095a63a5b9031521a08c88fe6dc6577c7 on GoogleCloudPlatform:master.

Coverage increased (+0.01%) to 85.46% when pulling c2a70279217cc40e5eaf9c0d5fd3c8564bea1bf0 on mziccard:pubsub-iam into ba74dc3095a63a5b9031521a08c88fe6dc6577c7 on GoogleCloudPlatform:master.

/cc @lesv

LGTM - what about snippets?

LGTM - what about snippets?

I'll add them soon all together.