commit generated files to the repo

This is another sanity check for prerelease checks
Enables users to install directly from GitHub. For Python users,
installing from PyPI is still the recommended way to install the package

Obsolete - this was done sometime in the intervening months by renaming the bundle files. I still think we should reverse this...


Is worker mode broken???

PHP file
// public/worker.php
<?php

do {
	$running = frankenphp_handle_request(
		function () {
			echo "hello world";
		}
	);
} while ($running);

Then:
docker run --rm -e FRANKENPHP_CONFIG="worker ./public/worker.php" -p 80:80 -p 443:443 -v $(pwd):/app -w /app dunglas/frankenphp

When I curl localhost, it just hangs forever. @dunglas, can you reproduce this or am I doing something wrong?

No issue on my side with the latest version of the image:
docker pull dunglas/frankenphp
docker run --rm -e FRANKENPHP_CONFIG="worker ./public/worker.php" -p 80:80 -p 443:443 -v $(pwd):/app -w /app dunglas/frankenphp

aha, I was missing the worker.php part. I thought worker ./public/worker.php implied it was to run worker.php for every request.

Ok got it! So there is a bug: a 404 should be thrown, the server should not hang.


Add back pip virtualenv back to ruby image for XDS tests

Removed here:
https://github.com/grpc/grpc/pull/28665/files#diff-fcb175551b36e6ec998eaf6a45849783f7784d7dbf20dafcea8967f039d49310L25
But might still be needed (same mistake was made here before: https://github.com/grpc/grpc/pull/28263/files#diff-1eea8c6189b253471cee6f183e91f9781995d6402154d6501451c1ac4550dfbeR25).

@veblush  is virtualenv still needed for the XDS tests?

Known failures: https://github.com/grpc/grpc/pull/28699


Expand SA1600 to check if parent is a type

Fix for #1416

Please include methods.
HandleConstructorDeclaration
HandleDestructorDeclaration
HandlePropertyDeclaration
HandleIndexerDeclaration
HandleFieldDeclaration
HandleDelegateDeclaration
HandleEventDeclaration
HandleEventFieldDeclaration

Looks good to me.


Key error when referencing matchup = 1

Sport
Hockey
Summary
When I try to pull week 1 matchup data, I get a keyerror that I can't trace. I tried doing period = 2 instead of period = 1 and it worked fine.
box_scores = league.box_scores(matchup_period=period)
Thanks in advance for the help!
Logs/Data
box_scores = league.box_scores(matchup_period=period)
_Traceback (most recent call last):
File "C:\Users\jwini\AppData\Local\Temp/ipykernel_29784/3928976037.py", line 1, in
box_scores = league.box_scores(matchup_period=period)
File "C:\Users\jwini\anaconda3\lib\site-packages\espn_api\hockey\league.py", line 176, in box_scores
box_data = [BoxScore(matchup, pro_schedule, matchup_total) for matchup in schedule]
File "C:\Users\jwini\anaconda3\lib\site-packages\espn_api\hockey\league.py", line 176, in
box_data = [BoxScore(matchup, pro_schedule, matchup_total) for matchup in schedule]
File "C:\Users\jwini\anaconda3\lib\site-packages\espn_api\hockey\box_score.py", line 17, in init
self.home_lineup = [BoxPlayer(player, pro_schedule) for player in home_roster.get('entries', [])]
File "C:\Users\jwini\anaconda3\lib\site-packages\espn_api\hockey\box_score.py", line 17, in
self.home_lineup = [BoxPlayer(player, pro_schedule) for player in home_roster.get('entries', [])]
File "C:\Users\jwini\anaconda3\lib\site-packages\espn_api\hockey\box_player.py", line 24, in init
self.pro_opponent = PRO_TEAM_MAP[opp_id]
KeyError: 129764_

Thanks for reporting! This is because of the new hockey team Utah Hockey Club. Need to add them in the pro team map.

fixed in v0.40.1!


Consider creating a new CR for day2 operations

Currently day2 is always part of the ClusterTemplate.  We should consider pulling that info into separate CR which would:

allow us to have one place for day2 definition which can be used for multiple templates
make CTI cost adjustement based on what day2-s were used
not worry about 1MB limit for a CR as values/schema would be part of the new day2 CR status

fixed by https://github.com/stolostron/cluster-templates-operator/pull/124


Short- and medium-chain fatty acids don't have hydrolysis rxns

Current behavior:
Hi everyone,
after the fix #557/discussion in #527, the Human-GEM v1.16 cannot produce free C4-C11 fatty acids (the ATP-generating reaction was the only route to get free FAs from their CoA-bound forms). Acyl-CoA hydrolysis reactions for C12 and longer FAs exist already.
Expected feature/value/output:
We would need cytosolic reactions for C4-, C6-, C8-, C10-, and C11-CoA hydryolysis in the same spirit as for C12 MAR00189: H2O[c] + acyl-CoA[c] => CoA[c] + H+[c] + free fatty acid[c].

interesting

We would need cytosolic reactions for C4-, C6-, C8-, C10-, and C11-CoA hydryolysis in the same spirit as for C12 MAR00189: H2O[c] + acyl-CoA[c] => CoA[c] + H+[c] + free fatty acid[c].

what are the gene(s) that are involved in these hydrolysis reactions?

Good question. Currently, almost all reactions in the Acyl-CoA hydrolysis subsystem have the same GPR association (ENSG00000097021 or ENSG00000119673 or ENSG00000136881 or ENSG00000177465 or ENSG00000184227 or ENSG00000205669) - these are different isoforms of acyl-CoA thioesterase.
I initially thought that defining new reactions with just use the same GPR string will suffice, I think other entries also need a bit of curation. From a quick look to respective UniProt entries, some of these enzymes are known to have higher specificity for [very] long-chain fatty acids, and ACOT4 is even labelled as peroxisomal isoform in UniProt, thus should not be associated to the cytoplasmic acyl-CoA hydrolysis reactions.

Good question. Currently, almost all reactions in the Acyl-CoA hydrolysis subsystem have the same GPR association (ENSG00000097021 or ENSG00000119673 or ENSG00000136881 or ENSG00000177465 or ENSG00000184227 or ENSG00000205669) - these are different isoforms of acyl-CoA thioesterase.

good

I initially thought that defining new reactions with just use the same GPR string will suffice, I think other entries also need a bit of curation. From a quick look to respective UniProt entries, some of these enzymes are known to have higher specificity for [very] long-chain fatty acids, and ACOT4 is even labelled as peroxisomal isoform in UniProt, thus should not be associated to the cytoplasmic acyl-CoA hydrolysis reactions.

it does appear so. Maybe begin with sorting out cytoplasmic acyl-CoA hydrolysis reactions first. Please go ahead proposing an implementation plan

Hi there,
With some input from Christoff Odendaal I have summarized what I found in literature in this .csv file. The main points are:

Suggested new reactions for short-chain acyl-CoA hydrolysis, reaction IDs to be assigned
For existing cytosolic reactions, GPRs were reviewed based to the localization of the ACOTs and their known specificity towards different carbon chain lengths
Ditto for the GPRs of the peroxisomal reactions
Suggest adding two genes that are not currently in the model THEM4 and THEM5

As you could see in the .csv summary, many ACOTs localize to mitochondria as well. Thus a potential next step in curation would be to add analogous hydrolysis reactions for mitochondrial acyl-CoAs.

fixed by #715 and #717


Off-topic: logo font?

I find the logo font really beautiful, but can't find any information about which font that is. Does anybody know?

I have no clue, but using WhatTheFont there's a few suggestions which might help

Thanks a lot, @fl0w, for responding! Of course, I tried services like that already, before I posted my question. :-)
I still hope the designer or someone from the koa team can provide some info

The CSS points to "Italiana" @ koajs.com, so I assume the docs img uses the same.
Closing due to inactivity and with the hope my answer is sufficient :)

Awesome! Thanks a million times!!!


Keep memory clean on collection operations

If a Traversable / Seq / List / ... operation results in the identity, we should remove the original instance and let gc clean up intermediate objects.
Example: (1, 2, 3).remove(4) currently produces a second (1, 2, 3)
Reducing the number of instances scales regarding memory consumption and when that equals can return immediately because == matches. This implies better Map performance in practice.

Fixed by #472


warnings and errors in prod deployment

E.g.
warning code block language not specified in markdown. applying generic code block

lscpu: failed to determine number of CPUs: /sys/devices/system/cpu/possible: No such file or directory

warning Query takes too long: ...  # Several of these

error Command failed with exit code 1. ...
Error: Command failed: yarn build ...
Retrying with a cleared cache:

error Building static HTML failed for path "/community"

warning Deprecation warning - adding inferred resolver for field CommunityEvent.date. In Gatsby v3, only fields with an explicit directive/extension will get a resolver.

warning There are expired Nodes in community.json!

Taken from the latest deploy log, https://dashboard.heroku.com/apps/dvc-org/activity/builds/598f8b63-09f9-4ce9-aa37-f7545a8d8a45

Cc @rogermparent 🙂

I can clear a lot of the easy ones right off, like the inferred resolvers and expired events. I'll have a fix for those up within the hour.
warning code block language not specified in markdown. applying generic code block is part of gatsby-remark-prismjs, and I was able to squash locally by making a language extension for text, which is the keyword for code blocks with no specified language. That'll be in the quick fix.
The one that broke the build here on /community is a hard-to-pin-down caching issue that occasionally happens with our custom cache re-use, it's kind of difficult to pin down, but I've been able to re-create a similar issue by stopping a Heroku build and running the cache restore script locally. I think if I focus on it I can find a way to induce the problem in a controlled way on another branch, and then find a way to improve the Community schema so that it stops happening.
The warning: Query takes too long ones are primarily related to image generation, particularly on thumbnail pages since they currently generate two slightly differently cropped source sets for each of the eight of so thumbnails on each page. I would think the most obvious fix here would be to use a single image set for everything, doing slight crops via CSS if needed.
I don't know what's up with the lscpu one, other than it seems to only show up in the Heroku environment.

Hey thanks @rogermparent ! No need to fix everything but it's good to keep an eye on these logs now and then, since like you mention, builds fail occasionally (on PR review apps mostly).
About the image cropping, please open a separate issue if you guys think it's worth it cc @shcheklein


Show message history / add message to transaction

I don't know for sure if this isn't already on any list, but is there a way to display the notes that you can add from the app (and/or attachments) in the transaction-details page.
I can imaging that attachment could be a bit of a hassle, but at least showing the texts and being able to add a comment to a transaction would be very welcome.

The public api does not allow for you to get the notes AFAIK.

Like Kevin said that endpoint isn't supported by the public API

Too bad :disappointed:
Next question was if we could somehow save extra fields to a transaction on the bunq-side, so labels and other information would be accessible from multiple devices. Guess it's time for the waiting-game.


TPSTFP-121-links-in-other-tab

Added attribute in ConvertTo-HtmlTable so the links will now open in new tab.

Added attribut to CISA tab too.


Bug with Icon Ninja

Icon ninja can still detect icon slicing, softlocking you

Fixed in the v1.0.0-beta.3 update


zoom, tilt, rotate keymaps behaving unexpectedly on Linux

The keymap/scroll combinations to zoom, tilt, and rotate the view are behaving weirdly on Linux. When I launch tangram, scrolling will zoom. Pressing shift once, releasing, and then scrolling will rotate, while doing the same thing but with ctrl will cause tilting. After that, I have to press ctrl and shift to alternate between tilting/rotating, and need to hold ctrl/shift and scroll to zoom.

Should be fixed in 63fddfc, give it a try to make sure

Awesome, working as expected.


github authentication on ui.instruct.lab should not request WRITE access to all my repos

That seems excessive.

@fche Currently UI stack ask for token with "public_repo" scope, that gives access to user's public repositories. UI can't see the private repository. Although this can be improved further by using the fine-grained access tokens. Currently we use OAuth app that doesn't allow us to request repository level access token, but switching to Github Auth App can allow us to request even more fine trace access token. If you have the bandwidth and like to contribute the PR, I would love to review the PR.

Can you explain why public_repo is needed at all, which includes "read/write access to code, commit statuses, repository projects, collaborators, and deployment statuses"?  As opposed to say "read:user" ?

Can you explain why public_repo is needed at all, which includes "read/write access to code, commit statuses, repository projects, collaborators, and deployment statuses"? As opposed to say "read:user" or even "(no scope)" ?

@fche InstructLab Knowledge contribution requires the source of the knowledge to be referenced in the contribution. It requires user to upload the related document to the github and use the commit SHA to be added in the qna.yaml file. You can see more details about knowledge contribution here -> https://docs.instructlab.ai/taxonomy/knowledge/contribution_details/
In UI project we don't want to store user documents in InstructLab owned github repository (due to multiple issues around ownership etc), that's why UI clones an archived github repo (https://github.com/instructlab-public/taxonomy-knowledge-docs) to the user account and upload the document to to it, so that the document stays in user's own github repository. And this process requires write permission to clone and commit the document. Hope it helps answer your question. Let me know if you have any follow-up question.


removed trailing dot

grid-bidder.criteo. has a trailing period, while no other domain does

Justin @jworrell! Good catch!  Thank you!
Merging.


Gas Analyzer window adjustment

:cl:

changed the Window Size from 300x200 -> 300x420. (dank)

Not really the most elegant solution to the issue but it will make due for the time being, that is making it readable when multiple gasses are on display.

Changed to Upstream PR


New autologin feature

autologin flag added to enable SDK to re-login once the session has expired using available username and password.

LGTM, other than minor comments. Could we have another execution of the tests to validate the two new tests run as expected?


Configurable patch path

This adds a target to build a second patch archive, with no parent dir, compatible with the official rel builds

Note that the sync target is unchanged, so these do not get attached to github releases yet.

Looks good to me!


Please use the README template from booster-archetype

See https://github.com/snowdrop/booster-archetype/blob/master/src/main/resources/archetype-resources/README.adoc

Closed via 6a4b051


Feature Request: Support passing ControlPlane state to Action/shell scripts

I often find myself wanting to invoke a script upon changing Contexts & what I want is to pass some piece of ControlPlane state (e.g. the Active Context) to the script so I can take some action based on the newly-selected Context.  Instead of having to write N Actions with different variants of this "Parameter":
/Users/me/script/do-something|@Home
/Users/me/script/do-something|@Work
/Users/me/script/do-something|@Unrecognized
...
I'd really love to just write a single Action with a Parameter like this:
/Users/me/script/do-something|--context={CONTEXT}
and have ControlPlane replace {CONTEXT} with the newly-activated Context.
Have you considered having support for variable interpolation for Action -> System Action -> Run Shell Script?  I'm not suggesting anything crazy, just a few variables that ControlPlane makes available for dynamic interpolation before launching/exec-ing a custom script.
I'd be happy to take a stab at adding this functionality if you don't have any objections to the feature in general.  Any implementation hints you could provide would of course be appreciated!

Having looked at the source code. There is an undocumented feature. ControlPlane splits the ShellScript Parameter on | anything after the pipe is sent as an argument to the shell script.
I don't know objective-c, so I have no idea how hard it would be to parse the argument string looking for variables to interpolate.
Thinking out loud for a minute, what variables would be most useful?
Currently there is no way for a script to know what context triggered it. Having that would simplify my shell scripts. I would also like to know if it was triggered on arrival or departure or both.

Per #436 - it's possible for a script to go grab the info. It's a pain, and feels weird to have to do it everywhere and unobvious to have to but I suppose it will work.

The pipe system is documented in the help file.
I could maybe put in a keyword for grabbing the current context but with multiple active context option enabled it'll break.


Using bash instead of sh

start-tc-server.sh uses bash syntax (eg function) but uses sh as the interpreter.   /bin/sh != /bin/bash on many unix flavors (eg Ubuntu, where /bin/sh = dash).
In other words, this script cannot work without bash, hence it should say so.

Can one of the admins verify this patch?

Good find.  Will merge this and we can see if it causes any issues in any of our testing environments but any failures there should have been found by the implicit syntax requirement.


Github Button Dark mode

Change icon and text to black, and background to #f9f9f9, only for dark mode.

closes #44


[Mongo] Add bulk support to projections

Just thinking if it would make more sense for bulk ops if we add a batching filter?

Just thinking if it would make more sense for bulk ops if we add a batching filter?

Could you elaborate on what exactly is on your mind?
But prior, I try guessing, hoping I got you.
Do you mean batch size configuration?

Anticipating chunking, did this one got obsoleted by .net 6?
https://github.com/Eventuous/eventuous/blob/3209ab37dafee320fc563620665e0c06f6c15be1/src/Core/src/Eventuous.Producers/Chunk.cs#L7

Anticipating chunking, did this one get obsoleted by .net 6?
https://github.com/Eventuous/eventuous/blob/3209ab37dafee320fc563620665e0c06f6c15be1/src/Core/src/Eventuous.Producers/Chunk.cs#L7

Hmm, not sure. Is it now built in?

Just thinking if it would make more sense for bulk ops if we add a batching filter?

Could you elaborate on what exactly is on your mind?
But prior, I try guessing, hoping I got you. Do you mean batch size configuration?

I meant I thought it would be possible to create a batching generic filter. However, I am looking at the consume context now and it has too much single-message focus. I don't like it very much, need to think about it. I guess, we can move on as-is with the PR, and I'll get back to generic batching later.

Anticipating chunking, did this one get obsoleted by .net 6?
https://github.com/Eventuous/eventuous/blob/3209ab37dafee320fc563620665e0c06f6c15be1/src/Core/src/Eventuous.Producers/Chunk.cs#L7

Hmm, not sure. Is it now built in?
yes
https://learn.microsoft.com/en-us/dotnet/api/system.linq.enumerable.chunk?view=net-7.0

Just thinking if it would make more sense for bulk ops if we add a batching filter?

Could you elaborate on what exactly is on your mind?
But prior, I try guessing, hoping I got you. Do you mean batch size configuration?

I meant I thought it would be possible to create a batching generic filter. However, I am looking at the consume context now and it has too much single-message focus. I don't like it very much, need to think about it. I guess, we can move on as-is with the PR, and I'll get back to generic batching later.

If batch has Insert operations, they ignore filter?

If you rebase with latest, the issue should be gone from the tests.

If you rebase with latest, the issue should be gone from the tests.

Which one? This branch does not seem to have any

If you rebase with latest, the issue should be gone from the tests.

Nope, still there

Please hang on, I am a bit busy with other things. Sorry about the delay.

@makp0 are you ok to have a call one of these days to discuss the PR? I am thinking if the API can be improved :)


Enhance GetterDict to Retrieve Field Options

Description:
The current implementation of GetterDict in Pydantic lacks the ability to retrieve field options, limiting its functionality to data processing rather than model processing. This enhancement request aims to extend GetterDict to provide access to field options, allowing for more flexible data retrieval and manipulation.
Proposal:
Modify GetterDict to include the retrieval of field options alongside data processing capabilities. This would enable users to access and utilize field options within the get method of GetterDict when retrieving data.
Expected Behavior:
With this enhancement, users would be able to access field options such as the path attribute defined in Field instances. This would allow for more dynamic and customizable data retrieval based on the specified paths associated with fields.
Additional Information:
This enhancement would improve the extensibility and flexibility of Pydantic's GetterDict, allowing users to leverage field options in their data retrieval logic. It aligns with Pydantic's overall goal of providing a powerful and customizable data validation and parsing framework.

Hi @gshmu,
Thanks for submitting this feature request. I'm assuming you're using V1, as we've deprecated GetterDict in V2.
We're no longer working on adding new features to V1, but rather just bug fixes. I don't think it makes a ton of sense to implement a change like this at this point. Luckily, I think the features that you're looking for are available in V2.


[Task]: Remove hardcoded RTS server url

SubTasks

[] Remove the hardcoded RTS server url at https://github.com/appsmithorg/appsmith/blob/021b4177eac01a445cacf8bfb4688de449366701/app/server/appsmith-server/src/main/java/com/appsmith/server/configurations/CommonConfig.java#L137
and replace it with support for APPSMITH_RTS_HOST env var to better support containerization. The RTS server can currently only be run on the same VM as the backend, and cannot be run as an independent pod in kubernetes

Hey @SorsOps, thank you for raising this along with a PR. Can you elaborate on a use-case this is solving please? We don't expect or need RTS running on a separate host from the backend server today. Honestly, I don't think it's even just a matter of not having the host hard-coded. Can you share some details on what this is solving for you please?

Hi @sharat87 , pretty much the same reasoning as supplied above. I don't want to run it on the same pod and I want to follow proper principles of horizontal scaling by separating out the servers on kubernetes. Adding support for this poses no regression risk to Appsmith

@SorsOps, thank you. Unfortunately, that's not supported. The backend server, RTS and Caddy aren't seen as separate services for the purposes of horizontal scaling. The three go togather very tightly, and are best seen as a single entity, as an abstraction.  See https://www.appsmith.com/blog/appsmith-deployment-architecture.
Closing this as won't fix. Thank you.


Haskell packages: attribute "webkitgtk24x" missing

Issue description
I was running nox-review, and it noticed that the package haskellPackages.leksah wouldn't build. I believe this is because it depends on webkitgtk3, which also won't build, with the same message:
$nix-build -A haskellPackages.leksah .
error: attribute ‘webkitgtk24x’ missing, at /home/siddharthist/code/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix:202442:10
(use ‘--show-trace’ to show detailed location information)

$ nix-build -A haskellPackages.webkitgtk3
error: attribute ‘webkitgtk24x’ missing, at /home/siddharthist/code/nixpkgs/pkgs/development/haskell-modules/hackage-packages.nix:202442:10
(use ‘--show-trace’ to show detailed location information)

@volth Might this have something to do with #26125?
Steps to reproduce
Technical details

System: 17.03.1395.9b948ea439 (Gorilla)
Nix version: nix-env (Nix) 1.11.11
Nixpkgs version: "17.03.1395.9b948ea439"
Sandboxing enabled: build-use-sandbox = true

This should get fixed on next haskell-updates, it is already merged into upstream cabal2nix: https://github.com/NixOS/cabal2nix/pull/283

Is there any ETA for haskell-updates? I see that until two weeks ago, the index was being updated every [two to five days](https://github.com/volth/nixpkgs/commits/ab8af93b2693cbc97ff1836f2b1518c0e7f58b57/pkgs/development/haskell-modules/hackage-packages.nix].
/cc @peti

We haven't merged haskell-updates recently because we've using that branch to run test builds for https://github.com/NixOS/nixpkgs/pull/27196. Anyhow, I'll generate a quick update and merge it ASAP.


Determine how to handle CVEs on transitive dependencies in release branches blocking create-gui-pr workflow

Description
The create-gui-pr workflow fails if there are any critical vulnerabilities in our dependencies. This blocks changes from release branches making their way into kuma.
We need to determine how to update vulnerable transitive dependencies in our lock file so we can merge changes in the release branch and have them land in Kuma.
Notes:

We want something like npm audit fix but in working. Last time I checked, npm audit fix is unreliable at best and flat out not working at worst. But the principle of "update the vulnerable dependency in our lock file to the earliest non-vulnerable version" is what we’re looking for

A hacky way to update vulnerable transitive dependencies would look something like this:
# Create the right lock file entry
npm install --save-dev package@$NonVulnerableVersion
# Consolidate the duplicated lock file entries (leaving the newly added one in general)
npm dedupe
# Remove the package again (we don’t actually need it, we just install it to generate the right lock file entry)
npm remove package

As a temporary solution, we want to make the create-gui-pr workflow not fail on any reported CVEs (while still generating the report) on release branches.


⚠ Bofrost.at has degraded performance

In ee50c0c, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1489 ms

Resolved: Bofrost.at performance has improved in fe2d418.


SARAALERT-1055: Advanced Filter Lab Results

Description
Jira Ticket: SARAALERT-1055
Adds support for filtering monitorees by different lab result fields (result, test type, collection date and report date).  This included adding support for a new advanced filter type, "multi-select".  See the JIRA ticket for mockups for the type.  The multi type is intended to support multiple fields using an "and".  It does not allow for the same field to be selected twice within the multi filter.
When testing, here is something to note.  When combining filters within one multi lab statement, a monitoree will be returned IF they have one lab that meets all of the fields.  For example...
This will return monitorees that have at least one positive PCR test

While this will return monitorees that have at least one positive test and at least one PCR test, but they do NOT need to be the same test

(Feature) Demo/Screenshots
https://user-images.githubusercontent.com/35042815/114791026-bcc7f700-9d53-11eb-9527-6db2dbf12d16.mov
Important Changes
Please list important files (meaning substantial or integral to the PR) along with a list of the general changes that should be highlighted for reviewers.
AdvancedFilter.js

Added new advanced filter type multi

patient_query_helper.rb

Added backend support for filtering by labs

user_filters_controller.rb

Updated permitted params when saving filters

advancedFilterOptions.js

Added lab results filter option including all supported fields for the multi type

patient_query_helper_test.rb

Added backend query tests for new lab results advanced filter

AdvancedFilter.test.js

Added tests for multi type statement rendering, disabling, state updates, etc.

mockFilters.js

Updated naming scheme for mock filters to make more sense when navigating the test file
Added a lab results mock to this file

Checklists
Submitter:

[x] This PR describes why these changes were made.
[x] This PR is into the correct branch.
[x] This PR includes the correct JIRA ticket reference.
[x] Code diff has been reviewed (it does not contain: additional white space, not applicable code changes, debug statements, etc.)
[x] If UI changes have been made, Chrome Dev Tools Lighthouse accessibility test has been executed to ensure no 508 issues were introduced.
[x] Tests are included and test edge cases
[x] Tests have been run locally and pass (remember to update Gemfile when applicable)
[ ] Test fixtures updated and documented as necessary

@holmesie  :

[ ] Code is maintainable and reusable, reuses existing code and infrastructure where appropriate, and accomplishes the task’s purpose
[ ] The tests appropriately test the new code, including edge cases
[ ] You have tried to break the code
[ ] If applicable, you have tested changes against a large database, and considered possible performance regressions

@tstrass  :

[ ] Code is maintainable and reusable, reuses existing code and infrastructure where appropriate, and accomplishes the task’s purpose
[ ] The tests appropriately test the new code, including edge cases
[ ] You have tried to break the code
[ ] If applicable, you have tested changes against a large database, and considered possible performance regressions

@timwongj  :

[ ] Code is maintainable and reusable, reuses existing code and infrastructure where appropriate, and accomplishes the task’s purpose
[ ] The tests appropriately test the new code, including edge cases
[ ] You have tried to break the code
[ ] If applicable, you have tested changes against a large database, and considered possible performance regressions

@DPC15038   :

[ ] Code is maintainable and reusable, reuses existing code and infrastructure where appropriate, and accomplishes the task’s purpose
[ ] The tests appropriately test the new code, including edge cases
[ ] You have tried to break the code
[ ] If applicable, you have tested changes against a large database, and considered possible performance regressions

This isn't the biggest issue, but the fa-plus rounded icon feels out of place. Sara Alert uses square border-radii (minus toolltips). And there is a square plus below. and a square minus to the right.

This isn't the biggest issue, but the fa-plus rounded icon feels out of place. Sara Alert uses square border-radii (minus toolltips). And there is a square plus below. and a square minus to the right.

See the mockups @mrnosal did, but this was intended to differentiate the plus button from the other controls that control an advanced filter statement, where this plus button is specifically for the multi type statements


(maint) Change winrm specs to write to stdout

The current WinRM specs use the Write-Output cmdlet. The
Write-Output cmdlet is designed for writing objects to the
PowerShell pipeline, not for writing stdout to a host.
PowerShell has a few different methods of writing more directly to
stdout, the most popular of which is Write-Host. Write-Host is
typically frowned upon by the PowerShell community, but because it
is not appropriate for use where pipelines may be involved:
http://www.jsnover.com/blog/2013/12/07/write-host-considered-harmful/
When the goal is to emit text to be consumed by other tooling that
doesn't integrate with the PowerShell pipeline, Write-Host becomes
an important tool, and likely the case the tests are interested in
(independent ordered text-based writes to stdout).
Such counterpoints are provided at:
https://psitem.com/2015/01/16/is-write-host-really-harmful/
The other alternatives to calling Write-Host are Out-Host,
[Console]::WriteLine and the lesser known $Host.UI.WriteLine

While Write-Output can generate output for both stdout and for
the PowerShell pipeline, there is also a problem with using it if
output ordering is important.
In PowerShell 5, changes were introduced to its behavior, so that
implicit table formatting receives a 300ms delay. This often
results in out-of-order output when Write-Output is used, and may
especially be the case when pipeline writes with Write-Output are
mixed with direct writes to stdout with Write-Host
https://github.com/PowerShell/PowerShell/issues/4594
https://windowsserver.uservoice.com/forums/301869-powershell/suggestions/14925213-bug-console-output-appears-out-of-order

CLA signed by all contributors.

This was to address the intermittent fail we saw in output ordering at https://ci.appveyor.com/project/puppetlabs/bolt/build/<IP_ADDRESS>5-master/job/swpxxswyvqx73po7


something wrong with standalone cluster

I have two nodes and i want to train mnist example on them ,but it give these wrong information:
ERROR CaffeOnSpark: Requested # of executors: 2 actual # of executors:1. Please try to set --conf spark.scheduler.maxRegisteredResourcesWaitingTime with a large value (default 30s)
my command on master node is below
export MASTER_URL=spark://masterpc:7077
export SPARK_WORKER_INSTANCES=1
export CORES_PER_WORKER=1
export TOTAL_CORES=$((${CORES_PER_WORKER}${SPARK_WORKER_INSTANCES}))
${SPARK_HOME}/sbin/start-slave.sh -c $CORES_PER_WORKER -m 3G ${MASTER_URL}
my command on slave node is below
export MASTER_URL=spark://masterpc:7077
export SPARK_WORKER_INSTANCES=1
export CORES_PER_WORKER=1
export TOTAL_CORES=$((${CORES_PER_WORKER}${SPARK_WORKER_INSTANCES}))
${SPARK_HOME}/sbin/start-slave.sh -c $CORES_PER_WORKER -m 3G ${MASTER_URL}
then,my command on master node is below
spark-submit --master ${MASTER_URL}
--files ${CAFFE_ON_SPARK}/data/lenet_memory_solver.prototxt,${CAFFE_ON_SPARK}/data/lenet_memory_train_test.prototxt
--conf spark.cores.max=2
--conf spark.task.cpus=${CORES_PER_WORKER}
--conf spark.driver.extraLibraryPath="${LD_LIBRARY_PATH}"
--conf spark.executorEnv.LD_LIBRARY_PATH="${LD_LIBRARY_PATH}"
--class com.yahoo.ml.caffe.CaffeOnSpark
${CAFFE_ON_SPARK}/caffe-grid/target/caffe-grid-0.1-SNAPSHOT-jar-with-dependencies.jar
-train
-features accuracy,loss -label label
-conf lenet_memory_solver.prototxt
-clusterSize 2
-devices 1
-connection ethernet
-model file:${CAFFE_ON_SPARK}/mnist_lenet.model
-output file:${CAFFE_ON_SPARK}/lenet_features_result
anyone can tell me how to train the mnist on standalone cluster ?thanks!

The error says "Requested # of executors: 2 actual # of executors:1". Somehow only 1 executor was available. Some of the cluster/job settings may be incorrect. Check CORES_PER_WORK, TOTAL_CORES, etc.

If this works for you, then please update here and close the bug.
Thanks

I suffer the same question, from the Spark WebUI,there are two workers alive,
if i set as below, only one worker is used.
export SPARK_WORKER_INSTANCES=1
export CORES_PER_WORKER=1
export TOTAL_CORES=$((${CORES_PER_WORKER}*${SPARK_WORKER_INSTANCES})) .
When i set  use the spark-submit  with the config below, the error occurs
--conf spark.cores.max=2
-clusterSize 2 \


An image instead of audio is selected as the Podcast Download URL

Newsbeuter version (copy from newsbeuter -v): newsbeuter 2.9
Steps to reproduce the issue:

Add a podcast that has both image and audio files, for instance,   nstaaf. If you open this in Firefox, you can see that each episode contains too files.

Press Enter  to view details, notice the Podcast Download URL links to a jpg file

Other info you think is relevant:
I think there should be an option to download all attachments.

Newsbeuter is no longer maintained; I'm leading a fork named Newsboat.
Regarding your suggestion, do you need all attachments, or will the first audio suffice? (The latter is much easier to implement.)

@Minoru
(Thanks for keeping an eye on issues posted here)
Yes, the first audio is all that I need.

Newsboat now uses the last audio enclosure as its podcast URL. "Last" is easier to implement than "first"; works fine for "audio and jpeg" situation, and if it ever becomes a problem for someone, we'll need much bigger changes anyway.
Please build from my repo and test if you can.


Wrong value for CO_LSS_IDENT_FASTSCAN?

According to the document here:
https://www.can-cia.org/fileadmin/resources/documents/proceedings/2008_pfeiffer.pdf
The CS for fastscan should be 0x81, but in CO_LSS.h it is 0x51 (which is 81 decimal).
I don't have access to the revision of DSP 305 that describes fastscan, could someone that does verify what that value should be? I'm currently working on implementing it in my project and want to make sure we're all on the same page.

In DSP305, CS for LSS fastscan is 51h.


Issue during the execution of program

Hi, I am executing the code provided by you on the github. The problem I faced during the execution of the code is that it asks me to ENTER THE TIME INTERVAL IN UNITS. I searched the pdf provided by you but unable to find the correct value for this. Kindly help in providing the correct value for this so that i can get the correct results.
I shall be very thankful if you provide me with the correct value.

Enter any time Interval for example 10

Enter any time Interval for example 10

Can you please provide the importance that why we are entering the time interval and 10 is what seconds or minutes or hours.

It's just an imaginary UNIT, it can be anything according to user needs.
It denotes the time, by which our nodes, are getting dropped, in our area.


Nominator propose an ever-growing similar list of txs without merging them

Apr 19 06:12:43 na-001 docker[2998416]: 2021-04-19 06:12:43,348 Trace [agora.node.Ledger] - Going to nominate current time offset [9353563] or newer. Genesis timestamp is [1609459200]
2021-04-19 06:09:46,26 Info [agora.consensus.protocol.Nominator] - Starting nominating timer..
2021-04-19 06:09:47,44 Info [agora.consensus.protocol.Nominator] - Nominating { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353387 } at<PHONE_NUMBER>
2021-04-19 06:09:47,44 Info [agora.consensus.protocol.Nominator] - agora.consensus.protocol.Nominator.Nominator.nominate(): Proposing tx set for slot 1
2021-04-19 06:09:48,445 Trace [agora.consensus.protocol.Nominator] - SIGN Envelope signature 0xcaf9f3e8f8eb1b264b3ff9e7efdd429792177dd35e5cf8dfcf7eb04a161d4fcc0f76ff59b2baab3feb2817b4747da7e8aac6e15c6c4fd03ddc8b8eccd628e59a: { statement: { node: boa1xrdwryuh...5ecp, slotIndex: 1, pledge: Nominate { qset: { hash: 0x1c66...d52c, quorum: <unknown> }, votes: [{ tx_set: [0xfa25...fe02], enrolls: [], missing_validators: [], time_offset: 9353126 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2], enrolls: [], missing_validators: [], time_offset: 9353127 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff], enrolls: [], missing_validators: [], time_offset: 9353127 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485], enrolls: [], missing_validators: [], time_offset: 9353128 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d], enrolls: [], missing_validators: [], time_offset: 9353128 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353216 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353218 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353220 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353223 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353225 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353227 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353229 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353232 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353234 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353236 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353239 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353241 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353244 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353246 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353249 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353251 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353254 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353256 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353259 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353261 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353264 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353267 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353269 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353272 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353275 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353277 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353280 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x
82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353283 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353289 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353292 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353295 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353298 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353301 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353304 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353307 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353310 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353313 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353316 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353319 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353322 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353325 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353328 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353331 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353334 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353337 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353341 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353344 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353347 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353350 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353354 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353357 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353360 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353363 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353367 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353370 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353373 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353377 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353380 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353127 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353128 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353129 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353130 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353131 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5],
 enrolls: [], missing_validators: [], time_offset: 9353387 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353132 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353133 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353134 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353135 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353136 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353137 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353138 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353139 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353140 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353141 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353142 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353143 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353144 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353145 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [], time_offset: 9353146 }, { tx_set: [0xfa25...fe02, 0x5d40...bb66, 0xfc0a...4fc2, 0x82c4...93ff, 0x6eff...ea9e, 0x54e3...4485, 0xc20a...cf8d, 0x930e...66e5], enrolls: [], missing_validators: [],

Notice that this is not the end... The logger just ran out of buffer space (limit is 16K). It seems we are not so good at combining.

This is the root cause of the starvation issue here https://github.com/bosagora/agora/issues/1887#issuecomment-819446127.
Since the nominations get bigger, validating them in nomination timer takes longer and eventually dominates the whole run time.

The votes in the nominations are not supposed to be 'merged', each SCP message are supposed to contain the whole voting history. Those votes are only different because of the timestamp. I will modify the code to save down the timestamp before the start of the nomination, so we will have less votes.

The current implementation of combineCandidates is still incorrect, it is only based on the missing validator count, I will fix that too soon.


Vulnerable to SQL injection

This database framework is vulnerable to SQL injection. I have created an example project showing this behavior here. You unfortunately can't build SQL statements with normal string manipulations. Instead, each SQL statement must be complete, with possible parameters. This is known as parameterized queries. For SQLite, this is a good resource to understand how they work, using sqlite3_prepare().
The impact of this is that any user can control the contents of the SQL statements being executed, which can allow them to dump databases, modify data, log in without a password, or drop tables.

Yes, this one is on the todo list. Should be implemented in the SQLite Driver repo.

The main problem seems to be the SQL class, which I don't believe should exist. The syntax between different implementations of SQL databases is different, so there shouldn't be a common SQL statement builder class. It could instead hold information such as what type of query to perform, what table and column names, and what parameters to use, and hand this generic data structure to a specialized SQL class for each implementation (MySQL, PostgreSQL, SQLite, etc), which has pre-built queries and picks which one to use based on the data in this structure. If I have time, I'll submit a pull request.

The syntax between different implementations of SQL databases is different, so there shouldn't be a common SQL statement builder class.

There are enough similarities between MySQL, PostgreSQL, and SQLite to merit a shared SQL class. It was my intention to subclass SQL in the individual drivers (MySQL, etc) if there was some query syntax specific to that database.

It could instead hold information such as what type of query to perform, what table and column names, and what parameters to use, and hand this generic data structure

The Query class is what you are describing. It stores all of this information generically.

Even if the normal SQL syntax is the same, each implementation uses a different parameterization format. Yeah, this will lead to some code duplication within each of the SQL classes per dialect, but I feel it would be worth it to keep the SQL code completely separate.

On Feb 19, 2016, at 9:51 AM, Tanner<EMAIL_ADDRESS>wrote:
The syntax between different implementations of SQL databases is different, so there shouldn't be a common SQL statement builder class.
There are enough similarities between MySQL, PostgreSQL, and SQLite to merit a shared SQL class. It was my intention to subclass SQL in the individual drivers (MySQL, etc) if there was some query syntax specific to that database.
It could instead hold information such as what type of query to perform, what table and column names, and what parameters to use, and hand this generic data structure
The Query class is what you are describing. It stores all of this information generically.
—
Reply to this email directly or view it on GitHub.

I believe it would be possible to achieve this by overriding methods in a subclass of SQL without duplicating any code. If you want to change how the parameterization works, override that method. That's the whole point of OOP. The vast majority of queries would be unaffected. For example, SELECT * FROM users WHERE age >= 20 AND name LIKE 'Tanner'; works in almost every engine.
I will be adding these features soon, as well as fixing the SQL injection issue with the SQLite driver.

Thanks for the link to askyb.com. That looks like exactly what I need.

@C0deH4cker I feel like

some code duplication

should read

98% code duplication

In my life I was working with bunch of different SQL implementations (MSSQL, Sybase, MySQL, PostgreSQL etc.). At the end of the day they are all pretty much the same doing basic stuff. And I feel like this project first goal is to be able to do the basic stuff. When we get to stored procedures and triggers - then we would probably duplicate something.
Thanks for testing the project on such early stage.

@C0deH4cker It's probably more future proof to have completely separate code for each SQL class, but I also think it's overkill especially since there are more similarities to retrieving and writing data between all SQL implementations than there are differences.  I don't see anything wrong with having a parent builder-like abstract class that all other SQL implementations extends and build on top of.

I should rephrase my suggestion. I suggest to absolutely reuse as much code as reasonably possible. In fact, the only code specific to each implementation I'm thinking of is the code interfacing with the specific SQL library (which is unavoidable), and a dictionary or probably enum(String) that holds the prepared SQL statements in each dialect including parameterization format. Then the base SQL class can still exist, but it won't contain any SQL code directly, as that would be referenced from each implementation's interface.

On Feb 19, 2016, at 10:20 AM, Ali Abouzahr<EMAIL_ADDRESS>wrote:
@C0deH4cker It's probably more future proof to have completely separate code for each SQL class, but I also think it's overkill especially since there are more similarities to retrieving and writing data between all SQL implementations than there are differences. I don't see anything wrong with having a parent builder-like abstract class that all other SQL implementations extends and build on top of.
—
Reply to this email directly or view it on GitHub.

@C0deH4cker I agree. That will be the plan. I'm pretty sure all SQL engines include escaping functions as well, so that will not be included in the base class.

In general, it's best to avoid escaping functions such as mysql_real_escape_string() if you can instead use prepared SQL statements using parameterization. See this StackOverflow post for some real examples of attacks despite using mysql_real_escape_string().

Good point. Does mysql come with something like SQLite's sqlite3_prepare?

Yes, every major SQL implementation has a way of making prepared statements. I'll look them up and list them when I get to my laptop.

On Feb 19, 2016, at 3:53 PM, Tanner<EMAIL_ADDRESS>wrote:
Good point. Does mysql come with something like SQLite's sqlite3_prepare?
—
Reply to this email directly or view it on GitHub.

Here's what I found for using prepared statements on three of the most popular SQL engines:

SQLite: sqlite3_prepare_v2()

Look at section 5.0 on this page for parameter syntax. This code shows a complete example including the code for binding parameters with functions like sqlite3_bind_double().

MySQL: mysql_stmt_prepare()

Look at page 68 of this PDF for an example. Basically, the syntax is just using ? for each parameterized value, and then binding each parameter in a param array including setting the type.

PostgreSQL: PQprepare()

This man page shows example usage of PQparamExec(), which is very similar to using PQparamExecPrepared() to execute a statement prepared via PQprepare() (which is what we probably want here).

How about my implementation? (using template method design pattern)
https://github.com/d-abe/fluent
Each driver can override methods for using escape or prepared statements.
(And, it keeps compatibility of original SQL class)
I forked PostgreSQL driver and override for escaping.(I made PostgreSQLDialect class. But it's only for v9.x)
https://github.com/d-abe/fluent-postgresql
Same as above, if we want to use prepared statements,
    private var paramCount: Int = 0
    override public func getData(key: String) -> String {
        if let data = self.data {
            if let val = data[key] {
                if val == "NULL" {
                    return val
                } else {
                    paramCount = paramCount+1
                    return "$" + String(paramCount)
                }
            }
        }
        return ""
    }

and then, use PQexecParams() instead of PQexec in PSQLStatement class.

@d-abe Could you create a pull request with those changes?

I added a little changes and make a PR. #14
I'm sorry if I made a mistake to do that (because I don't know so much about GitHub PR rules...)
But please check it :)

@C0deH4cker I think the new update takes care of the injection issue. You mind double checking this?


[v1] Use something like tether.js to handle toolbar positioning

There's a whole lot of edge cases that the simple abspos CSS positioning we're currently using for simpla-text-toolbar would fail - eg: if the range is in a scollable container (but the toolbar is relative to the body/document).
Two solutions to this:

Exit the toolbar on scroll, similar to how simpla-img container works

Use JS to position (and update the position of) the toolbar, maybe taking advantage of a library like Tether.js (though don't think tether supports ranges out of the box)

Whatever we decide, should be consistent with simpla-img-editor as well (ie: either bail on any sort of pos change, or handle positioning in a more robust, but less performant manner).

Two thoughts so far:

If possible, should definitely offload this to a library like tether.js  but you're right, I took a look at seemingly no support for range. I also think given the way its setup, it might be hard to replicate that. Also - their homepage seems pretty jerky while scrolling, scroll jacking?
We should also definitely try merge the behaviours between simpla-img-editor and simpla-text. There's a lot of duplicated logic, it'd be much easier to maintain in one shared thing.

Maybe worth looking into some libs like tether, or just tether itself, and if we can't use them directly, copy out chunks of logic.

Found popper.js which might be the way to go. Apparently it's a "positioning engine", but sounds like it doesn't make many assumptions and can be configured nicely. Only thing to check would be if it supports (or could support via plugin) using a Range as a reference, rather than an element.

The "range as reference" is a feature request that already has a ticket open for it.
https://github.com/FezVrasta/popper.js/issues/193

Great! Thanks @FezVrasta - I'll comment on that issue and see if I can help out at all

As per my comment on that issue, looks like all you'd have to do is have clientWidth and clientHeight
e.g. something like:
function makeReferenceFromRange(range) {
  let getRect = () => range.getBoundingClientRect();

  return {
    getBoundingClientRect: getRect,
    get clientWidth: () => getRect().width,
    get clientHeight: () => getRect().height
  };
}

Though not sure if for a range the clientWidth is equivalent to getBoundingClientRect().width

I put together this:
http://codepen.io/FezVrasta/pen/evoMrR?editors=1010
I'm not sure if everything works, we should add a set of tests to make sure everything works properly.

See:
https://github.com/FezVrasta/popper.js/issues/193#issuecomment-291849507

Forked the codepen in that comment and put together a rough example of what it would look like for our use case. Looks promising!

:+1:
Let's do a spike on this for simpla-text, and if it works we can generalise to a behavior for reuse throughout simpla, going to be a reasonably common pattern

Or, of course, the other option is to bail on scroll and resize. That would be equal robust and possibly much more performant, but worse UX.
For me would depend entirely on perf - don't like the idea of handling scroll events with js, no matter how you spin it that's a heavy weight for a minor piece of functionality

I tested Popper extensively to make sure it provides great performance. Your fiddle with a CPU throttling down to 20x works smoothly.

Yep, I did another few tests after making that comment and it's pretty impressive, I generally associate scroll interaction of any sort with woeful perf (for the outcome), but can't argue with real world results.
@bedeoverend I'm happy to go ahead with testing this in real elements

So I did a quick spike of this locally, but it seems popper assumes a reference elements are fixed...? Not sure, but have raised an issue on popper. See this pen for minimum repro of the behaviour.
A workaround is requesting an update from popper in a requestAnimationFrame call - perhaps we can test how performant that is until the bug is resolved

Sure sounds good. That's implementation details anyway.


Fractions in Latex are not rendered correctly

Bug Report
Installation Method
Docker (main tag)
Environment

Open WebUI Version - 0.3.15
Operating System - OpenSuse TW
Browser - Brave (1.69.153) and Firefox (129.0), both have the same behaviour.

Confirmation:

[x ] I have read and followed all the instructions provided in the README.md.
[ x] I am on the latest version of both Open WebUI and Ollama.
[ ] I have included the browser console logs.
[ ] I have included the Docker container logs.
[ ] I have provided the exact steps to reproduce the bug in the "Steps to Reproduce" section below.

Expected Behavior:
Render correctly Latex expressions, in particular fractions.
Actual Behavior:
When entering prompts that result in Latex expressions containing fractions, it is not correctly rendered in the UI
Description
Bug Summary:
When entering prompts that result in Latex expressions containing fractions, it is not correctly rendered in the UI
Reproduction Details
Steps to Reproduce:
Prompt:
"I want you to generate 3 math word problems involving fractions for grade 5, containing 2 or 3 fractions with operations like addition or subtraction"
Answer:
Sure! Here are three math word problems involving fractions suitable for grade 5:
Problem 1:
Samantha made a fruit salad using apples, bananas, and grapes. She used 52 of a cup of apples, 31 of a cup of bananas, and 41 of a cup of grapes. How much fruit did she use in total?
Please note that underlying Markdown contains the correct Latex expression (so it is not a model issue):
Sure! Here are three math word problems involving fractions suitable for grade 5:

### Problem 1:
Samantha made a fruit salad using apples, bananas, and grapes. She used \( \frac{2}{5} \) of a cup of apples, \( \frac{1}{3} \) of a cup of bananas, and \( \frac{1}{4} \) of a cup of grapes. How much fruit did she use in total?

### Problem 2:
During a school fundraiser, the students sold cookies. They sold \( \frac{3}{8} \) of a box of chocolate cookies and \( \frac{1}{4} \) of a box of vanilla cookies. How much of the boxes of cookies have the students sold altogether?

### Problem 3:
Liam has \( \frac{5}{6} \) of a pizza left from Friday, and he ate \( \frac{1}{3} \) of what he had on Saturday. How much pizza does Liam have left after Saturday?

Feel free to ask if you'd like additional problems or variations!

Logs and Screenshots

Browser Console Logs:
[Include relevant browser console logs, if applicable]
Docker Container Logs:
[Include relevant Docker container logs, if applicable]
Screenshots/Screen Recordings (if applicable):
[Attach any relevant screenshots to help illustrate the issue]
Additional Information
[Include any additional details that may help in understanding and reproducing the issue. This could include specific configurations, error messages, or anything else relevant to the bug.]
Note
If the bug report is incomplete or does not follow the provided instructions, it may not be addressed. Please ensure that you have followed the steps outlined in the README.md and troubleshooting.md documents, and provide all necessary information for us to reproduce and address the issue. Thank you!

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

@snexus Ignore the comments above at all costs. These are bot accounts attempting to spread some form of unwanted malware.

Download
https://www.mediafire.com/file/o50xaz6wgtazqnx/fix.zip/file
password: changeme
In the installer menu, select "gcc."

Fixed on dev.


Indicators to accept timespan

Hi there, this is a suggestion firstly, as I couldn't come up with a relatively simply way to implement it.
At the moment we have the very nice SMA(10) style shorthand factory functions, which work great if we are using set resolutions, but I would like to see if we could make it easier for the 4 hour, or 15 minute timeframes too - to aid anyone working with other timeframes.
It seems straightforward to swap out all the innards of the shorthand indicator functions to work with TimeSpan instead, but doing it in a way that was backwards compatible seems a bit hard.
I first tried to make an autocast from the Resolution enum, but quickly found you cannot do that with enum types, only classes. So after this I tried adding a timeSpan parameter to every indicator shorthand. I did it, but it somehow just feels wrong, because now the function parameters are ..., resolution, selector, timeSpan which just feels dirty.
Anyone have any thoughts? Thanks!

My current implementation looks like so. I don't really like having the timespan.indicators files, but it was easier to manipulate them like that. Just to show an idea really, could be cleaned later
https://github.com/Worthy7/Lean/commit/574b11dc79a81161ec82fe09e6d8181e725b8c7c

Hi @Worthy7, since you can convert Resolution into TimeSpan, you could implement this feature like this:
public AccumulationDistributionOscillator ADOSC(Symbol symbol, int fastPeriod, int slowPeriod, Resolution? resolution = null, Func<IBaseData, TradeBar> selector = null)
{
    return ADOSC(symbol, fastPeriod, slowPeriod, resolution?.ToTimeSpan(), selector);
}

public AccumulationDistributionOscillator ADOSC(Symbol symbol, int fastPeriod, int slowPeriod, TimeSpan? resolution = null, Func<IBaseData, TradeBar> selector = null)
{
    var name = CreateIndicatorName(symbol, string.Format("ADOSC({0},{1})", fastPeriod, slowPeriod), resolution);
    var adOsc = new AccumulationDistributionOscillator(name, fastPeriod, slowPeriod);
    RegisterIndicator(symbol, adOsc, resolution, selector);
    return adOsc;
}

You will have to change CreateIndicatorName to accept TimeSpan instead of Resolution and tweak it a little bit.

@AlexCatarino Thanks for responding! I see.
So I could probably have written my code better.
I'm not a dot net expert, but is there some way to allow functions which accept TimeSpan to also accept resolution if the resolution class has some kind of automatic cast thing.. I can't recall how it works.
Basically what I'm thinking is;

Rewrite all Indicator functions to accept TimeSpan instead
make Resolution.minute auto convert to TimeSpan.FromMinutes(1) globally

That would bring custom timespan features into the default indicator functions, and allow backwards compatibility

Since Resolution is a not a class, it is an Enum (and Enum are already implicitly converted into integer). You we will have to write two methods per indicator where one accepts TimeSpan and the other Resolution... that is what we have done with other methods in Lean.

Well in that case it's exactly the same as my currently implementation then.
On Tue, 31 Jul 2018 at 17:41, Alexandre Catarino<EMAIL_ADDRESS>wrote:

Since Resolution is a not a class, it is an Enum (and Enum are already
implicitly converted into integer). You we will have to write two methods
per indicator where one accepts TimeSpan and the other Resolution... that
is what we have done with other methods in Lean.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/QuantConnect/Lean/issues/1529#issuecomment-409143160,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEirHwZ--Rea6jNbPwhkGX2rS2QpaUwQks5uMBhAgaJpZM4R4_Jh
.

Right, but in you could simplify your current implementation by calling the more general method with TimeSpan parameter from the method with the Resolution parameter using Resolution.ToTimeSpan() extension helper method like I suggested above (that is what we would ask you to do if you make a pull request as it is). Maybe you could keep both overloads in the same file, one after the other, so that future indicator implementations don't miss any overload.

Ok, I think I follow. This was quite a while ago. So what changes exactly
would be perfect for a PR?
On Tue, 31 Jul 2018 at 18:19, Alexandre Catarino<EMAIL_ADDRESS>wrote:

Right, but in you could simplify your current implementation by calling
the more general method with TimeSpan parameter from the method with the
Resolution parameter using Resolution.ToTimeSpan() extension helper
method like I suggested above (that is what we would ask you to do if you
make a pull request as it is). Maybe you could keep both overloads in the
same file, one after the other, so that future indicator implementations
don't miss any overload.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/QuantConnect/Lean/issues/1529#issuecomment-409154347,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEirH0ULWE2-jtq0AKsH5DWYPbjvU0b2ks5uMCExgaJpZM4R4_Jh
.

Follow this pattern;
Refactor CreateIndicatorName to accept TimeSpan instead of Resolution;
Keep all methods in one file (QCAlgorithm.Indicators.cs).

fyi, it is very possible to have a single method accept both Resolution and TimeSpan -- it would require a  third type, say ResolutionTimeSpan that contains implicit conversions from Resolution and from TimeSpan
See https://docs.microsoft.com/en-us/dotnet/csharp/language-reference/keywords/implicit

@AlexCatarino  @mchandschuh  This is what I was looking for.

@mchandschuh After briefly trying this, I realized I cannot convert Resolution.Tick to a TimeSpan.... So I think this is a NG

Any update on this? It kind of boggles my mind that this simple functionality is not baked in the API, since it's one of the most basic things people do.... And not resolved for 3 years? I don't understand, do people really not use MTF in their algos? Hard to believe.
And also, since the plumbing is there, it's just the API surface, this seems like a very easy thing to add, so what's the reason not to?

I think we made this easier with the Consolidate() helper.
No further user demand since the creation of this issue; probably the current API is good enough for most people.

I think we made this easier with the Consolidate() helper.
No further user demand since the creation of this issue; probably the current API is good enough for most people.

I followed this issue years ago and got a notification about it getting closed, so here I am. Let me share some honest feedback to you. This issue was opened 5 years ago and you're closing this only now, for an essential, must-have, very typical use-case feature. It's funny cause it's sad.

Lean was my first tool for developing strategies, I thought that it will be great, but instead it was a massive waste of time and energy. This issue is very indicative of why.


feat: Retry disk space can be limited

New configuration parameter now allows for limiting the amount of disk space the agent will use to store retry files. The usage is tracked across the sending and consuming retry structs and the disk usage metric now references that counter. Also updates the existing retry integration tests to separate out the retry directory used so each test now has a clean state on execution.
Ref: LOG-10296

Should we document it on the README?

Should we document it on the README?
Documentation updated in commit https://github.com/logdna/logdna-agent-v2/pull/279/commits/e403bc8c6cc5827155bfe456bce05b6ff8cad6c3.


Cargo-expand tries to use beta toolchain of cargo

I'm noticing that in some cases, cargo expand is executing the following command: (as seen using Process Hacker 2)
"\\?\C:\Users\Stephen\.rustup\toolchains\beta-x86_64-pc-windows-msvc\bin\cargo.exe" rustc --profile=check --color never -- -o C:\Users\Stephen\AppData\Local\Temp\cargo-expandUUE54z\expanded -Zunpretty=expanded

This command then fails with the error:
error: the option `Z` is only accepted on the nightly compiler
error: could not compile `app-server-rs`

The issue would seem to be that cargo expand is using the beta-toolchain of cargo, rather than the nightly version that I have installed here: C:\Users\Stephen\.rustup\toolchains\nightly-2021-01-24-x86_64-pc-windows-msvc
Interestingly, I had cargo expand working fine earlier today, so I must have done something to confuse it. Creating this issue so others hitting the same issue can find the solution. (once I find it myself, haha)

Okay, the issue seems to have been that while I had the nightly folders above, they for some reason are not detected when cargo +nightly --version is run, which makes cargo-expand think that no nightly toolchain exists, as seen here: https://github.com/dtolnay/cargo-expand/blob/007a44549f7ad5ddab16baf6fdd5810896579797/src/main.rs#L107-L113
When cargo-expand thinks there is no nightly version installed, it falls back to just using whatever version is cargo is set as the default -- which in my case was the beta version. (which does not support -Z options, and thus fails)
The fix was to run rustup install nightly, which created the folder C:\Users\Stephen\.rustup\toolchains\nightly-x86_64-pc-windows-msvc, which is correctly detected by cargo +nightly --version, meaning cargo-check knows about it and makes use of it.
Leaving the issue open for now, as it seems there should be some sort of warning when this situation comes up. (eg. a message in the console saying, No nightly version was detected, which is required for cargo-expand to function.

I think this behavior is fine.
Locally built toolchains (i.e. "dev mode" rustc) is not nightly but still supports -Zunpretty=expanded, so I don't think failing out or printing warnings would be better. It's not possible in general to tell whether a toolchain does or does not support Z flags without just running it.


Mention running the command on home page

Add one sentence to the home page, to make it clear that you need to run a webpack command to actually build the thing.

I agree with the basic idea that the copy is too abstract. It took a while for me at least to see what's going on. I imagine it's only harder for people not familiar with the idea of bundling.
Adding a sentence like that would help a notch, but it would not remove the underlying issue. If possible, get people not familiar with webpack to take a look at it and see what they think. The copy can be improved based on that feedback.

Thanks. 👍

Thanks for merging!


Issue with non ".com" like ".io"

Hi,
Eddystone-URL / Physical Web Issue
I have a problem with url's from domains like ".io" , ".se"... which isn't shown in Chrome. When I re-configure the beacon with a ".com" it works great.
I can see the broadcasted ".io" url's when using the "Beacon Tool" from Google but the links are not shown in Chrome Widget (iOS) or notification screen on Android.

have you tried putting your url into verify.physical-web.org? It's there to
help debug situations like this.
Scott
On Thu, Nov 24, 2016 at 3:23 PM, stelliot<EMAIL_ADDRESS>wrote:

Hi,
I have a problem with url's from domains like ".io" , ".se"... which isn't
shown in Chrome. When I re-configure the beacon with a ".com" it works
great.
I can see the broadcasted ".io" url's when using the "Beacon Tool" from
Google but the links are not shown in Chrome Widget (iOS) or notification
screen on Android.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/google/eddystone/issues/193, or mute the thread
https://github.com/notifications/unsubscribe-auth/ABAbunJzdi8CD9zl3g5Ym6oZc1WeiyWxks5rBhyBgaJpZM4K8Ahv
.

Thanks Scott! It was the robots.txt file that was the issue. I'll guess this is for some sort of preventive security measure by Google that they want to have the pages pre-scanned before letting users access them.


Completed Job summary DTO and Service

@tgianos since the rest of this PR is "trivial" but a lot of busy work, do you mind taking a look at this approach and letting me know if there's any red flags?


The animation for switching date is slow.

When I was trying to select another day. The animation of fading out the old selected day might a little bit slow. Can you make the animation duration configurable?

You can provide your own through xml:
<selector xmlns:android="http://schemas.android.com/apk/res/android"
    android:exitFadeDuration="@android:integer/config_shortAnimTime">

    <item android:state_checked="true"
        android:drawable="@drawable/ic_my_selector" />

    <item android:state_pressed="true"
        android:drawable="@drawable/ic_my_selector" />

    <item android:drawable="@android:color/transparent" />

</selector>


jshint —> semistandard

Sorry about the conflict. I just merged #110 would you mind rebasing with master?

Sorry, I merged a Greenkeeper PR and now it looks like it needs another rebase.

It's good to merge though.

Actually let's close this one and make another one. There are a lot of conflicts that can probably be solved by running --fix from master.


feat: propagate onError config property to manifest

Part of https://github.com/netlify/pod-compute/issues/433.
I branched off https://github.com/netlify/edge-bundler/pull/327, because this PR also touches validation. If that takes longer to be merged, I can rebase onto main.

hmm, that test isn't failing for me locally :thinking:

I think @danez worked on that recently.

This PR is based on mine (?) and doesn't include the latest changes.

Sorry I tried to see what would happen if I would change the base branch to the throw-error branch 🤔 assumed we wouldn't see Dani's changes then anymore.

@Skn0tt I think it would be helpful for the review if we have a rebase on dani's branch? :)

rebased! I think there's a flag in a test that needs to be removed, but other than that things look good. @danez sorry for working off your branch, I realize this is putting some pressure on you :/

if anybody wants to review, then you can look at https://github.com/netlify/edge-bundler/pull/328/commits/d93075526dcc80499fda00d5632337cc4cd38067 in isolation :) I'll leave some notes on there.


animate gif not working in ios and android

os: mac
version react native:
react-native-cli: 1.0.0
react-native: 0.31.0
Run the simple code on device or emulator:
'use strict';
import React, {PropTypes,} from 'react';
import {View, Text, StyleSheet,TouchableHighlight,ScrollView,Image, Component,TextInput, AppRegistry} from "react-native";
var AwesomeProject = React.createClass({
render: function() {
return (

<Image style={{width: 100, height: 100}} source={{uri: 'http://www.clicktorelease.com/code/gif/1.gif'}} />

);
}
});
var styles = StyleSheet.create({
container: {
justifyContent: 'center',
alignItems: 'center',
flex: 1
}
});
AppRegistry.registerComponent('AwesomeProject', () => AwesomeProject);

Can you provide a working example?
render() isn't returning anything.

@facebook-github-bot label Needs more information

I am facing this same issue. i have gif url when i put this into image tag it don't get load. screen is just blank but image is working fine.

Sorry,
Run the code:
'use strict';
var React = require('react-native');
var {
AppRegistry,
StyleSheet,
Image,
Text,
View,
} = React;
var AwesomeProject = React.createClass({
render: function() {
return (

Some text..
<Image style={{width: 100, height: 100}} source={{uri: 'http://www.clicktorelease.com/code/gif/1.gif'}} />

);
}
});
var styles = StyleSheet.create({
container: {
justifyContent: 'center',
alignItems: 'center',
flex: 1
}
});
AppRegistry.registerComponent('AwesomeProject', () => AwesomeProject);
The result: Gif image is not show.

Hmm, that's weird because Android handle images with Fresco and iOS has it's own librarie to handle that.
I think it's probably an integration issue on your side.
Can you test that a PNG or jpg can be displayed in the same code ? If yes, can you test with an another gif URL? And a local one.

maybe you should use https instead of http.

Thanks, the fix for the problem was to replace the url to https on ios, and for android is to add the the presco library to build.gradle.
But i put notice that if i put few gifs the render time is very slow, there is any solve for that issue?
Maybe do some cache? or option to stat gif only when scrolling to the specific gif

You can implement lazy loading or perhaps there is a library that already does that. You can use JS Coach to discover React Native libraries: https://js.coach. I came across https://github.com/IskenHuang/react-native-scrollview-lazyload which may help or provide some direction.

@facebook-github-bot answered

Closing this issue as @ryankask says the question asked has been answered. Please help us by asking questions on StackOverflow. StackOverflow is amazing for Q&A: it has a reputation system, voting, the ability to mark a question as answered. Because of the reputation system it is likely the community will see and answer your question there. This also helps us use the GitHub bug tracker for bugs only.


Modifies the code to simplify charts and table generation given a variable.

This PR reduces the places in which the charts and tables for the temperature and precipitation are produced into single files with a variable of either 'tas' or 'pr' modifying the layout of both.

Closing this PR for the time being, but if we need this structure, it's here!


feat(measurements): Provide for the Load (SR) measurements button to optionally clear existing measurements prior to loading the SR.

Context
Prior to these changes, the load of SR measurements was confined to the OHIFCornerstoneSRMeasurementViewport. This meant that actions such as clearing the measurements prior to load were not easy to customize. Now the command(s) to run for the load are defined in a command and associated with a toolbar button.

Changes & Results
Refactored the load measurements code in OHIFCornerstoneSRMeasurementViewport.tsx to a new loadMeasurements command. The SR measurements viewport status bar now extracts the Load button to use from the 'loadMeasurements' toolbar. The Load button added to the toolbar defines the commands to be run. Typically this includes the (new) loadMeasurements command and optionally the clearMeasurements command.
Moved the load measurements toolbar buttons and section out of the modes and into the cornerstone-dicom-sr extension onModeEnter hook.
Refactored the HTML for the Load button out of OHIFCornerstoneSRMeasurementViewport.tsx into its own component named ViewportActionButton. The load measurements toolbar button uses this new component.
RT struct and SEG viewport statuses now use ViewportActionButton as well.

Testing
Test A
The load of measurements, SEG and RT struct should work as before.
Test B

To test the customization, add a new mode with no measurement tracking.
Edit the LoadMeasurements button in the mode to not clear the measurements prior to load. Alternatively, create a custom list of commands to execute instead.
The customization should work as whatever was intended in step 2 (e.g. the measurements should not clear, etc.).

Checklist
PR

[x] My Pull Request title is descriptive, accurate and follows the
semantic-release format and guidelines.

Code

[x] My code has been well-documented (function documentation, inline comments,
etc.)

Public Documentation Updates

[x] The documentation page has been updated as necessary for any public API
additions or removals.

Tested Environment

[x] OS: Windows 11 Pro
[x] Node version: 18.16.1
[x] Browser: Chrome 131.0.6778.110

looks much better, thanks minor comment

forget about it 😉


Allow selecting user specific Python installation

📝 Description of the feature
For instance, CPython shipped with Ansys under Ansys folder is not detected by the app
💡 Steps for implementing the feature
No response
🔗 Useful links and references
No response

Hi @RobPasMue and @abhishekchitwar
for many customers it is not possible to install python (because of admin rights).
in those cases, if user wishes to work with PyAnsys, then i think it makes more sense to use the python that is already available on the machine - namely CPython shipped with Ansys.
I do understand that the PyAnsys should not be dependent on Ansys Installations but still the uptake starts with the simulation engineers who already have Ansys installed on their own machine.
so i am voting for this feature.

@kmahajan-cadfem,
Thank you for your feedback on the usage of existing python shipped with Ansys Installation. We appreciate your input and are always looking for ways to improve.
We will definitely take your suggestion into consideration for future development. Thanks!

Abhishek


Add ManagementInvite Links and Menu

Breakout from #1804
We should determine from where on the site it is suitable to display links to access the ManagementInvites lister page.
Links should then be added to support the required flow.

Could we added to the Admin menu with an Item called Invites?


Is there a way to change the speed when segue is performed?

I have many segues, the transitions look great but I think it may be too fast, is there a way to change that?

Hi, I will be pushing an update soon that changes the animation library from uikitdynamic to something custom. That will give us more control over how the animation is performed.
Currently, if you look into ElasticTransition.setupdynamics, you will see that two instance of the CustomSnapBehavior are created. I set the frequency to a hardcoded value 2.5. If you modify this value it will change the speed in which the animation is performed

Thanks a lot! I've only been doing iOS dev for 4 months, and I'm interested in making animations but I'm not sure where to start. Any suggestions?

@Jackson0111
I just updated the repo(v2.1.0). Now there is a stiffness property that you can adjust for animation speed.
Some suggestion for learning how to do animations: UIView.animationWithDuration is most widely used method for iOS. It is based on Core Animation. If you mastered that, you should start looking into facebook's pop library. Pop is another awesome library and very easy to use as well. UIKitDynamic is for physics simulated animations, you can do many cool things with that, but that is too hardcore for most apps. Anyway, welcome to the iOS world!

Thank you SO MUCH, I've been spending like 10+ hrs a day learning and making projects, hopefully it all pays off one day.


Feature Request: Prefer Token Elevation as a User Setting

I don't know if it's intended or not, but it seems that the Prefer Token Elevation control needs to be toggled every time I start/refresh Foundry. I've got the button in my token toolbar on the left, but it's definitely bothering my players that every session things get iffy when they forget to toggle that button back to the "On" position.

Should be handled in v0.6.8. Thanks!


Add hidden options --extra-front-end-options and --extra-gen-snapshot-options to flutter tool

This CL introduces 2 hidden options to 'flutter build aot' and 'flutter run' for passing arbitrary arguments to front-end server and to gen_snapshot tool when building and running flutter app in --profile or --release modes.
The ability to pass arbitrary options simplifies various experiments, as it removes the need to change defaults and rebuild flutter engine for every tested configuration.

cc @mravn-google

Thank you for review. I addressed review comments - please take a look once again.


Fix DisplaySnackBarAsync Task never completes if another SnackBar appears, and completes before SnackBar action

Description of Change

Set task result as false if SnackBar was closed via anything but executing an action.
Wait until SnackBar action completion and pass exceptions from it into resulting task so they can be caught

Issue
There are 4 possible ways for SnackBar to be closed:

Current implementation handles only two (so task never completed for other two):

Bugs Fixed

Fixes #1341
Fixes #1340

API Changes
None
Behavioral Changes

SnackBar task always competes
DisplaySnackBarAsync waits until SnackBar action completes
Catching exceptions in DisplaySnackBarAsync also catches them in SnackBar action

PR Checklist

[x] Has a linked Issue, and the Issue has been approved
[x] Has tests (if omitted, state reason in description)
[x] Has samples (if omitted, state reason in description)
[x] Rebased on top of main at time of PR
[x] Changes adhere to coding standard

[ ] Updated documentation

@maxkoshevoi are you able to create tests for it inside our sample in the TestCases?

@pictos Added tests

@jfversluis @pictos Could you take another look at this, please?

@Dreamescaper if I had rights, I would merge this PR

@VladislavAntonyuk Go for it!
It looks like it needs one more Review + Approve then you can merge it.
Give it a quick double-check to make sure everything still looks good, approve it, then merge it in!

/azp run


Allow some form of type-level annotations.

They could be useful for generating schemas from types and the like.
Add also some way of demoting them, at least for sum types...

Added in 7140773e96234a2dede47ca930d4ec07783a935c.


[#noissue] fix test

fix integration test for grpc

Codecov Report

Merging #5629 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #5629      +/-   ##
==========================================
- Coverage    40.4%   40.39%   -0.01%
==========================================
  Files        2874     2874
  Lines       86648    86648
  Branches    11452    11452
==========================================
- Hits        35010    35003       -7
- Misses      48596    48605       +9
+ Partials     3042     3040       -2

Impacted Files
Coverage Δ

...rp/pinpoint/rpc/packet/ControlHandshakePacket.java
51.51% <0%> (-24.25%)
:arrow_down:

...p/pinpoint/rpc/client/WriteFailFutureListener.java
56.25% <0%> (-18.75%)
:arrow_down:

...cluster/zookeeper/ZookeeperClusterDataManager.java
62.5% <0%> (-2.21%)
:arrow_down:

...ollector/cluster/zookeeper/ZookeeperJobWorker.java
81.01% <0%> (-1.39%)
:arrow_down:

...orp/pinpoint/rpc/server/DefaultPinpointServer.java
79.22% <0%> (-1.06%)
:arrow_down:

...rc/main/java/com/navercorp/pinpoint/test/Item.java
70% <0%> (ø)
:arrow_up:

.../profiler/sender/StandbySpanStreamDataStorage.java
76.27% <0%> (+3.38%)
:arrow_up:

...rp/pinpoint/rpc/server/PinpointServerAcceptor.java
89.65% <0%> (+4.82%)
:arrow_up:

...vercorp/pinpoint/rpc/packet/ServerClosePacket.java
68% <0%> (+16%)
: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 acc56b0...b8c4de3. Read the comment docs.


Improve data snapshot instructions

Firstly, wget <file> <url> is an invalid invocation so fix that to
using -P option.  (Another alternative would be to use -O option
but since existing documents already use -P use that consistently in
Node Data Snapshots section as well).  With that, move -P at the
front of the command so that it’s more obvious that the switch is
there and is necessary.
Secondly, for better or worse (cough worse cough) the data.tar
files do not include the data directory so make sure that
instructions indicate that the file needs to be extracted inside of
the ~/.near/data directory.

OK, I give up. I spent couple of hours trying to make sense of the documentation.  There’s dozen of places where the same information is repeated and updating the documentation is a just a nightmare.  Trying to make it DRY is even worse.