[Error Report]: idk where this is coming from

Exception Report
SAMM Information:
	Manager Version: 1.2.11
	Current Game: Sonic Adventure DX
	Game Directory:
	Manager Location: C:\Users\User\Downloads\SA Mod Manager\
	Running as Admin: False

Exception Information:
	Type: DirectoryNotFoundException
	Exception: Could not find a part of the path 'C:\Users\User\Downloads\SA Mod Manager\mods\Patches.dat'.
	Source: System.Private.CoreLib
	In Function: Microsoft.Win32.SafeHandles.SafeFileHandle CreateFile(System.String, System.IO.FileMode, System.IO.FileAccess, System.IO.FileShare, System.IO.FileOptions)
	StackTrace:    at Microsoft.Win32.SafeHandles.SafeFileHandle.CreateFile(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options)
	   at Microsoft.Win32.SafeHandles.SafeFileHandle.Open(String fullPath, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable`1 unixCreateMode)
	   at System.IO.Strategies.OSFileStreamStrategy..ctor(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable`1 unixCreateMode)
	   at System.IO.Strategies.FileStreamHelpers.ChooseStrategyCore(String path, FileMode mode, FileAccess access, FileShare share, FileOptions options, Int64 preallocationSize, Nullable`1 unixCreateMode)
	   at System.IO.File.Create(String path)
	   at SAModManager.Codes.CodeList.WriteDatFile(String path, IList`1 codes)
	   at SAModManager.MainWindow.BuildCodeFiles()
	   at SAModManager.MainWindow.Save()
	   at SAModManager.MainWindow.comboProfile_SelectionChanged(Object sender, SelectionChangedEventArgs e)
	   at System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target)
	   at System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised)
	   at System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args)
	   at System.Windows.Controls.ComboBox.OnSelectionChanged(SelectionChangedEventArgs e)
	   at System.Windows.Controls.Primitives.Selector.SelectionChanger.SelectJustThisItem(ItemInfo info, Boolean assumeInItemsCollection)
	   at System.Windows.DependencyObject.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
	   at System.Windows.FrameworkElement.OnPropertyChanged(DependencyPropertyChangedEventArgs e)
	   at System.Windows.DependencyObject.NotifyPropertyChange(DependencyPropertyChangedEventArgs args)
	   at System.Windows.DependencyObject.UpdateEffectiveValue(EntryIndex entryIndex, DependencyProperty dp, PropertyMetadata metadata, EffectiveValueEntry oldEntry, EffectiveValueEntry& newEntry, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType)
	   at System.Windows.DependencyObject.SetValueCommon(DependencyProperty dp, Object value, PropertyMetadata metadata, Boolean coerceWithDeferredReference, Boolean coerceWithCurrentValue, OperationType operationType, Boolean isInternal)
	   at System.Windows.DependencyObject.SetValue(DependencyProperty dp, Object value)
	   at System.Windows.Data.BindingOperations.SetBinding(DependencyObject target, DependencyProperty dp, BindingBase binding)
	   at SAModManager.MainWindow.SetManagerBindings()
	   at SAModManager.MainWindow.SetBindings()
	   at SAModManager.MainWindow.MainWindowManager_Loaded(Object sender, RoutedEventArgs e)
	   at System.Threading.Tasks.Task.<>c.<ThrowAsync>b__128_0(Object state)
	   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
	   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
	   at System.Windows.Threading.DispatcherOperation.InvokeImpl()
	   at MS.Internal.CulturePreservingExecutionContext.CallbackWrapper(Object obj)
	   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
	--- End of stack trace from previous location ---
	   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
	   at MS.Internal.CulturePreservingExecutionContext.Run(CulturePreservingExecutionContext executionContext, ContextCallback callback, Object state)
	   at System.Windows.Threading.DispatcherOperation.Invoke()
	   at System.Windows.Threading.Dispatcher.ProcessQueue()
	   at System.Windows.Threading.Dispatcher.WndProcHook(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
	   at MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled)
	   at MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o)
	   at System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Int32 numArgs)
	   at System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Int32 numArgs, Delegate catchHandler)
	   at System.Windows.Threading.Dispatcher.LegacyInvokeImpl(DispatcherPriority priority, TimeSpan timeout, Delegate method, Object args, Int32 numArgs)
	   at MS.Win32.HwndSubclass.SubclassWndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam)
	   at MS.Win32.UnsafeNativeMethods.DispatchMessage(MSG& msg)
	   at System.Windows.Threading.Dispatcher.PushFrameImpl(DispatcherFrame frame)
	   at System.Windows.Application.RunDispatcher(Object ignore)
	   at System.Windows.Application.RunInternal(Window window)
	   at SAModManager.App.Main()

Open the game's folder, a window will pop up. Double-Click the 'mods' folder. Is the 'Patches.dat' file there? Also I'd move the mod loader folder outside the downloads folder, e.g. to the desktop.

Fixed it I think, idk what I did, but I moved the mod loader to saw main
folder, deleted the files (not the mods) in the saw mod folder and it
seemed to work, it was something wrong with the file itself.
On Thu, Aug 29, 2024, 7:12 AM ProximalElk6186 @.***>
wrote:

Open the game's folder, a window will pop up. Double-Click the 'mods'
folder. Is the 'Patches.dat' file there? Also I'd move the mod loader
folder outside the downloads folder, e.g. to the desktop.
—
Reply to this email directly, view it on GitHub
https://github.com/X-Hax/SA-Mod-Manager/issues/196#issuecomment-2317346279,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVJQ7TTHDJWU4F7Q6SGLPZDZT36YFAVCNFSM6AAAAABNHLIGL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMJXGM2DMMRXHE
.
You are receiving this because you authored the thread.Message ID:
@.***>

k

Sa2*
On Thu, Aug 29, 2024, 12:01 PM ProximalElk6186 @.***>
wrote:

k
—
Reply to this email directly, view it on GitHub
https://github.com/X-Hax/SA-Mod-Manager/issues/196#issuecomment-2318233945,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVJQ7TQONDCNMDB4V7EREOLZT5AWRAVCNFSM6AAAAABNHLIGL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGMJYGIZTGOJUGU
.
You are receiving this because you authored the thread.Message ID:
@.***>

This should hopefully be fixed in the last version. If your Manager isn't in a game folder and you have a mods folder with it (usually empty) you can delete it.

So there's an update to the manager?
On Thu, Oct 10, 2024, 12:38 PM Sora @.***> wrote:

This should hopefully be fixed in the last version. If your Manager isn't
in a game folder and you have a mods folder with it (usually empty) you
can delete it.
—
Reply to this email directly, view it on GitHub
https://github.com/X-Hax/SA-Mod-Manager/issues/196#issuecomment-2405579909,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVJQ7TQ5GG5UES55B5KMO23Z22UPLAVCNFSM6AAAAABNHLIGL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBVGU3TSOJQHE
.
You are receiving this because you authored the thread.Message ID:
@.***>

Yeah, ready for you to download it!
Чт, 10 окт. 2024 г. в 19:59, CosmicXIII @.***>:

So there's an update to the manager?
On Thu, Oct 10, 2024, 12:38 PM Sora @.***> wrote:

This should hopefully be fixed in the last version. If your Manager
isn't
in a game folder and you have a mods folder with it (usually empty) you
can delete it.
—
Reply to this email directly, view it on GitHub
<
https://github.com/X-Hax/SA-Mod-Manager/issues/196#issuecomment-2405579909>,

or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/AVJQ7TQ5GG5UES55B5KMO23Z22UPLAVCNFSM6AAAAABNHLIGL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBVGU3TSOJQHE>

.
You are receiving this because you authored the thread.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
https://github.com/X-Hax/SA-Mod-Manager/issues/196#issuecomment-2405622283,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A75Q2WD2F4YB5L76QOHSIPLZ22XABAVCNFSM6AAAAABNHLIGL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBVGYZDEMRYGM
.
You are receiving this because you commented.Message ID:
@.***>

Okay, feel like it's been months since my recent report about it.
I'll download it when my Internet is back on, cause I had to deal with
Hurricane Milton.
kozu1677, my discord.
On Thu, Oct 10, 2024, 1:21 PM ProximalElk6186 @.***>
wrote:

Yeah, ready for you to download it!
Чт, 10 окт. 2024 г. в 19:59, CosmicXIII @.***>:

So there's an update to the manager?
On Thu, Oct 10, 2024, 12:38 PM Sora @.***> wrote:

This should hopefully be fixed in the last version. If your Manager
isn't
in a game folder and you have a mods folder with it (usually empty)
you
can delete it.
—
Reply to this email directly, view it on GitHub
<

https://github.com/X-Hax/SA-Mod-Manager/issues/196#issuecomment-2405579909>,

or unsubscribe
<

https://github.com/notifications/unsubscribe-auth/AVJQ7TQ5GG5UES55B5KMO23Z22UPLAVCNFSM6AAAAABNHLIGL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBVGU3TSOJQHE>

.
You are receiving this because you authored the thread.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
<
https://github.com/X-Hax/SA-Mod-Manager/issues/196#issuecomment-2405622283>,

or unsubscribe
<
https://github.com/notifications/unsubscribe-auth/A75Q2WD2F4YB5L76QOHSIPLZ22XABAVCNFSM6AAAAABNHLIGL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBVGYZDEMRYGM>

.
You are receiving this because you commented.Message ID:
@.***>

—
Reply to this email directly, view it on GitHub
https://github.com/X-Hax/SA-Mod-Manager/issues/196#issuecomment-2405662325,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AVJQ7TSWXMHTWQDMOTXBZALZ22ZTDAVCNFSM6AAAAABNHLIGL2VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDIMBVGY3DEMZSGU
.
You are receiving this because you authored the thread.Message ID:
@.***>


[Excel] (Custom Functions) suggested changes to debugging

OPS Build status updates of commit 6f20718:
:clock10: Preparing: average preparing time is 44 sec(s)

OPS Build status updates of commit 6f20718:
:clock10: Incremental building: average incremental building time is 29 sec(s)

OPS Build status updates of commit 6f20718:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/excel/custom-functions-debugging.md
:white_check_mark:Succeeded

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.

OPS Build status updates of commit 21ea1a2:
:clock10: Preparing: average preparing time is 44 sec(s)

OPS Build status updates of commit 21ea1a2:
:clock10: Incremental building: average incremental building time is 29 sec(s)

OPS Build status updates of commit 21ea1a2:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/excel/custom-functions-debugging.md
:white_check_mark:Succeeded

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.

OPS Build status updates of commit ac9decc:
:clock10: Preparing: average preparing time is 44 sec(s)

OPS Build status updates of commit ac9decc:
:clock10: Incremental building: average incremental building time is 29 sec(s)

OPS Build status updates of commit ac9decc:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/excel/custom-functions-debugging.md
:white_check_mark:Succeeded

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.

OPS Build status updates of commit 55df385:
:clock10: Preparing: average preparing time is 44 sec(s)

OPS Build status updates of commit 55df385:
:clock10: Incremental building: average incremental building time is 29 sec(s)

OPS Build status updates of commit 55df385:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/excel/custom-functions-debugging.md
:white_check_mark:Succeeded

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.

OPS Build status updates of commit 0d3b845:
:clock10: Preparing: average preparing time is 44 sec(s)

OPS Build status updates of commit 0d3b845:
:clock10: Incremental building: average incremental building time is 29 sec(s)

OPS Build status updates of commit 0d3b845:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/excel/custom-functions-debugging.md
:white_check_mark:Succeeded

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.

OPS Build status updates of commit b2be6f6:
:clock10: Preparing: average preparing time is 44 sec(s)

OPS Build status updates of commit b2be6f6:
:clock10: Incremental building: average incremental building time is 29 sec(s)

OPS Build status updates of commit b2be6f6:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/excel/custom-functions-debugging.md
:white_check_mark:Succeeded

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.

OPS Build status updates of commit 1543eb5:
:clock10: Preparing: average preparing time is 44 sec(s)

OPS Build status updates of commit 1543eb5:
:clock10: Incremental building: average incremental building time is 29 sec(s)

OPS Build status updates of commit 1543eb5:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/excel/custom-functions-debugging.md
:white_check_mark:Succeeded

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.

OPS Build status updates of commit 1543eb5:
:clock10: Preparing: average preparing time is 44 sec(s)

OPS Build status updates of commit 1543eb5:
:clock10: Incremental building: average incremental building time is 29 sec(s)

OPS Build status updates of commit 1543eb5:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/excel/custom-functions-debugging.md
:white_check_mark:Succeeded

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.

@mscharlock Can this be merged now?

Yes, will do!


Inconsistent (Worse) Output with Separate Generation Calls

The bug
I'm experiencing inconsistent (worse) results when generating text in multiple separate calls versus a single continuous generation. Specifically, using repeated calls to gen or select leads to degraded output quality, compared to a single, unbroken call.
To Reproduce
Consider these two examples for a text cleaning/formatting task:
# Setup

from guidance import models, gen

model_name = "wassname/llama-3-2-1b-sft"
lm = models.Transformers(model_name)

# Example 1

input_msg = f"""
Clear up any formatting issues in this text:

Brinster, R. L., and Avarbock, M. R. (1994). Germline transmission of donor haplotype followingspermatogonial transplantation. Proc. Natl. Acad. Sci.USA 91, 11303–11307. doi:10.1073/pnas.91.24.11303 Brinster, R. L., and Zimmermann, J. W. (1994). Spermatogenesis following male germ-celltransplantation. Proc. Natl. Acad. Sci.USA 91, 11298–11302. doi:10.1073/pnas.

91.24.11298 Browning, L., Patel, M. R., Horvath, E. B., Tawara, K., and Jorcyk, C. L. (2018). IL-6 and ovarian cancer:inflammatory cytokines in promotion of metastasis. Cancer Manag.

Res. 5 (10), 6685–6693. doi:10.2147/CMAR.S179189 Cao, C., Zhao, J., Doughty, E. K., Migliorini, M., Strickland, D. K., Kann, M. G.,
et al. (2015). Mac-1 regulates IL-13 activity in macrophages by directly interacting with IL-13rα1. J. Biol. Chem. 290 (35), 21642–21651. doi:10.1074/
jbc.M115.645796 Cheng, J.-M., Tang, J.-X., Li, J., Wang, Y.-Q., Wang, -X.-X., Zhang, Y., et al. (2018).

Role of WNT signaling in epididymal sperm maturation. J. Assist. Reprod. Genet. 35, 229–236. doi:10.1007/s10815-017-1066-4

Cleaned up text:
"""

lm += input_msg
lm += gen("output", max_tokens=100)

This produces the following output:
Brinster, R. L., and Avarbock, M. R. (1994). Germline transmission of donor haplotype following permatogonial transplantation. Proc. Natl. Acad. Sci.USA 91, 11303–11307. doi:10.1073/pnas.91.24.11303

91.24.11303

Brinster, R. L., and Zimmermann, J. W. (

Now consider the same prompt but using a loop of shorter, nested completions for the same number of total tokens (50 x 2 rather than 100):
# Example 2

lm.reset()
lm += input_msg

for i in range(50):
    lm += gen("output", max_tokens=2, list_append=True)

Which produces:
Brinsterr, R. L., and Avarbok, M. R. (1994). Germline transmission of donor haplotype following permatogonial transplantation. Proc. Natl. Acad. Sci.USA 91, 11303–11307. doi:10.1073/pnas.91.24.11303

91.24.11298 Browning, L., Patel, M. R., Horvath, E.

I would expect the output from this to be equal to the first but surprisingly it diverges from the above in two respects:

The first word has an extra "r", which is weird
On the second line it starts producing "Browning" instead of the correct "Brinster"

Extra detail
This is one example of degraded performance which seems to occur whenever using multiple smaller generation calls rather than one unbroken call.
For context, our use case involves dynamically constraining the next possible tokens during generation to prevent drifting away from valid options in the input, using a pattern like:
for i in range(n):
    options = get_next_options()
    lm += select(options)

We saw degraded output with this pattern, which led us to start investigating this behaviour.
Questions

Is this behaviour expected when using multiple short generation calls instead of a single long one?
Could this be due to token boundary issues or token healing features, and is there a way to deactivate or work around it?
Are we misusing select in this context? What would be the intended approach for doing constrained decoding where the next possible options need to be dynamically updated as we progress through the generation?

System info (please complete the following information):

OS (Ubuntu)
Guidance Version: '0.1.16'

N.B. We've seen this degraded behaviour also with Llama 3.1 70B.
We'd be happy to help debug or improve this. Please let us know your thoughts. Thanks

Hi @cyclecycle,
Thanks for reporting this! I re-ran your example code on our main branch and it looks like it produces the exact same output now :). I suspect you caught a bug with our token healing logic that got fixed when we updated our parsing stack!
lm += input_msg
lm_manygen = lm
lm += gen("output", max_tokens=100, temperature=0)

# Example 2

for i in range(50):
    lm_manygen += gen("output", max_tokens=2, list_append=True, temperature=0)

Would you mind upgrading guidance and trying your tests again? Would be great to know if we still have lingering issues with this. I suspect it's likely fixed with our latest release candidate as well (pip install guidance --pre), but we will be doing a new release to PyPI soon from main branch either way.
-Harsha

Hi @Harsha-Nori,
I can confirm that after upgrading to latest release candidate the manygen output is now equal to singlegen on my side too.
I will keep going with the many consecutive select use case. I can see that the behaviour has changed but I will need to do more work to verify whether it is behaving well.
I will report back if I can share anything of interest.
Thanks for the your work and for the support. All the best

Closing for now, but feel free to re-open if you notice any further issues!


Fused multiply-subtract

The Simd type does have a fused multiply-add function, but I was looking for the fused-multiply subtract function and couldn't find it. For AVX2, it's the equivalent of _mm256_fmsub_ps and similar.

You can extend the Simd type yourself using std::arch in your own crates, or use a crate that does that like faster,simdeez, etc. The only intrinsics that we expose here are things that cannot be easily implemented on top of std::arch.
I don't see any good reason to provide this, as in, LLVM / libmvec / SVML / ... do not provide a portable implementation of this operation that would be hard to implement otherwise.

Thank you for your input. I discovered it's not necessary to use _mm256_fmsub anyway. Looking through the disassembly, it looks like LLVM automatically converts x.fma(y, -z) to the right fmsub instruction.

Oh! that's great news. I think we should document that then, so I am re-opening this until we update the docs. Thanks!


Adding Mip Installation instructions and package.json

Just adding instructions to use MIP

Thank you for the changes!


Copy message from other channel

Hi
Sorry,I have a question about your project(telegram).
Can I get the message channels that I'm not their admin?
I want write a script that read message from other chanel and write to
my chanel.
I can do it?
best regards
thanks

Yes

How can do it? please help me


Flask/ views.py

Much as the page is helpful there is however the unresolved issue of non-creation of 'views.py' file within Helloflask folder in the solution. could this be peculiar to VS 2018?

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

ID: 7542d51c-4ba4-db5d-cd34-4517779684a8
Version Independent ID: ef7b3a39-814e-9c56-c2e1-6611464aa650
Content: Learn Flask tutorial in Visual Studio step 1, Flask basics
Content Source: docs/python/learn-flask-visual-studio-step-01-project-solution.md
Product: visual-studio-windows
Technology: vs-python
GitHub Login: @JoshuaPartlow
Microsoft Alias: joshuapa

Hello - Step 2: Create a Flask app with views and page templates should walk through the creation of views.py. If this was referring to something else, please feel free to reopen.


Accordion: card-header border bottom hidden by card-body.

When an accordion element is open, the border bottom of the card-header element is hidden by the card-body element (in case of non-transparent background). See here the actual comportment : https://codepen.io/anon/pen/GzjNYL.
This behavior is due to this :
https://github.com/twbs/bootstrap/blob/e65dccfc95c04aba3de66d9880ad1e6852b659f2/scss/_card.scss#L286
This addition is due to those issues : #27124, #27108.
The bug reported here was the double border-bottom between the accordion elements when closed.
See the result when removing the rule over the margin-bottom : https://codepen.io/anon/pen/XOjNGz
Unfortunately the double border-bottom is back but the behavior of the card-header of an open element seems correct with a border-bottom.

Using the dark colors the latest codepen example is very hard to exam.
The border-bottom is shown on transparent background. Due to the negative margin, the border-bottom of .card-header is covered by .card-body.
By applying 'z-index:1' onto .card-header styling, the border-bottom appears again.

OP already said that this issue only occur in cases with with non-transparent backgrounds because of the negative margin .card-header.
Using z-index seems to do the job but i'm not sure if this is a cleanest way to fix it. No clear-cut opinion about it, just wondering since I think this should be fixed in Bootstrap project.


feat:[CX-1813] add trove to homepage

The type of this PR is: FEATURE

This PR resolves CX-1813
Description
This PR adds the Trove in the homepage into Eigen

Follow Up
This update requires adding the Trove into the app hero units in the CMS, for more details please click here 🔒

PR Checklist (tick all before merging)

[x] I have included screenshots or videos to illustrate my changes, or I have not changed anything that impacts the UI.
[x] I have tested my changes on iOS and Android.
[x] I have added tests for my changes, or my changes don't require testing, or I have included a link to a separate Jira ticket covering the tests.
[x] I have added a feature flag, or my changes don't require a feature flag. (How do I add one?)
[x] I have documented any follow-up work that this PR will require, or it does not require any.
[x] I have added an app state migration, or my changes do not require one. (What are migrations?)
[x] I have added a changelog entry below or my changes do not require one.

Changelog updates
Changelog updates

Cross-platform user-facing changes

Add Trove into Eigen - mrsltun

iOS user-facing changes

Android user-facing changes

Dev changes

This PR contains the following changes:

Cross-platform user-facing changes (Add Trove into Eigen - mrsltun)

  Generated by :no_entry_sign: dangerJS against 3698c476d2182946871ed6953595ccf9ecd7a374

thank you for the changes 🙌


Is vue-cli deprecated ?

What problem does this feature solve?
I like Vite, but we still need to use webpack base vue-cli in many production.
Vue-cli hasn't been updated for a long time, and there are some PRs and Issues here that are idle.
Is it deprecated ?
node 18 support
https://github.com/vuejs/vue-cli/issues/7116
feat: Refactor the ipc module.
https://github.com/vuejs/vue-cli/pull/7076
cli-service doesn't support webpack 5 devServer.server option which replaces devServer.https
https://github.com/vuejs/vue-cli/issues/7118
feat(cli-service): Support webpack5 devServer.server configuration
https://github.com/vuejs/vue-cli/pull/7024
Update postcss
https://github.com/vuejs/component-compiler-utils/issues/122
feat: add postcss 8 support
https://github.com/vuejs/component-compiler-utils/pull/121
What does the proposed API look like?
Solved some PRs and Issues that are idle for a long time.

Any progress?

I would also add the dicer/busboy security vulnerability found in the included apollo-server v2 https://github.com/vuejs/vue-cli/issues/7198
It looks like an upgrade to v3 is necessary.

@sodatea can you please give us an update on the current state of the new release?

I usually don't want to reply to this kind of requests, but here it is:

node 18 support #7116

Done

feat: Refactor the ipc module. #7076

Not urgent. Planned for 5.1. Won't release anytime soon.

cli-service doesn't support webpack 5 devServer.server option which replaces devServer.https #7118
feat(cli-service): Support webpack5 devServer.server configuration #7024

Will take a look. Likely to get into the next release.

Update postcss vuejs/component-compiler-utils#122
feat: add postcss 8 support vuejs/component-compiler-utils#121

No plan.

I would also add the dicer/busboy security vulnerability found in the included apollo-server v2 #7198 It looks like an upgrade to v3 is necessary.

Working on it.

node 18 support #7116

Done

Would it be possible to have a release for this one already?

@sodatea
I saw your efforts to make it run with Node 18 on versions >5, however for versions < 4 there's another issue.
I'am facing an issue with Node 18 with @vue/cli-plugin-unit-jest 4.5.19. It requires vue-jest ^3.0.5 that requires deasync which is not compatible with Node 18.
I think making cli-plugin-unit-jest compatible with vue-jest 4 would solve the issue
Is there a possibility to fix that?
Thanks


Error with binary search

I tried project yalov/cmake_min_test1 while downloading more versions of CMake.
First run:
./cmake_min_version.py ~/Downloads/cmake_min_test1/
Found 118 CMake binaries from directory tools

[  0%] CMake 3.11.3   ✔ works
[ 12%] CMake 3.4.1    ✘ error
[ 25%] CMake 3.8.2    ✔ works
[ 38%] CMake 3.6.1    ✘ error
[ 50%] CMake 3.7.1    ✘ error
[ 62%] CMake 3.8.0    ✔ works
[ 86%] CMake 3.7.2    ✘ error
[100%] Minimal working version: CMake 3.8.0

cmake_minimum_required(VERSION 3.8.0)

Second run:
./cmake_min_version.py ~/Downloads/cmake_min_test1/
Found 125 CMake binaries from directory tools

[  0%] CMake 3.12.2   ✔ works
[ 12%] CMake 3.4.3    ✘ error
[ 25%] CMake 3.9.2    ✘ error
[ 38%] CMake 3.10.3   ✔ works
[ 50%] CMake 3.9.6    ✔ works
[ 62%] CMake 3.9.4    ✔ works
[ 86%] CMake 3.9.3    ✘ error
[100%] Minimal working version: CMake 3.9.4

cmake_minimum_required(VERSION 3.9.4)

I need to check why CMake 3.9.3 failed here.

Interesting:
[ 83%] CMake 3.8.2    ✔ works
[ 83%] CMake 3.9.0    ✘ error
[ 83%] CMake 3.9.1    ✔ works
[ 84%] CMake 3.9.2    ✘ error
[ 84%] CMake 3.9.3    ✘ error

More output:
[ 83%] CMake 3.8.2    ✔ works
[ 83%] CMake 3.9.0    ✘ error
    Boost  found.
    Found Boost components:
       system;thread
    CMake Error in /Users/niels/Code/repositories/cmake_min_version/tools/cmake-3.9.0-Darwin-x86_64/CMake.app/Contents/share/cmake-3.9/Modules/FindBoost.cmake:
      cmake_policy PUSH without matching POP
    Call Stack (most recent call first):
      CMakeLists.txt:27 (find_package)

[ 83%] CMake 3.9.1    ✔ works
[ 84%] CMake 3.9.2    ✘ error
    Boost  found.
    Found Boost components:
       system;thread
    CMake Error in /Users/niels/Code/repositories/cmake_min_version/tools/cmake-3.9.2-Darwin-x86_64/CMake.app/Contents/share/cmake-3.9/Modules/FindBoost.cmake:
      cmake_policy POP without matching PUSH
    Call Stack (most recent call first):
      CMakeLists.txt:27 (find_package)

[ 84%] CMake 3.9.3    ✘ error
    Boost  found.
    Found Boost components:
       system;thread
    CMake Error in /Users/niels/Code/repositories/cmake_min_version/tools/cmake-3.9.3-Darwin-x86_64/CMake.app/Contents/share/cmake-3.9/Modules/FindBoost.cmake:
      cmake_policy POP without matching PUSH
    Call Stack (most recent call first):
      CMakeLists.txt:27 (find_package)

[ 84%] CMake 3.9.4    ✔ works

There seem to be a bug in CMake 3.9.0, 3.9.2, and 3.9.3 when it comes to Boost.

I leave this open as concept bug - the binary search assumes monotonous behavior; that is, if a project can be built by version x, then it should also be buildable with any higher version. This issue shows that this is not the case.

With #26, I changed the behavior of the full search to return the latest version such that this and all later version can successfully build the project.

Does the last cmake_min_test1 also have the same problems on 3.9.0, 3.9.2, and 3.9.3?
I replace lib names to autopath target_link_libraries(${PROJECT_NAME} PRIVATE ${Boost_LIBRARY_DIRS})

There are different problems now:
[  0%] CMake 3.16.1   ✔ works
[ 11%] CMake 3.8.2    ✘ error
       CMake Error at CMakeLists.txt:8 (message):
         CMAKE_PROJECT_VERSION is not defined

[ 22%] CMake 3.13.0   ✔ works
[ 33%] CMake 3.10.3   ✘ error
       CMake Error at CMakeLists.txt:8 (message):
         CMAKE_PROJECT_VERSION is not defined

[ 44%] CMake 3.11.4   ✘ error
       CMake Error at CMakeLists.txt:8 (message):
         CMAKE_PROJECT_VERSION is not defined

[ 56%] CMake 3.12.2   ✔ works
[ 75%] CMake 3.12.0   ✔ works
[100%] Minimal working version: CMake 3.12.0

cmake_minimum_required(VERSION 3.12.0)


<script in a comment disables linting of js file

if any comment in a js file contains text: <script, lint will stop showing issues for the whole file

We just run the linter and read its output, so this is probably an issue with the linter program itself. IF you want us to investigate further, please re-open and add full debug logs.


I can't create Kinesis firerhose

Hi, I have a trouble with studying ElasticSearch Workshop.
https://github.com/aws-samples/amazon-elasticsearch-intro-workshop/blob/master/en/lab1/README.md
According to this document, it should be successful to create kinesis firehorse with ElasticSearch. I don't understand why this error happened. I also changed the access policy for workshop-esdomain into" Allow open access to the domain" but it didn't work.
Error message is here :
Error
Verify that the IAM role has access to the Elasticsearch domain: arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain
I have been looking at the error below all day long. What did I miss in the workshop? Besides, in the workshop, there is no explanation of type, But I should enter the type(What is it?).
I also attached the json policy of firehorse:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Action": [
"s3:AbortMultipartUpload",
"s3:GetBucketLocation",
"s3:GetObject",
"s3:ListBucket",
"s3:ListBucketMultipartUploads",
"s3:PutObject"
],
"Resource": [
"arn:aws:s3:::workshop-firehose-backup-20210719-heungh",
"arn:aws:s3:::workshop-firehose-backup-20210719-heungh/"
]
},
{
"Sid": "",
"Effect": "Allow",
"Action": [
"lambda:InvokeFunction",
"lambda:GetFunctionConfiguration"
],
"Resource": "arn:aws:lambda:us-east-1:181136804328:function:%FIREHOSE_POLICY_TEMPLATE_PLACEHOLDER%"
},
{
"Effect": "Allow",
"Action": [
"kms:GenerateDataKey",
"kms:Decrypt"
],
"Resource": [
"arn:aws:kms:us-east-1:181136804328:key/%FIREHOSE_POLICY_TEMPLATE_PLACEHOLDER%"
],
"Condition": {
"StringEquals": {
"kms:ViaService": "s3.us-east-1.amazonaws.com"
},
"StringLike": {
"kms:EncryptionContext:aws:s3:arn": [
"arn:aws:s3:::%FIREHOSE_POLICY_TEMPLATE_PLACEHOLDER%/"
]
}
}
},
{
"Sid": "",
"Effect": "Allow",
"Action": [
"ec2:DescribeVpcs",
"ec2:DescribeVpcAttribute",
"ec2:DescribeSubnets",
"ec2:DescribeSecurityGroups",
"ec2:DescribeNetworkInterfaces",
"ec2:CreateNetworkInterface",
"ec2:CreateNetworkInterfacePermission",
"ec2:DeleteNetworkInterface"
],
"Resource": ""
},
{
"Sid": "",
"Effect": "Allow",
"Action": [
"es:DescribeElasticsearchDomain",
"es:DescribeElasticsearchDomains",
"es:DescribeElasticsearchDomainConfig",
"es:ESHttpPost",
"es:ESHttpPut"
],
"Resource": [
"arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain",
"arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain/"
]
},
{
"Sid": "",
"Effect": "Allow",
"Action": [
"es:ESHttpGet"
],
"Resource": [
"arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain/_all/_settings",
"arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain/_cluster/stats",
"arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain/workshop-log/_mapping/100",
"arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain/_nodes",
"arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain/_nodes//stats",
"arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain/_stats",
"arn:aws:es:us-east-1:181136804328:domain/workshop-esdomain/workshop-log/_stats"
]
},
{
"Sid": "",
"Effect": "Allow",
"Action": [
"logs:PutLogEvents"
],
"Resource": [
"arn:aws:logs:us-east-1:181136804328:log-group:/aws/kinesisfirehose/workshop-firehose:log-stream:"
]
},
{
"Sid": "",
"Effect": "Allow",
"Action": [
"kinesis:DescribeStream",
"kinesis:GetShardIterator",
"kinesis:GetRecords",
"kinesis:ListShards"
],
"Resource": "arn:aws:kinesis:us-east-1:181136804328:stream/%FIREHOSE_POLICY_TEMPLATE_PLACEHOLDER%"
},
{
"Effect": "Allow",
"Action": [
"kms:Decrypt"
],
"Resource": [
"arn:aws:kms:us-east-1:181136804328:key/%FIREHOSE_POLICY_TEMPLATE_PLACEHOLDER%"
],
"Condition": {
"StringEquals": {
"kms:ViaService": "kinesis.us-east-1.amazonaws.com"
},
"StringLike": {
"kms:EncryptionContext:aws:kinesis:arn": "arn:aws:kinesis:us-east-1:181136804328:stream/%FIREHOSE_POLICY_TEMPLATE_PLACEHOLDER%"
}
}
}
]
}

I made the elasticsearch as version 7.0 and then created the firehorse successfully.  With v 6.8, I failed to create the firerhorse several time and edited the iam role to allow all actions like "es:*" but couldn't make it eventually.
However I made es as version 5.6 and 7.0 and could create the kinesis firehorse successfully.  And es version 5.6 couldn't show the kibana dashboard with the error message.  I managed to make the firehorse and nearly finished the lab 3.  It will be better to review all processs of this workshop and check if there are some errors while following the process in the labs. :(

Thank you for your feedback to create Kinesis Data Firehose delivery streams with Amazon ES 6.8 destination. I've reproduced on my end if Amazon ES version is 6.8 and the issue doesn't occur if ES version is 7.x. If you use ES 6.8 for the workshop, you need to map IAM role of a delivery stream to ES role. It looks version-specific issue between Amazon ES and Kinesis Data Firehose.
https://github.com/aws-samples/amazon-elasticsearch-intro-workshop/tree/master/en/lab1#creating-an-amazon-es-role
"type" means mapping type for Elasticsearch. It's deprecated from Elasticsearch 7.0. Please read these guides for more details.

https://docs.aws.amazon.com/firehose/latest/dev/create-destination.html#create-destination-elasticsearch
https://www.elastic.co/guide/en/elasticsearch/reference/current/removal-of-types.html

Sorry for inconvenience. This workshop focuses on latest Amazon ES version, please use latest Amazon ES version for the workshop.
We will improve the content. If you have any concerns, please let us know.

Thank you for the answer. It is really helpful!   Have a great day!!


[Bug] the button group is losing out on theme after conversion from fixed to auto

https://www.loom.com/share/181271277c934718b25d8ed377c9c6b0

completed through, https://github.com/appsmithorg/appsmith/pull/22968


Jest: TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined

When testing using Jest, I receive the following error when running babel.transform. I am using the test code defined in the README of this plugin.
import myImportedQuery from "./queries/productsQuery.graphql";

TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received undefined

      at defaultResolve (node_modules/babel-plugin-import-graphql/build/requireGql.js:33:50)
      at PluginPass.exit (node_modules/babel-plugin-import-graphql/build/index.js:73:27)
      at newFn (node_modules/@babel/traverse/lib/visitors.js:177:21)
      at NodePath._call (node_modules/@babel/traverse/lib/path/context.js:53:20)
      at NodePath.call (node_modules/@babel/traverse/lib/path/context.js:40:17)
      at NodePath.visit (node_modules/@babel/traverse/lib/path/context.js:99:8)
      at TraversalContext.visitQueue (node_modules/@babel/traverse/lib/context.js:103:16)

I have put together the simplest possible reproduction of this here: https://github.com/shaneog/babel-transform-graphql-example
$ node --version
v14.18.1
$ npm --version
6.14.15

When Babel is run manually (npx babel test/fixtures --out-dir dist)  the code is transpiled correctly (formatted for ease of viewing):

Click to see the formatted, transpiled JS
var myImportedQuery = {
  kind: "Document",
  definitions: [
    {
      kind: "OperationDefinition",
      operation: "query",
      name: { kind: "Name", value: "products" },
      variableDefinitions: [],
      directives: [],
      selectionSet: {
        kind: "SelectionSet",
        selections: [
          {
            kind: "Field",
            name: { kind: "Name", value: "products" },
            arguments: [],
            directives: [],
            selectionSet: {
              kind: "SelectionSet",
              selections: [
                {
                  kind: "Field",
                  name: { kind: "Name", value: "productId" },
                  arguments: [],
                  directives: [],
                },
                {
                  kind: "FragmentSpread",
                  name: { kind: "Name", value: "productFragment" },
                  directives: [],
                },
              ],
            },
          },
        ],
      },
    },
    {
      kind: "FragmentDefinition",
      name: { kind: "Name", value: "productFragment" },
      typeCondition: {
        kind: "NamedType",
        name: { kind: "Name", value: "Product" },
      },
      directives: [],
      selectionSet: {
        kind: "SelectionSet",
        selections: [
          {
            kind: "Field",
            name: { kind: "Name", value: "name" },
            arguments: [],
            directives: [],
          },
          {
            kind: "Field",
            name: { kind: "Name", value: "description" },
            arguments: [],
            directives: [],
          },
          {
            kind: "Field",
            name: { kind: "Name", value: "weight" },
            arguments: [],
            directives: [],
          },
        ],
      },
    },
  ],
  loc: {
    start: 0,
    end: 109,
    source: {
      body: '#import "./productFragment.graphql"\nquery products {\n  products {\n    productId\n    ...productFragment\n  }\n}\n',
      name: "GraphQL request",
      locationOffset: { line: 1, column: 1 },
    },
  },
};

This bug seems to be similar to #79.

I am getting similar issue after upgrading react-native to 0.69.5 and babel "^7.18.6",


Just to do my part.

Despite all of the shortcomings I know I'm pestering you guys with :)
I just want to let you know I'm actually very appreciative of everything you guys have been working so hard to achieve. ;D
So in this brief instance of time
I want to take a deep moment to say
Thank you all for all of your hard work!
I hope you all continue to give us your best
and provide us with the best decentralized video platform possible :+1:
I personally couldn't ask for better
and hope you'll all continue to work to make great strides for the better: :D

Move from Bitcoin for more freedom with security on Monero
Move from Microsoft GitHub for more freedom with security on GitLab, Gitea, or IPFS
Move from Discord for more freedom with security on Matrix
Move from Google Electron for more security in C/OpenGL

Thank you all for everything!

Thanks for the feedback and support, I've passed it onto the team!


"matrix contains invalid numeric entries"在训练SparseNet网络时,训练几轮就报错.

Thanks for your error report and we appreciate it a lot.
Checklist
1.我看到说这个是loss为nan的情况.所以我降低了学习率,但是仍然报错. 而且数据集在YOLOX上可以训练.
2. I have read the FAQ documentation but cannot get the expected help.

more details are needed. Please use the issue template.


changed background of contact us section

issue #79
https://user-images.githubusercontent.com/94471189/194225132-e47d28b8-ce5b-42f3-8bcb-5d2a5ace8cdc.mp4

Looks good, does it works properly for mobiles too ?

yes


Explain classmethod behavior.

Fix #63

@supadrupa, please review

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

1.0.1
GitHub release

Your semantic-release bot :package::rocket:


Streamlit Tasks status broken

Description
This is the same issue as this I don't think I have to explain this issue again #460
Steps to Reproduce the Bug
Go to tasks and start it
Expected Behavior
Show if the agent is running or stopped and completed the task
Actual Behavior
Doesn't update the status of the agent
Additional Context / Screenshots
No response
Operating System

[X] Microsoft Windows
[ ] Apple MacOS
[X] Linux
[X] Android
[ ] iOS
[ ] Other

Python Version

[ ] Python <= 3.9
[X] Python 3.10
[ ] Python 3.11

Environment Type - Connection

[X] Local
[X] Remote

Environment Type - Container

[X] Using Docker
[X] Not Using Docker

Acknowledgements

[X] My issue title is concise, descriptive, and in title casing.
[X] I have searched the existing issues to make sure this bug has not been reported yet.
[X] I am using the latest version of AGiXT.
[X] I have provided enough information for the maintainers to reproduce and diagnose the issue.

Here's some instructions to fix this issue https://app.cognosys.ai/s/fXNR960 feel free anyone to test with these suggested fixes.

Tasks converted to chain, no longer relevant.


LuisRecognizer not identifing the matching intents in node sdk, with base luis model url.

Node Sdk<EMAIL_ADDRESS>In Node when we initialize the LuisRecognizer with Luis model root url.
_https://api.projectoxford.ai/luis/v2.0/apps/#######?subscription-key=$$$$$$_
LuisRecognizer wouldn't identify the triggered intend.
Note: If you check it in Luis model(website) under suggest tab we can understand that luis able to predict an intent.
Solution: We need append &verbose=true to make it work. But this isn't documented.
check this example from documentation which is using the base url only.

Explanation
Issue: But the Node sdk will failed to identify the triggered intent.
RootCause:
The luis model base api url won't return matched intent, if we didn't add the url parameter &verbose=true, but the sdk depends on the intent key.
Suggestion: I think this should be handled in sdk while hitting the url using LuisRecognizer here
Code Instpection:
I have gone through the node library file of botbuilder.
And found this function LuisRecognizer.recognize which will use the model url to get the matching intent from Luis model.
But here is the tricky part,
With base url https://api.projectoxford.ai/luis/v2.0/apps/#######?subscription-key=$$$$$$
the json result will only give like
{
    "query": "testing",
    "topScoringIntent": {
        "intent": "testIntent",
        "score": 0.915711462
    },
    "entities": []
}

Note: The resulting data have topScoringIntent key, but not intents.
which is necessary to identify the matched intent.
With &verbose=true parameter in Luis Base Url the result will have the all intents under intents
{
    "query": "testing",
    "topScoringIntent": {
        "intent": "testIntent",
        "score": 0.8551611
    },
    "intents":[
        {
            "intent": "testIntent",
            "score": 0.8551611
        },
        {
            "intent": "None",
            "score": 0.189783931
        }
],
    "entities": []
}

There by the Louis Recognizer will be able to identify the intents from the api result.
Conclusion: I think this should be handled in sdk just like here in LuisRecognizer,
We need to check for the availability of verbose=true parameter.

This needs to be documented, I had to spent some time to understand why my model was not recognizing intents before realizing that I had to append verbose=true

Since its a dependency from NodeJs SDK. I hope it can easily be encapsulated in LuisRecognizer.recognize with simple check.
I have tried the same in C#, It works fine there.(Where LUIS app id and subscription key will be the intialization params)

Hi,
I tried with #verbose=true added at the end, but I get error "Resource not found". when I add query parameter "q=all" then I get response in browser.
However, my bot is not able to recoginze the intents.
Regards,
Magesh
ar bot = new builder.UniversalBot(connector);
var model = "https://westus.api.cognitive.microsoft.com/luis/v2.0/apps/48b1f2d5-586a-4f14-be06-ddb6033cee1c?subscription-key=52370ce4faf148f780bd1ea8b1336fbb&verbose=true&q=all";
var recognizer = new builder.LuisRecognizer(model);
var intents = new builder.IntentDialog({ recoginzers : [recognizer]});
console.log (intents);


resource: html forms

getting a 404 when trying to open the .html files through the course website:
http://education.launchcode.org/cs50x-stlouis/calendar/cs50/unit3-web/module6/materials/resources/html-forms/

Hmm yeah, looks like couscous actually deletes any additional html files we try to make. So annoying.
I guess let's just do the standard markdown workaround. I would have preferred to give them actual html here.
@digshake remind me tomorrow to ask you about this


Mongoose Traveller 2E - Minor typo in non-breaking space

Submission Checklist
Required

[x] The pull request title clearly contains the name of the sheet I am editing.
[x] The pull request title clearly states the type of change I am submitting (New Sheet/New Feature/Bugfix/etc.).
[x] The pull request makes changes to files in only one sub-folder.
[x] The pull request does not contain changes to any json files in the translations folder (translation.json is permitted)

New Sheet Details

The name of this game is: <   >  (i.e. Dungeons & Dragons 5th Edition, The Dresden Files RPG)

The publisher of this game is: <   > (i.e. Wizards of the Coast, Evil Hat)

The name of this game system/family is: <   > (i.e. Dungeons & Dragons, FATE)

[x] I have followed the Character Sheets Standards when building this sheet.

[ ] This sheet has been made on behalf of, or by, the game's publisher.
[ ] This game is not a traditionally published game, but a copy of the game rules can be purchased/downloaded/found at: <   >
[x] This sheet is for an unofficial fan game, modification to an existing game, or a homebrew system.

Changes / Description

Removed errant nbsp on options checkbox
Added skill speciality into new roll templates

Character Sheet Info Roll20 Internal Use only.

Hey @brookesi
  All looks good here, just double checking - you mentioned adding skill specialty into roll templates in your Changes/Description here, but I'm not seeing that in the code.  Was that left out intentionally?

Hi Lucas,
Umm...thats odd...
Line 5058 should have:
{{skill}}: {{spec}}
I added the {{spec}} item...is that not there?
Thanks,Si
    On Thursday, 25 January 2024 at 21:05:16 GMT, Lucas Hall<EMAIL_ADDRESS>wrote:
Hey @brookesi
All looks good here, just double checking - you mentioned adding skill specialty into roll templates in your Changes/Description here, but I'm not seeing that in the code. Was that left out intentionally?
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

Hi there, I've forced another commit, should be there now, might not have pushed the change...

There were two commits in this pull request...second should have had the addition of {{spec}} at line 5058...

Yep, I see it now as well!
Merging, thanks!


revisit docker-compose version of SMILE still works or not

see if it still works with the latest version
low priority

This has been addressed.


Module hangs on _get_methods()

Module hangs on _get_methods()
I have Arduino UNO R3 with HDC1080 sensor, code:
#include <simpleRPC.h>
#include <Wire.h>
#include "ClosedCube_HDC1080.h"

HardwareSerialIO io;
ClosedCube_HDC1080 hdc1080;

double readTemperature(void) {
  return hdc1080.readTemperature();
}

double readHumidity(void) {
  return hdc1080.readHumidity();
}

void setup(void) {
  Serial.begin(9600);
  io.begin(Serial);
  hdc1080.begin(0x40);
}

void loop(void) {
  interface(
    io,
    readTemperature, F("readTemperature: Read temperature from hdc1080 sensor. @return: double."),
    readHumidity, F("readHumidity: Read humidity from hdc1080 sensor. @return: double."));
}

Module hangs when I trying to get instance of interface('/dev/ttyACM0'). When I pressed Ctrl + C:
>>> from simple_rpc import Interface
>>> interface = Interface('/dev/ttyACM0')
^CTraceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/home/stark/tmp/arduino/venv/lib/python3.8/site-packages/simple_rpc/simple_rpc.py", line 37, in __init__
    self.open()
  File "/home/stark/tmp/arduino/venv/lib/python3.8/site-packages/simple_rpc/simple_rpc.py", line 117, in open
    self.methods = self._get_methods()
  File "/home/stark/tmp/arduino/venv/lib/python3.8/site-packages/simple_rpc/simple_rpc.py", line 81, in _get_methods
    if self._read_byte_string() != _protocol:
  File "/home/stark/tmp/arduino/venv/lib/python3.8/site-packages/simple_rpc/simple_rpc.py", line 62, in _read_byte_string
    return read_byte_string(self._connection)
  File "/home/stark/tmp/arduino/venv/lib/python3.8/site-packages/simple_rpc/io.py", line 98, in read_byte_string
    return _read_bytes_until(stream, _end_of_string)
  File "/home/stark/tmp/arduino/venv/lib/python3.8/site-packages/simple_rpc/io.py", line 18, in _read_bytes_until
    char = stream.read(1)
  File "/home/stark/tmp/arduino/venv/lib/python3.8/site-packages/serial/serialposix.py", line 565, in read
    ready, _, _ = select.select([self.fd, self.pipe_abort_read_r], [], [], timeout.time_left())
KeyboardInterrupt

To Reproduce
Steps to reproduce the behaviour:

Open python console
Import Interface from simple_rpc
Create Interface instance
It hangs

Expected behavior
It creates interface instance
Screenshots

Desktop (please complete the following information):

OS: Arch Linux
simpleRPC 3.1.0
Python 3.8.6
arduino-simple-rpc==2.0.1
configparser==5.0.1
pyserial==3.5

Additional context
I get interface instance if I try again after Ctrl + C

This may have something to do with this issue. Could you try to set an initialisation delay? E.g.,
interface = Interface('/dev/ttyACM0', wait=2)

Oh, thanks, it works


Shapely 1.8 and get_namespace_view spyder call raising deprecation warning

First off, thanks to every contributor on this ide, hard to describe how much I appreciate the work done on it. This is my first issue raised here, and it's relatively minor:
Problem Description
Shapely 1.8 and greater --> get_namespace_view triggering Shapely deprecation warning. This is just an annoying warning at the moment but I expect when 2.0 is released this will require remedy.
What steps reproduce the problem?

creation of a shapely geometry instance
rendering it on screen

Example/Traceback
from shapely.ops import polygonize
from shapely.geometry import MultiLineString, LineString
l1 = LineString([(1,1),(2,2),(2,0),(1,1)])
l2 = LineString([(0,0),(1,1),(1,0),(0,0)])
m = MultiLineString(lines=[l1,l2])

Gives:

or for the multiline:

Versions

Spyder version: 5.1.5
Python version: 3.7.10
Qt version: 5.12.9
PyQt version: 5.12.3
Operating System name/version: Windows 10

Dependencies
Shapely 1.8

Hi @gmerritt123 thank you for the feedback! I think we will need to do some validations (maybe validating if the value has an geoms before trying to get the length with len) on spyder-kernels. We will check this in a future release :+1:
Should we move this to spyder-kernels @ccordoba12 ?

I think we will need to do some validations (maybe validating if the value has an geoms before trying to get the length with len)

I think the simplest thing we can do is to disable deprecation warnings for code we run in the kernel, not inside it (like get_namespace_view).

Should we move this to spyder-kernels @ccordoba12 ?

Yes, this needs to be solved in spyder-kernels. Thanks for asking @dalthviz!

I think the simplest thing we can do is to disable deprecation warnings for code we run in the kernel, not inside it (like get_namespace_view).

But then things can break/felt into an unsupported state without any one noticing it, no?

Note that these warnings are printed for as long as a shapely multi-geometry is in the namespace. It doesn't have to be printed to screen or anything.
from shapely.geometry import Polygon, MultiPolygon

t1 = Polygon(((1, 2), (3, 4), (5, 6)))

t2 = Polygon(((7, 8), (9, 0), (1, 2)))

mp = MultiPolygon((t1, t2))

Output from spyder call 'get_namespace_view':
/home/lukas/anaconda3/envs/tf_gpu/lib/python3.9/site-packages/spyder_kernels/utils/nsview.py:108: ShapelyDeprecationWarning: __len__ for multi-part geometries is deprecated and will be removed in Shapely 2.0. Check the length of the `geoms` property instead to get the  number of parts of a multi-part geometry.
  return len(item)

Output from spyder call 'get_var_properties':
/home/lukas/anaconda3/envs/tf_gpu/lib/python3.9/site-packages/spyder_kernels/console/kernel.py:615: ShapelyDeprecationWarning: __len__ for multi-part geometries is deprecated and will be removed in Shapely 2.0. Check the length of the `geoms` property instead to get the  number of parts of a multi-part geometry.
  return len(var)

print("hi")
hi

Output from spyder call 'get_namespace_view':
/home/lukas/anaconda3/envs/tf_gpu/lib/python3.9/site-packages/spyder_kernels/utils/nsview.py:108: ShapelyDeprecationWarning: __len__ for multi-part geometries is deprecated and will be removed in Shapely 2.0. Check the length of the `geoms` property instead to get the  number of parts of a multi-part geometry.
  return len(item)

Output from spyder call 'get_var_properties':
/home/lukas/anaconda3/envs/tf_gpu/lib/python3.9/site-packages/spyder_kernels/console/kernel.py:615: ShapelyDeprecationWarning: __len__ for multi-part geometries is deprecated and will be removed in Shapely 2.0. Check the length of the `geoms` property instead to get the  number of parts of a multi-part geometry.
  return len(var)

del mp

print("hi")
hi

print("hi")
hi


peer dependencies

Bug
npm install
npm WARN<EMAIL_ADDRESS>requires a peer of<EMAIL_ADDRESS>but none is installed. You must install peer dependencies yourself.

Environment info
package versions:

"@react-native-community/art": "^1.0.1",
"react": "16.8.6",
"react-native": "0.60.5",

Steps To Reproduce
npm install
Describe what you expected to happen:
no warnings. Why I should install RN 0.59 AND 0.60?

On my side I got:
warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>
Environment info

"react": "16.9.0",
"react-native": "0.61.2",

When I opened the simulator, instead of the ART graph - a blank screen.
I'll try to rise the PR to fix it.


Not work when browse not support requestAnimationFrame.

I find the init() just return when not support requestAnimationFrame, but the default browser of a China's popular phone brand called Meizu not support requestAnimationFrame. I've notified them about this, but they may take a while to debug and fix this.
So, I think the plugin can make a little change by using setTimeout as a fallback?

Just include a requestAnimationFrame polyfill and it should then work fine. The docs cover this :)


Video isn't playing from local file system on android 9

Bug
It works on other androids (at least more than version 9).
Playing mp4 from URI works but it doesn't work from a local file.
it throws buffering event as true but it is being stuck there.
on iOS it works perfectly and other android versions.

Platform

Which player are you experiencing the problem on:

Android

Environment info

React native info output:
System:
    OS: macOS 12.4
    CPU: (10) arm64 Apple M1 Pro
    Memory: 116.45 MB / 16.00 GB
    Shell: 5.8.1 - /bin/zsh
  Binaries:
    Node: 16.15.1 - /opt/homebrew/opt/node@16/bin/node
    Yarn: 1.22.19 - /opt/homebrew/bin/yarn
    npm: 8.11.0 - /opt/homebrew/opt/node@16/bin/npm
    Watchman: 2<IP_ADDRESS> - /opt/homebrew/bin/watchman
  Managers:
    CocoaPods: 1.11.3 - /opt/homebrew/bin/pod
  SDKs:
    iOS SDK:
      Platforms: DriverKit 21.4, iOS 15.5, macOS 12.3, tvOS 15.4, watchOS 8.5
    Android SDK: Not Found
  IDEs:
    Android Studio: 2021.2 AI-212.5712.43.2112.8512546
    Xcode: 13.4.1/13F100 - /usr/bin/xcodebuild
  Languages:
    Java: 11.0.15 - /usr/bin/javac
  npmPackages:
    @react-native-community/cli: Not Found
    react: 17.0.2 => 17.0.2
    react-native: 0.68.2 => 0.68.2
    react-native-macos: Not Found
  npmGlobalPackages:
    *react-native*: Not Found

Library version: right now I'm using 6.0.0-alpha.1 but I tried with 5.2.0 too
Steps To Reproduce
try to play video on android 9 from local file system
Expected behaviour
it should play the video
Reproducible sample code
<Video
  source={require('../../../assets/videos/onboarding-video.mp4')}
  controls={true
/>

Video sample

closing, somehow mp4 file had problem and wasn't working on some files


expires_in issue at Rails.cache.increment

I've a strange issue, sometime it works, sometimes not, example:
    time_to_expire = (Time.now.end_of_day - Time.now).floor.seconds
    limit                = 50

    if Rails.cache.increment(:"user:#{current_user.id}:messages:count", 1, {:expires_in => time_to_expire}) > limit
      raise CanCan::AccessDenied.new("Without limit!", :limit_to, type)
    end

I have some users with 3 days cache without reset its increment key...

@maxguzenski If I'm understanding the issue correctly, your TTL doesn't appear to be behaving as expected - you're setting a TTL of less than a day and you see long lived entries.
There is a bug in this code which may be causing the issue - in some cases the time_to_expire value can be 0, which is a 'never expire' entry.  Depending on how frequently the messages count is getting hit, this may be the source of the observed problem.
As this is an old issue that never got any follow up, I'm going to close.  Please reopen if you're still seeing the same problem on a recent version of Dalli.
Thanks.


volume control

From the looks of it, this project is purposely barebones. You can check out codelab write up which complements this project and helps you add conversation support! I've linked to the exact page: https://codelabs.developers.google.com/codelabs/androidthings-assistant/index.html?index=..%2F..%2Findex#4

This feature should also support SharedPreferences so that the volume remains at the desired level even after a power cycle.

Close pls

Fixed with 712ec30996b689508c3c7aacb3508e0bdb5f34c6


Slack configuration

Based on this readme file's sentence: When launching the application, it will notify public URL to the Slack.
Im expecting the Slack bot to drop a line in the channel, once bot is restarted.
Is my assumption a wrong one?
This is not happening for me, while at the same time, using curl, I was able to send out messags to the channel, which means my webhooks are working.
Grepping logs for slack, returns nothing.
My config syntax values (.env) regarding Slack, are as follows (I spooed the id of the channel - just to showcase the format and make sure that is the correct one):
## Slack
BINANCE_SLACK_WEBHOOK_URL=https://hooks.slack.com/services/T01TEVPF/B01TV2A/8LajzeAP4K79iGZi4D
BINANCE_SLACK_CHANNEL="#general"
BINANCE_SLACK_USERNAME=bot

Please advise.

FYI, remove your slack address as anyone can send message

I've spoofed it by removing characters from the original URL.

I just tested your slack webhook url.
curl -X POST -H 'Content-type: application/json' --data '{"text":"Hello, World!"}' https://hooks.slack.com/services/T01TEVPF/B01TV2A/8LajzeAP4K79iGZi4D
no_team⏎

Error no_team https://api.slack.com/messaging/webhooks#:~:text=no_team means the Slack workspace,was either invalid or missing.
no_team means the Slack workspace was either missing or invalid.

I've spoofed it by removing characters from the original URL.

Oh good well done.
Try to test with
curl -X POST -H 'Content-type: application/json' --data '{"text":"Hello, World!"}' <Webhook URL>

And if the public URL is the same, then the bot won't send you a message as it assumes already notified.
Try to change the public URL and restart it.

That happens because I removed characters from the URL, in order to post it here publicly.
Here are my tests:

Changed workspace URL didnt help. No other messages except my curl post arrive at the channel.

Is it possible slack configuration disabled?
By default, it is disabled - https://github.com/chrisleekr/binance-trading-bot/blob/master/config/default.json#L25
"slack": {
    "enabled": {
     "__name": "BINANCE_SLACK_ENABLED",
      "__format": "boolean"
    },
    "webhookUrl": "BINANCE_SLACK_WEBHOOK_URL",
    "channel": "BINANCE_SLACK_CHANNEL",
    "username": "BINANCE_SLACK_USERNAME"
  },

Try to add the below configuration into the docker compose file.
BINANCE_SLACK_ENABLED=true

Seems on:

Ok let's do hardcore way.
$ docker exec -it binance-bot /bin/ash
/srv # node ./app/scripts/slack-test.js

Check the log message whether it throws any notable error.

Hmm..
Looks that it ignores my config:
{"name":"binance-api","version":"0.0.65","hostname":"XXXXXXXXXXX","pid":52,"level":30,"slackConfig":{**"enabled":false,"webhookUrl":"","channel":"","username":""**},"msg":"Slack config","time":"2021-04-07T13:19:35.348Z","v":0}

Errr.... when you set below, which file did you put?
## Slack
BINANCE_SLACK_WEBHOOK_URL=https://hooks.slack.com/services/T01TEVPF/B01TV2A/8LajzeAP4K79iGZi4D
BINANCE_SLACK_CHANNEL="#general"
BINANCE_SLACK_USERNAME=bot

In both .env and .env.dist
I've now added them at config.json inside /config/ folder and restarted the bot - still no luck.

Its now shown as enabled, however, no notifications are coming:
root@binancebot:~/binance-trading-bot# docker exec -it binance-bot /bin/ash
/srv # node ./app/scripts/slack-test.js
{"name":"binance-api","version":"0.0.65","hostname":"26300d5eda08","pid":52,"level":30,"msg":"API logger loaded","time":"2021-04-07T13:26:54.628Z","v":0}
{"name":"binance-api","version":"0.0.65","hostname":"26300d5eda08","pid":52,"level":30,"slackConfig":{"enabled":true,"webhookUrl":"","channel":"","username":""},"msg":"Slack config","time":"2021-04-07T13:26:55.218Z","v":0}
(node:52) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'replace' of null
    at dispatchHttpRequest (/srv/node_modules/axios/lib/adapters/http.js:109:74)
    at new Promise (<anonymous>)
    at httpAdapter (/srv/node_modules/axios/lib/adapters/http.js:46:10)
    at dispatchRequest (/srv/node_modules/axios/lib/core/dispatchRequest.js:52:10)
    at processTicksAndRejections (internal/process/task_queues.js:93:5)
    at async /srv/app/scripts/slack-test.js:10:18
(Use `node --trace-warnings ...` to show where the warning was created)
(node:52) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 3)
(node:52) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

Doesn't make any sense. Something must be misconfigured.
"webhookUrl":"","channel":"","username":""
Webhook URL and other configurations are not configured correctly.
You don't need to put in .env.dist as it is just a skeleton environment parameter.
You don't need to put in config.json as it will be overridden by the environment parameter defined in custom-environment-variables.json
Assuming you are using docker-compose.server.yml file as instructed,
https://github.com/chrisleekr/binance-trading-bot/blob/master/docker-compose.server.yml#L12
Is there duplicated environment parameter specified under binance-bot environment section?

I've reverted both .env.dist and default.json inside /config/ folder (previously mentioned wrongly as config.json).
Im not using docker-compose.server.yml (Im not really sure how to change the monitoring yml file in the app) - but I've edited docker-compose.yml , placing the contents of docker-compose.server.yml in it.

After the last modifications, the error dissappeared, however, values are still blank:
/srv # node ./app/scripts/slack-test.js {"name":"binance-api","version":"0.0.65","hostname":"26300d5eda08","pid":52,"level":30,"msg":"API logger loaded","time":"2021-04-07T13:35:32.700Z","v":0} {"name":"binance-api","version":"0.0.65","hostname":"26300d5eda08","pid":52,"level":30,"slackConfig":{"enabled":false,"webhookUrl":"","channel":"","username":""},"msg":"Slack config","time":"2021-04-07T13:35:32.966Z","v":0} {"name":"binance-api","version":"0.0.65","hostname":"26300d5eda08","pid":52,"level":30,"result":{},"msg":"Slack result","time":"2021-04-07T13:35:32.975Z","v":0} /srv #

Seems that enabled:false is coming from changes applied in default.json inside config folder.

Let's start from scratch.
Write down all the configuration and last buy price in case you lose the data.
You don't need to replace docker-compose.yml from docker-compose.server.yml
Just simply use docker-compose.server.yml
Make sure you already edited correctly .env
# shutdown current docker-compose.yml
$ docker-compose down

# Launch new docker-compose.server.yml
$ docker-compose -f docker-compose.server.yml pull
$ docker-compose -f docker-compose.server.yml up -d

Seems working now.
Bot added this message (not the public URL):

and log reports correct values:

Is this the normal behavior?

Good.
Try to change BINANCE_LOCAL_TUNNEL_SUBDOMAIN to something else and then
$ docker restart binance-bot

Then it should send new public URL to the slack.

My bot runs under no hostname, but IP. Should I leave it to default?
I do not really care about the public IP there, but only about receiving action notifications (orders/sells).

If you don't need any public access, then no need to set the local tunnel.
Because you mentioned Based on this readme file's sentence: When launching the application, it will notify public URL to the Slack. , I would expect you to use the local tunnel.
If you don't need it, just disable the local tunnel.
Hostname/IP all doesn't matter as a local tunnel would take care of it.
If you set it as default, then every time there is a restart, then it will change the public URL address.
Just simply set a random subdomain, which no one can guess, then it would be ok.
In the mobile browser, you can add to home which can use as the mobile Webapp.

Thank you for your amazingly detailed replies, prompt support and willing to help.
Appreciated.

No worries. I just had free time. Just one of good timing.


pamtester: add autoreconfHook

Fix build with GCC 14.
Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 368792

x86_64-linux

:white_check_mark: 2 packages built:

pamtester
xsecurelock

Built on aarch64-linux
/nix/store/xciq02q63lh31653w3rpyi8ksipax0yy-pamtester-0.1.2


test: use AL2 for accelerator test

Fixes #N/A
Description
Use AL2 for an accelerator test since AL2023 AMIs aren't compatible.
How was this change tested?
make e2etests
Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[x] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>0
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.01%) to 79.341%

Totals

Change from base Build<PHONE_NUMBER>9:
0.01%

Covered Lines:
5922

Relevant Lines:
7464

💛  - Coveralls


#5216

i

http://ws2js.luilak.net/interpreter.htmlで実行可。

I have no idea what @ChopinDavid has against Conway's Game of Life, or the whitespace language. :(

Why is everybody on this issue from STL?


[Feature] [UI] Data Quality Result Display Optimize

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
Such as State, Alert Type and so on.
What you expected to happen
UI optimize
How to reproduce
None
Anything else
No response
Version
3.0.0-beta-1
Are you willing to submit PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hi @shangeyao what's the progress of this issue?


Overhaul Client State Handling

Currently the client maintains most state in the various UI controllers. This results in the view elements needing to be cached so as to not lose state. This is suboptimal because it has lead to memory leaks where some ui elements cannot be garbage collected even when they are removed from the scene.
Additionally there is no cleanup of elements and their listeners when they are removed from the UI which also contributes to memory leaks.
This PR aims to overhaul the state maintenance of the client such that views are just displays and can be created and discarded at will.
Tasks

[x] Remove Google Event Bus (Deprecated Global Event Bus)
[x] Don't force chat controller to be initialized
[x] Remove controller caching
[x] Remove controller memory leaks
[x] Introduce simple controller initialization and cleanup
[ ] Cleanup circular dependencies
[x] Make UI population lazy

Closes #2994, #3016, #3018,


add an official Block Producer Voting Record

My Problem
I've finally decided to stake my tokens and I'm wondering which BPs to vote for. I know there have been some disagreements between BPs in the past on some important issues, but I can't see who supported which agenda.
For example which BPs supported the gradual increase of RAM, and who didn't? I've heard that some BPs were against it because they were themselves involved in RAM speculation and I definitely want to avoid voting for them.
Or who is for burning the Worker's Proposal Fund and who is against?
I want to choose BPs whose past work is closest to my principles, but the information is not readily available, and if I have to go dig through forums and telegram chats then I'll put off voting yet again, or even worse vote for the wrong BPs.
Proposed Solution
Right there in the voting screen in my GUI wallet there should be a link called "Block Producer Voting Record" or something similar.
I need this link to provide me with a few pieces of information:

A list of all the BP proposals in the past.
For each BP proposal who was for, who was against, and who was neutral. For example who supported the gradual increase of RAM and who didn't.
For a selected BP a list of all the historic proposals while he was active and how he voted on each one.

On the protocol level here's what happens:

Any active BP can submit a transaction with a new proposal, for example "Let's start increasing the RAM at a rate of 1KB per block".

There's a deadline for the voting period and each BP can vote for, against, neutral, or not vote (which is also neutral but his non-engagement should be perceived negatively by the community)

Each BP can also add a comment with his vote explaining himself why he voted a certain way. Later when I as a voter review the voting history of a BP I might still give him slack for voting against my principles if his comment is persuasive enough.

It looks like you want to get transactions of BP accounts with certain criteria. I think you can go for some common public EOS explorer or syn with the mainnet.

It looks like you want to get transactions of BP accounts with certain criteria.

The transactions that the BPs will submit to vote on these issues will be a permanent and public record of the agendas they supported or opposed in the past. They'll be cryptographically signed and hence non-repudiable.

I think you can go for some common public EOS explorer or syn with the mainnet.

And that is exactly the problem I've got. If I have to go dig through EOS explorers or forums or telegram chats then I and 99% of other voters won't bother to do it.
The information needs to be readily available right there at the voting screen of my GUI voting tool.
This is an enhancement of the user experience that is badly needed.

Your "GUI voting tool" can easily implement what you're requesting. You should probably open an issue there.

That misses the point.
Think about it this way: Right now there are various websites that show the voting record for any congressman or senator. But none of those websites participated in the establishing of a voting record protocol for the congress or the senate. They only present the information to me in a nice tabular format. Likewise the GUI wallets cannot impose a new decision making procedure onto the BPs.
What I'm suggesting is formalizing the decision making process of the BPs and imposing a new protocol for recording all of their interventions in the management of the network.
Later I as a voter need this record so I can evaluate the quality of each BP.

While this may be a useful and valuable discussion to have, it is a question for the governance of the various chains.  The software provides the tools required to implement such a system.  It's up to the producers and users of the public chains to decide to use those tools.  I suggest posting your idea to the venues used by the users and producers of the chain you are interested in.
This forum is for the maintenance, development, and help with the software itself.  It is not used for governance of any particular EOS.IO-based chain.