feat: added LRU cache for mockDB connections

Description
This PR implements an LRU (Least Recently Used) caching mechanism for the Mongo mockDB connections which get auto-cleaned up every 2 hours based on their access time.
This is done to stop the overpopulation of the open dangling connections to the mockDB resulting in the max connection limit.
The Caching Implementation used is Google Guave Cache.
Also refer - Working of Guava cache

Fixes #36474
Automation
/ok-to-test<EMAIL_ADDRESS>:mag: Cypress test results

[!CAUTION]
🔴 🔴 🔴 Some tests have failed.
Workflow run: https://github.com/appsmithorg/appsmith/actions/runs/11064799725
Commit: d7cf8a5735f8dbc4b73aea56666b7add6b9d1f12
Cypress dashboard.
Tags: @tag.All
Spec:
The following are new failures, please fix them before merging the PR:
cypress/e2e/Regression/ClientSide/Widgets/Select/RTL_support.ts
List of identified flaky tests.
Fri, 27 Sep 2024 06:13:49 UTC

Communication
Should the DevRel and Marketing teams inform users about this change?

[ ] Yes
[ ] No

Summary by CodeRabbit

New Features

Introduced a new constant for the MongoDB plugin to enhance plugin identification.
Added a DatasourcePluginContext class to encapsulate datasource plugin context, including connection details and creation time.
Implemented a caching mechanism for datasource contexts to optimize connection management and reduce excessive database connections.
Added functionality to identify mock MongoDB datasources.

Bug Fixes

Enhanced cleanup processes for stale connections in the caching system.

I overlooked this point during my review. This is an in-memory cache, not shared across different pods. Doesn’t that mean the cache will only be effective for subsequent requests to the same pod? Each pod will have its own cache, which could lead to excessive caching and undermine the original goal.

@subrata71 yes the cache is not shared across the different pods and as per the current and projected traffic on mockDB connections we are reaching the limit of 3k connections in 72 hours combined on all pods.
The eviction time added in the above configuration is 2 hours per pod which can only lead to excessive caching only when there are 3k connections in less than 2 hours combined on all pods which is not the case that we are projecting.
Saying that, do you still find the need to add a cache size limit @subrata71 ?

@NilanshBansal
Could you please add more logging to track when the cache expires? Including information like the cache size would help with monitoring across pods and allow for better adjustments to the caching implementation.

As per discussion with @subrata71, I have added the maximum size limit of the cache per pod and also added the logs around the cache size after addition and eviction.
@subrata71 can you please re-review 🙏

Tag.All has already passed on this PR hence updated with Tag.Sanity as only log level changes are done post it.


Add IDAS package from SUNDIALS for future DAE solution features

Summary:
For future DAE features, we need a DAE solver. Since stan math already adopts CVODES, we can use IDAS from the same SUNDIALS package.
Description:
Differential Algebraic Equations(DAE) are more general than ODE, but also more challenging to solve. In application It usually involves an ODE system and an algebraic system. A classical example is the pendulum in Cartesian coordinates. In PK/PD applications, an example is one/two-compartment PK model linked to an Emax model, so that Emax depends on the concentration.
We need DAE solver for this type of equations. Since stan math has already linked to SUNDIALS' CVODES solver, it is reasonable to use DAE solver lib IDAS in the same package for this purpose.
The linking is straight-forward: include IDAS library then modify makefile.
Expected Output:
Similar to CVODES, we should be able to make IDAS lib as
make lib/idas-x.x.x/lib/libsundials_idas.a
Current Version:
v2.17.0

This was address by #742 and merged. Please close.


[SPARK-36519][SS]Store RocksDB format version in the checkpoint for streaming queries

What changes were proposed in this pull request?
RocksDB provides backward compatibility but it doesn't always provide forward compatibility. It's better to store the RocksDB format version in the checkpoint so that it would give us more information to provide the rollback guarantee when we upgrade the RocksDB version that may introduce incompatible change in a new Spark version.
A typical case is when a user upgrades their query to a new Spark version, and this new Spark version has a new RocksDB version which may use a new format. But the user hits some bug and decide to rollback. But in the old Spark version, the old RocksDB version cannot read the new format.
In order to handle this case, we will write the RocksDB format version to the checkpoint. When restarting from a checkpoint, we will force RocksDB to use the format version stored in the checkpoint. This will ensure the user can rollback their Spark version if needed.
We also provide a config spark.sql.streaming.stateStore.rocksdb.formatVersion for users who don't need to rollback their Spark versions to overwrite the format version specified in the checkpoint.
Why are the changes needed?
Provide the Spark version rollback guarantee for streaming queries when a new RocksDB introduces an incompatible format change.
Does this PR introduce any user-facing change?
No. RocksDB state store is a new feature in Spark 3.2, which has not yet released.
How was this patch tested?
The new unit tests.

Test build #142499 has started for PR 33749 at commit f1c8e35.

@xuanyuanking @HeartSaVioR

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/47000/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/47000/

Test build #142499 has finished for PR 33749 at commit f1c8e35.

This patch passes all tests.
This patch merges cleanly.
This patch adds the following public classes (experimental):
 case class ConfEntry(name: String, default: String)

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/142499/

cc. @viirya

cc. @gengliangwang as well as this PR targets to Spark 3.2.

I reverted the changes for the fullName bug. Feel it's better to fix it in a separate PR.

Test build #142574 has started for PR 33749 at commit 7571b09.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/47075/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/47075/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/47075/

I see the benefit of ability on overriding the table format version, but it also brings confusion as well. This is not the same as we have been doing from state format version.
For state format version, we restrict modifying the value once it is set in any way (regardless default value or user defined value), so the value is unchanged in the lifetime of the query. Here we allow to set any value to override the config, which leads that multiple table format versions exist in SST files. This won't hurt if RocksDB version in Spark can understand all of these versions, but it is still less simpler.
If we'd like to make this simpler as possible, it'd be better if we just disallow overriding the config. If we still want to open the chance to override based on the behavior that having multiple table format versions doesn't matter, let's restrict setting "lower" version than checkpoint to ensure there are no SST file having higher table format version than checkpoint config.

Test build #142574 has finished for PR 33749 at commit 7571b09.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/142574/

@zsxwing @HeartSaVioR I am going to cut RC1 this week. Please come to an agreement on the version overriding ASAP. Thanks!

I'm OK in either way I proposed. I'd like to see the approach be changed as there's a possibility where SST file has higher version than the version marked in checkpoint, and it makes the problem uneasy to discover and resolve.

@HeartSaVioR Yeah, totally agree that this is too complicated. Since this is the first release of RocksDB state store, allowing users to overwrite the config value in the checkpoint is not needed. We can revisit this in future when RocksDB has a new format. I updated the PR to disallow overwriting. So a query will use the same rocksdb format version during its entire lifttime.

Test build #142617 has started for PR 33749 at commit f83ab0b.

Kubernetes integration test starting
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/47118/

Kubernetes integration test status success
URL: https://amplab.cs.berkeley.edu/jenkins/job/SparkPullRequestBuilder-K8s/47118/

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder-K8s/47118/

Test build #142617 has finished for PR 33749 at commit f83ab0b.

This patch passes all tests.
This patch merges cleanly.
This patch adds no public classes.

Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/SparkPullRequestBuilder/142617/

I'll merge this early tomorrow if there's no further comment, or @viirya is OK with this. cc. @viirya

I will cut 3.2.0 RC1 after this one is merged.
cc @viirya

Thanks! Merging to master/3.2.


do spellcheck when cursor goes over text, not just after space / return

if you go back and fix a spelling error, then moving past the end of the word should trigger an update and clear the error tag if corrected.  right now you have to re-enter a space to trigger the update.

Yes, good idea. I'll fix that.

Also noticed that mispeled. doesn't show as an error because of the period but the spell checker in "issues" does catch it :)
I'll start with that fix

Doesn't look like it to me in my test just now.. I'm using chrome.  anyway, that would lead to a lot of false alarms I think..  and if you're typing fast you'd miss some.  I think the current strategy is good..

I meant that it didn't look like chrome was using pauses to spell-check words mid-word.. :)

and you can expt with mid-word stuff but my sense is that it will produce a lot of false alarms... and if you click away, then I think we don't need to worry about it.  this is really just to catch stuff as you're writing some text in a normal sequence -- can always go back and run spellcheck on it later..

Found that my repositories were out of sync and the commit/push didn't really happen. Had to do "git reset --hard origin/master". You should now find that words followed by period, comma, etc are correctly checked. I'll fix the clear tag issues today.

un-tagging for learn/ignore is in

working well!  one thing overall about spelling: I'm constantly having to teach it about the plural forms of words.  Not sure there is anything sufficiently general to do about that, but perhaps if we did have a dictionary with singular and plural forms, that might help..

I'll think about that.


why not set the property of store as readonly, can only be set by wrapper function?

What problem is this solving
const store = useXXXStore()
store.counter++
thus we can't know where and when it changed
Proposed solution
store's property will be all readonly reactive object
Describe alternatives you've considered

This is intentional design and there is already an open issue about read only state

This is intentional design and there is already an open issue about read only state

Could you reveal more information, such as documentation or a link to an issue?


Water bug makes you swim in the air

If you place two torches right under the water liike:
ooooTR
ooooTR
oooooR

Where o means water, T means torch, R means stone.
You go into the torch block and you can swim out of the water and fly in the sky.

Btw this is the first time I play this game and I accidently found this bug. lol

This sounds awesome, let's call it a feature! I  probably messed up some checks last time I touched the player movement.
And thanks for reporting!

@skaldarnar You're welcome, will you make a networking library so I can make a plugin extensible server?

This is a duplicate of #1633 complete with a comment from @skaldarnar last time it was noted :D Up for fixing it soon?
@DefinitlyEvil - huh on the networking library? Current plugins (modules) cover both server and client side. There are also some alternative extensions like the WorldViewer that uses the engine to do stuff like visualize how a world will look given a particular seed and world config. Could you elaborate on what you're wanting to do?

@Cervator I'd love to help. Where can I find the networking documentation please? Or I have to do some Java reading?

@DefinitlyEvil you generally don't need to worry about networking - the engine hides all those details and adding new stuff in modules just works based simply on the mode you pick. If you want a system (handles logic) that works only on the server (say a plant simulator) you mark the system as follows:
@RegisterSystem(RegisterMode.AUTHORITY)
public class MyServerOnlySystem extends BaseComponentSystem {

So specifically that means the system will only execute on whatever the authority is, which would be a server in a split server/client setup (like headless) or the local instance of the game if you're running single player.
If you want to handle some data (stored in a Component) in a particular way you likewise annotate it in some fashion, like:
    @Replicate(FieldReplicateType.SERVER_TO_OWNER)
    @Range(min = 0, max = 10)
    public float speedMultiplier = 1.0f;

If you want an entity, like a chest, to work in a networked fashion you simply give it a NetworkComponent and the engine handles the rest. Fancy objects (like chests) are defined in JSON prefabs where you can attach Components simply like:
    "Network": {
    }

In this case the Component has no added config so the block is empty. But the Component is still added.
For the full chest prefab see https://github.com/MovingBlocks/Terasology/blob/develop/modules/Core/assets/prefabs/chest.prefab
Generally the best way to approach something is look for the most similar existing example, dig around in the code a bit to understand how it works, then figure out what you want to do differently. If you're trying to do something radically different then it helps to ask in a forum thread and we can advise. Just good to have an idea of what you're trying to do :-)
To learn more check out the wiki here on GitHub, maybe starting with an overview of how our entity system works: https://github.com/MovingBlocks/Terasology/wiki/Entity-System-Architecture

@Cervator Woah that's much more complicated than Minecraft, I guess I have to bury myself into the code for a while. Thanks. ;-)

@Cervator I wanted to do is to implement or use your networking code and users can add component as plugins, like Bukkit or does.

It helps to forget everything you know about Minecraft/Bukkit for a moment and just look at a simple example in Terasology. I described some of the cases where you can interact with networking as I wasn't sure what you were trying to do. But for the vast majority of the time you just write a System, a Component or two with some data to manipulate, and a few prefabs to make fancy blocks or items - and the most you've thought about is whether the system should execute on the server or the client.
I don't know MC/Bukkit in detail but suspect Terasology is much easier. You never ever need to worry about networking protocols, doing anything custom over the network, or really anything networking at all. Just your desired behavior - the logic and content you want to see.
After you understand how it works and have done something simple you'd like to see work then you can reconsider whether anything from MC/Bukkit land is useful for what you want to do.
 Chances are you'll be able to do so extremely easily.
Most the time you don't have to worry about the engine at all. You can just mod and create content to your heart's content.

@Cervator I want to make a plugin-exensible server, like login plugin(chat command based).

@DefinitlyEvil can you link to an example / something similar? I take it something like that exists for MC/Bukkit.
I'm having trouble visualizing where that fits with Terasology. User identities and chat already works. What would this extend? Calling out from a game server to some external service?
One thing that has come up in the past is a mapping utility like DynMap. We already have a WorldViewer utility that uses the engine to see how a world would look after generation using various configuration. However it doesn't interact with a normal running game.
A DynMap analogue might work in some similar fashion, although yes it might need more networking options exposed, like having the engine register a REST api through which you could request mapping data from an external utility. If you then wanted to have in-game admin options for that via console commands (distinct from chat) then yeah that's another interface of some networking sort that needs to be exposed.
Is that the kind of thing you're curious about?

@Cervator Yes that's what exactly I want to do! ;-D

Alright, glad I finally understand, thanks for bearing with me :-)
At this point we should probably take this to a suggestion thread in the forum - I've started one up: http://forum.terasology.org/threads/game-server-web-api.1406/
Could you please register there and voice your interest in working the item? We can get some others involved in providing design advice when we have a willing worker :-)
I'm going to close this issue now since the original problem is a dupe and the rest of the discussion sort of went off on a tangent :D
See you in the forum!

@Cervator See you on the forums.

 :-(

Odd, I just checked it and get an image fine. Are the options to reload or listen to audio working?

@DefinitlyEvil if you can't reach the image from your location somehow just send me your preferred username + mail address to<EMAIL_ADDRESS>and I'll set up an account for you.

@Cervator Nevermind, it works for me today. ;)

Incidentally, the original issue reported here is now fixed :-)
Hope you're still around, @DefinitlyEvil ! We have many more things to do :D

@Cervator I am always here to help! :D

@DefinitlyEvil are you still poking at the code to learn about networking and related things, or waiting for more clues, direction, time, or anything? :-)
I'm getting a bit more involved with REST API stuff and maybe microservices at work which might eventually help with giving a Terasology server some fun web stuff. But I imagine it'll be January before I really get a chance to get into it.

@Cervator I am working on some other real life stuffs. xD And I checked the networking code it is using a crazy complicated networking framework with Apache Protobuf which I am not familiar with it. Btw I will probably be free in July(2016).

RL can be a cruel mistress! :-)
Yep the networking deep in the engine is probably one of the trickier bits to work with. If you have some free time look for some of the basic contributor friendly issues to get started and work toward big stuff like networking. Now, later, July, or sometime, there'll always be more work! Just keep in touch :-)

Oh, and just for the record you still wouldn't actually need to interact with the networking at the protobuf level. Forget all the mess from MC land :-)
In this case you'd simply expose a new endpoint with REST activated then listen for incoming requests. If some request comes in asking for number of players online you then just hit the right engine method to get that number and put it in a REST response. I doubt we'd want the REST API running protobuf (unless there's some benefit for that in sending back large quantity of map data)

@Cervator I think there is already a library for REST server maybe? If now we can use Netty it's more powerful. ;)

We already have Netty hooked up :-)
https://github.com/MovingBlocks/Terasology/blob/develop/engine/build.gradle#L98
And yeah, library all the things!

nice


fix bug with preprocessor resuming from checkpoints, changed with the…

Fix a bug with preprocessor resuming from checkpoints.
The bug was introduced when I changed the approach to timestepping to use while _time < _end_time:.
The problem was that when resuming from checkpoint, the computed end time for the run would be, e.g., 10 * timestep, but if resuming from a run that already ran 100 * timestep, then the current model time would be greater than the end time and the while loop would never enter.
So, the fix is to compute the new end time as:  _end_time = _curr_time+ (computed_time). In the case of a fresh run (not resuming from checkpoint), _curr_time is just 0.

Codecov Report

Merging #117 (da7959b) into develop (dcd4f61) will decrease coverage by 1.84%.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##           develop     #117      +/-   ##
===========================================
- Coverage    80.35%   78.50%   -1.85%
===========================================
  Files           11       11
  Lines         1965     1796     -169
===========================================
- Hits          1579     1410     -169
  Misses         386      386

Impacted Files
Coverage Δ

pyDeltaRCM/preprocessor.py
95.94% <100.00%> (-0.13%)
:arrow_down:

pyDeltaRCM/shared_tools.py
44.82% <0.00%> (-5.18%)
:arrow_down:

pyDeltaRCM/model.py
90.00% <0.00%> (-2.69%)
:arrow_down:

pyDeltaRCM/water_tools.py
58.49% <0.00%> (-1.07%)
:arrow_down:

pyDeltaRCM/sed_tools.py
31.06% <0.00%> (-0.87%)
:arrow_down:

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 dcd4f61...da7959b. Read the comment docs.


Fix some Go test dependencies [phab:D120]

Created by schroederc at 2015-03-03 23:44:52:

zarko accepted this revision at 2015-03-04 00:09:22

schroederc closed via commit dfec460970af04f5133e184f534f2b0ea1a4f399 at 2015-03-04 00:13:26

schroederc closed via commit e9ac511f91c29db17b0d0944f57362710318571e at 2015-03-04 00:13:26


Declare support for Python 3.9

Working for me with Python 3.9.1 on macOS 10.14 Mojave.

Sorry for the delay. Thank you for this contribution.


[notification-hubs] Moving to core-lro v3

Packages impacted by this PR

@azure/notification-hubs

Issues associated with this PR
Describe the problem that is addressed by this PR
Moves @azure/notification-hubs to @azure/core-lro v3
What are the possible designs available to address the problem? If there are more than one possible design, why was the one in this PR chosen?
Are there test cases added in this PR? (If not, why?)
Provide a list of related PRs (if any)
Command used to generate this PR:**(Applicable only to SDK release request PRs)
Checklists

[ ] Added impacted package name to the issue description
[ ] Does this PR needs any fixes in the SDK Generator?** (If so, create an Issue in the Autorest/typescript repository and link it here)
[ ] Added a changelog (if necessary)

API change check
APIView has identified API level changes in this PR and created following API reviews.
@azure/notification-hubs


Feature/doneCallback uses recent viewport parameters

Do not pass the viewport parameters, because they may have changed between the time we request the scroll, and the effective execution of doneCallback.

Coverage increased (+0.0006%) to 3.861% when pulling 6e97a15f29f6853c58c0641e37320e74deadc3c9 on adreyfus:feature/doneCallback_use_recent_viewport_parameters into bd57176c35b9f40311d41e2c948c43b9384c728e on chafey:master.

Coverage increased (+0.001%) to 3.862% when pulling 6e4bf2d4233a2bf002eeda9acddbec6a4a4df516 on adreyfus:feature/doneCallback_use_recent_viewport_parameters into bd57176c35b9f40311d41e2c948c43b9384c728e on chafey:master.


Cc limits

Type of change

Enhancement / new feature

Description
Fixes #326 and #327 by adding resource limits and requests to the CC and TC YAML resources. The numbers used here were determined by experiment, in both cases two simultaneous reconciliations were observed with stable heap and CPU usage. When significantly lower numbers were use errors were observed.
Checklist

[ ] Write tests
[x] Make sure all tests pass
[ ] Update documentation
[ ] Check RBAC rights for Kubernetes / OpenShift roles
[ ] Try your changes from Pod inside your Kubernetes and OpenShift cluster, not just locally
[ ] Reference relevant issue(s) and close them after merging

@ppatierno we already support options to configure those in the topic-controller-config. We could, I suppose, set some defaults. But then how would the user configure the topic controller to run without any limits/requests? Maybe that could be done with an empty resources object, but I think that's pretty counter-intuitive: For statefulsets and deploymens not specifying any resources means you get whatever the cluster is prepared to give you, not some hard coded default. It would be odd if we did differently.

How many clusters can it take with these resources?

I established those numbers with two clusters.

How many topics can TC handle?

I established those numbers with two topics.

Do we want to give it some higher CPU limit?

My observations using visualvm were that CPU usage never exceeded about 15% and that was very transitory. But it's unclear whether that's 15% of the CPU available in the container, 15% of one host core or 15% of the total host CPU available. In any case I tried smaller numbers and it didn't work. It's worth noting that the ST are running slightly slower with these resources than without.

Do we want to write something about this into documentation?

The numbers we have here are basically a minimum. They won't be enough for a large installation. But these are examples and we would expect users to tailor them to their needs. I can add some words to that effect if you like.

My observations using visualvm were that CPU usage never exceeded about 15% and that was very transitory. But it's unclear whether that's 15% of the CPU available in the container, 15% of one host core or 15% of the total host CPU available. In any case I tried smaller numbers and it didn't work. It's worth noting that the ST are running slightly slower with these resources than without.

So one of the ideas is to increase the CPU limit as I suggested (i.e. making the CPU burstable - e.g. 200m request and 1000m limit). CPU bustability is easy and Kubernetes should be able to handle it quite well. And it migth speed up the ST again.

The numbers we have here are basically a minimum. They won't be enough for a large installation. But these are examples and we would expect users to tailor them to their needs. I can add some words to that effect if you like.

The examples are examples, but we are also shipping them pretty much as installation files. So maybe we should be more generous there.
Also, if you think these numbers are basically a minimum, we should really list this in the docu.

@scholzj better?


Fix PlaceOnGrid constraint generation in align/pdk/finfet

The constraint was only created for PMOS but not for NMOS devices.
Also, simplified the constraint so that both NMOS and PMOS can be placed on [0,0].

This PR is ready for review.


Query string being passed to every request in the chain

Hi,
I like to know how I pass query string only to the link I follow not the base link.
For example:
var baseUrl = 'http://api.test.com/resource';
var api = traverson.jsonHal.from(baseUrl);

api.newRequest()
    .follow('follow_link')
    .withRequestOptions({
        headers: {
            'Content-Type': 'application/hal+json',
            'Accept': 'application/hal+json'
        },
        qs: {
            'sortBy': 'date'
        }
    })
    .getResource(function (error, document) {
        //do something
    });

If i run the sample code above, query string parameter is also passed to the first request.
Like http://api.test.com/resource?sortBy=date
How can I prevent this situation? I only want query string to be passed to follow_link
Thnx,
Erdal

Currently, this is not possible. I'll leave this open as a feature request.

Actually, this seems to be a duplicate of #25, so I'm closing it.

#25 has landed in 1.1.0


Add a unified resize operation for detection and a resize op for recognition inference (don't merge)

Thank you for your contribution to the MindOCR repo.
Before submitting this PR, please make sure:

[x] You have read the Contributing Guidelines on pull requests
[x] Your code builds clean without any errors or warnings
[x] You are using approved terminology
[ ] You have added unit tests

Motivation
(Write your motivation for proposed changes here.)
Test Plan
(How should this PR be tested? Do you require special setup to run the test or repro the fixed bug?)
Related Issues and PRs
(Is this PR part of a group of changes? Link the other relevant PRs and Issues here. Use https://help.github.com/en/articles/closing-issues-using-keywords for help on GitHub syntax)

under further improvment.


Localization issues / UI text improvement

At contracts page, the description content varies depending on language settings:

English: "Search terms are connected using "or"."
German: "Suchbegriffe werden mit "und" verknüpft."

Also on contracts page: wage per hour should have 2 decimals.
The field "Research Group:" on the profile page is empty for HiWis. Wouldn't it be better not to display it, if it is empty or display something like "Research Group: <none>"
Edit user page: Missing comma in email description "Adresse , (!) an die E-Mail Benachrichtigungen verschickt werden"
Edit user page: German description for staff number sounds oddly ("Optional. Wird auf Stundenzettel PDFs eingetragen"). You could insert a hyphen between "Stundenzettel" and "PDFs" or change it to someting better sounding like "Optional. Wird auf dem Stundenzettel eingetragen"

Hi @toniSta ,
thanks for your reports!

[ ] At contracts page, the description content varies depending on language settings:


drag-target div obscures left side of page when not using containers

Thought I broke something in my app's JS which made a button no longer work, but turned out after upgrading to 0.95.0 the drag-target div floats over the left side of the page in desktop sized browsers.
See attached screenshot.

Try updating again, this should not happen.

Sorry I misspoke there, we decreased the size of the target so it should be better now. The drag target only takes up 15px. And it is expected that websites will have some content padding. You can fix it immediately on your site by using:
.drag-target {
  width: 15px;
}

Great thanks!


mysql duplicate key

使用0d04161b9ea1ea1793fb1a0c9c64a08103488867编译的版本，使用mysql 数据库作为tx event 存储，日志中发现下列错误
[EL Warning]: 2018-03-23 03:32:59.887--UnitOfWork(159067768)--Exception [EclipseLink-4002] (Eclipse Persistence Services - 2.7.1.v20171221-bd47e8f): org.eclipse.persistence.exceptions.DatabaseException
Internal Exception: com.mysql.jdbc.exceptions.jdbc4.MySQLIntegrityConstraintViolationException: Duplicate entry '1613' for key 'eventId'
Error Code: 1062
Call: INSERT INTO Command (COMPENSATIONMETHOD, EVENTID, GLOBALTXID, INSTANCEID, LASTMODIFIED, LOCALTXID, PARENTTXID, PAYLOADS, SERVICENAME, STATUS, VERSION) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)
bind => [11 parameters bound]

When multiple scanners detect the failed event and compensate at the same time, it needs to store the compensate command only once. This is why we introduce the eventId as a unique key. With this constraint, no duplicate compensate commands will be stored in db.

@eric-lee-ltk  I think we need to avoid the multiple scanner handle the same compensation to resolve this kind of issue.


Ci timeout

Describe your changes
fixed the error causing the CI to get stuck due to the recent jupyter_client 8 release. migrating notebook execution to ploomber-engine fixes the problem
Issue ticket number and link
Closes #x
Checklist before requesting a review

[ ] I have performed a self-review of my code
[ ] I have added thorough tests (when necessary).
[ ] I have added the right documentation in the docstring and changelog (when needed)

:books: Documentation preview :books:: https://sklearn-evaluation--256.org.readthedocs.build/en/256/

sure

Pull Request Test Coverage Report for Build<PHONE_NUMBER>

0 of 0   changed or added relevant lines in 0 files are covered.
2 unchanged lines in 1 file lost coverage.
Overall coverage increased (+0.07%) to 94.301%

Files with Coverage Reduction
New Missed Lines
%

src/sklearn_evaluation/telemetry.py
2
96.92%

Totals

Change from base Build<PHONE_NUMBER>:
0.07%

Covered Lines:
2747

Relevant Lines:
2913

💛  - Coveralls


Conceal color too dark

Concealed math symbols in LaTeX are too dark to see.

Conceal is linked to fg_gutter so I would need to override fg_gutter which then affects a number of other elements that depend on fg_gutter. Could the default be changed to something brighter?

There's probably another hl group we can change.
Can you post an example .tex file with the settings you use to show as i your example?

I made it almost the same as comments now.

@folke Sorry for the late response
The sample .tex in the picture is
This is a test.

Inline math $\sqrt{x^2 + y^2}$

Display math

\[
	a^2 + b^2 = c^2
\]

The conceal settings are VimTeX's defaults and set conceallevel=2.
dark3 is still a little too dark I think. The concealed characters are harder to see when the formula contains many brackets as TeX syntax often have. See:

Another good contender is dark5. It's slightly brighter but fractions are more visible. fg would be even better but I'm not sure if that will affect other use cases for conceal. See dark5:

Formula in example is
$\int{(-\frac{1}{4}(e^{-4t^{2}} + e^{4t^{2}-8}))dt_{1}$

I'd rather not make Conceal any brighter, but like I said there's probably another HL group we can change instead.
What plugin are you using to render the latex doc?
Would be great if you could post a screenshot of running this on those characters

@folke I'm using VimTeX to render syntax conceal.
Here is the result from running :TSHighlightCapturesUnderCursor

Apparently it's not possible to style concealed sections with different hl groups, so I updated the style of Conceal to use dark5 per your suggestion.


feat(ado/infra): introduce monorepo structure using lerna

Details
We plan to host the source code for both the GitHub action and an ADO extension in this repository. The two projects will share core functionality, but differ in small ways:

different dependencies/code for pull request comments and check runs
different metadata files (GH action.yml vs ADO task.json)
different deployment mechanisms

Jacqueline and I are interested in hearing feedback around whether this file structure seems reasonable or whether it feels overengineered.
As a dev, it would be nice to:

easily tell apart GH-specific files from ADO-specific files
limit deployed dependencies to only the ones required for that product
without too much overhead or complexity.

This PR explores a lerna/yarn-workspaces monorepo similar to setups in accessibility-insights-web or accessibility-insights-service. Most of the changed files are renames (moving files from the root to packages/gh-action/).
Alternatives to this approach include:

(simplest) share package.json for both products; create two webpack entries
maintain separate package.jsons without lerna; fewer utility scripts

This PR creates the following approx file structure:
- lerna.json
- package.json
- yarn.lock (combined)
- common config file templates (prettier, jest, tsconfig)
- packages
  - gh-action
    - package.json
    - webpack.config.js
    - configs (prettier, jest, tsconfig)
    - src
    - dist
      - index.js / package.json / yarn.lock (copies)
  - shared
    - package.json
    - configs (prettier, jest, tsconfig)
    - src
  - ado-extension (not in PR, planned for future)

Not in this PR:

The shared package currently contains all of the source code except index.ts & gh-action metadata files. Eventually deps like @octokit will move to gh-action instead of shared, alongside client code like pull-request-comment-creator (packages/ado-extension will follow the same pattern). The IOC containers will also move to each project.
Updating the README & docs to describe the new structure; I will do this in a subsequent PR
Adding the ado-extension package

Drawbacks/workarounds:

create-image-package-metadata.js expects externals (axe-core, etc) to be in packages/gh-action/package.json. Since these dependencies are in packages/shared/package.json, I've updated create-image-package-metadata to look there too. If we add these externals to packages/gh-action/package.json explicitly, the package.json files start to share many dependencies (is it still worth separating them then?)
you have to build shared before building gh-action to pick up changes; we should look for ways to simplify this

In order to avoid duplicate versioning of dev tools (webpack, typescript, jest) I moved many devDependencies into the root folder. It means you need to run yarn install once at the root. The tooling will search for parent node_modules by default. However, if a devDependency is specific to a particular project, or if it is a CLI tool that is path-dependent, it likely needs to go in the individual project folder (relevant issue one and relevant issue two). I didn't see examples of this in our project yet.
Pull request checklist

[ ] Addresses an existing issue: Fixes #0000
[ ] Added relevant unit test for your changes. (yarn test)
[ ] Verified code coverage for the changes made. Check coverage report at: <rootDir>/test-results/unit/coverage
[ ] Ran precheckin (yarn precheckin)
[ ] (after PR created) The Accessibility Checks (pull_request) check should fail. All other checks should pass.

Codecov Report

Merging #752 (a1db459) into main (ddfbaa8) will increase coverage by 1.89%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #752      +/-   ##
==========================================
+ Coverage   94.84%   96.73%   +1.89%
==========================================
  Files          25       25
  Lines         563      552      -11
  Branches       54       54
==========================================
  Hits          534      534
+ Misses         29       18      -11

Impacted Files
Coverage Δ

packages/gh-action/src/module-name-mapper.ts
20.00% <ø> (ø)

packages/shared/src/axe/axe-info.ts
100.00% <ø> (ø)

packages/shared/src/content/mark-down-strings.ts
100.00% <ø> (ø)

packages/shared/src/content/strings.ts
100.00% <ø> (ø)

packages/shared/src/index.ts
0.00% <0.00%> (ø)

packages/shared/src/ioc/ioc-types.ts
100.00% <ø> (ø)

packages/shared/src/ioc/setup-ioc-container.ts
100.00% <ø> (ø)

packages/shared/src/local-file-server.ts
100.00% <ø> (ø)

...ackages/shared/src/logger/console-logger-client.ts
100.00% <ø> (ø)

packages/shared/src/logger/log-level.ts
20.00% <ø> (ø)

... and 16 more

Continue to review full report at Codecov.

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

It feels a little concerning that this increases the size of the bundled index.js by 39%; I wouldn't have expected it to change materially with this PR, so I'm suspicious there might be something missing here. Did you already investigate why the size increased so substantially? Are we bundling devDependencies accidentally?

It feels a little concerning that this increases the size of the bundled index.js by 39%; I wouldn't have expected it to change materially with this PR, so I'm suspicious there might be something missing here. Did you already investigate why the size increased so substantially? Are we bundling devDependencies accidentally?

@dbjorge I think this is odd but expected behavior. Here's what I found using the vs-code diff view:
index.js gained about 3000 lines / 200,000 characters, almost all from the npm encoding library. The relevant snippet is below:
before:
let convert;
try {
	convert = Object(function webpackMissingModule() { var e = new Error("Cannot find module 'encoding'"); e.code = 'MODULE_NOT_FOUND'; throw e; }()).convert;
} catch (e) {}

after:
let convert;
try {
	convert = __webpack_require__(/*! encoding */ "../../node_modules/encoding/lib/encoding.js").convert;
} catch (e) {}

This code comes from an old version of node-fetch. The README at that tag states: "(This API requires an optional dependency of the npm package encoding, which you need to install manually. webpack users may see a warning message due to this optional dependency.)"
Because encoding wasn't specified in the dependencies of node-fetch, we never noticed this until now. In this PR, encoding is included as a dev dependency of lerna. webpack resolves the module and includes its source in index.js.
The other changes in the diff seem much smaller, so I think this is the primary cause of the change. I searched for some devDependencies like jest, and didn't see them in index.js.

Discussed the encoding package thing with @karanbirsingh offline. He's going to look into avoiding bundling the new package (probably using IgnorePlugin like this comment suggests). Clearing my review so it doesn't continue to block the PR after that's addressed.


Accessibility and headings hierarchy for the CSS page.

Just a few adjustments here.
Below are the before-and-afters for all the changes in this PR.

Thanks for your hard work on this/these. I personally like the changes you've made :+1:

aw... thanks @kkirsche!
BTW, how can I learn more about what's cooking in v. 4?

@StevenBlack honestly I don't know. It's kind of a secret between the admins and collabs. :smiley: Sorry! Wish I knew as I would love to try to contribute to it and help out with it

@cvrebert @patrickhlauke: LGTM, any objections before merging this?

None from me.

Actually, @StevenBlack has made quite a few PR on this matter so we should merge all of them. As far as I can tell, they all look good.

:shipit:


Allow for configuring a specific CML version

I haven't played with the task branch yet so, with those changes in mind how relevant would the following be?
I want to be able to target a specific cml version here: https://github.com/iterative/terraform-provider-iterative/blob/8121c664c4cc557059e44a332636d61a715c21dd/iterative/resource_runner.go#L288 similar to this

adding an optional cml_version / defaulting to @dvcorg/cml
https://github.com/iterative/terraform-provider-iterative/blob/8121c664c4cc557059e44a332636d61a715c21dd/iterative/resource_runner.go#L409-L433
Thoughts @DavidGOrtega @0x2b3bfa0 ?

I feel like this sort of thing (deps & versions of deps) should be part of the user's startup script or task instead...

This suggestion is not applicable to the iterative_task resource, because it isn't aware of CML in any way, and this would be handled on the users' startup scripts as @casperdcl points out.
Although, the legacy iterative_cml_runner is specific for CML runners and, as such, it would make sense to allow pinning a given version. 🤷🏼♂

Still, we[^1] chose to keep CML under the same minor version and avoid introducing breaking changes, so in theory, there shouldn't be any need of pinning it.
[^1]: actually they, in the year 1 before @0x2b3bfa0

I'll play with task today, and I have a few ideas how I want to use it.

@dacbd I think that might be very interesting. CML should be backwards compatible, at least thats the philosophy but since we allow to pin in setup-cml it should make sense here.
Just only one possible issue:
I thinks is a good idea replace CML npm package and node deps with the standalone CLI after #842
Any thoughts @dacbd @iterative/cml ?

I think it depends on how it's executed. I haven't really experienced any issues with the node deps with CML but I am well aware of the issues the ecosystem can have, plus it makes installing/portability simpler which I feel is your guys targeted goal.
I see/have no issues against a standalone CLI. I personally feel that tools like these should have strong control/influence on their dependencies. I did a lot of work with the hapi.js framework a long time ago and their control over their dependencies offered a stable product than others.
You never know what bonehead doesn't have 2FA on their npm account and now your dependency has a crypto-miner or a package.json build script dialing home, granted these things get caught pretty fast these days, and realistically they normally have a low impact but the damage to the "name" is done anyway.

https://github.com/iterative/cml/releases/latest/download/cml-linux

I'll take a look, plan to incorporate something this weekend that you can take a look at.

I'd even remove the “classical” NPM support and include only the required logic for downloading binary releases. Apart from that, looks good to me! 🎉 @iterative/cml?

I'd even remove the “classical” NPM support ...

This part of my covert 🔐 effort to make testing custom changes(in cml/tpi) easier (npm provides a convenient method for "installing" directly from a git ref), but that is secondary to actual function.

Tip: cd iterative && go test -update to fix snapshot tests

I will make a couple house cleaning changes tonight and mark it ready. (saw at least one empty line that was superfluous)

Boy, can I say my brain wasn't working tonight for some reason...
After brute-forcing myself back to functional with some hacky e2e testing, I formed a couple questions:
Should this be updated further?
https://github.com/iterative/terraform-provider-iterative/blob/35ce161a602f7b6ad1b59ccf5c555bda5c66285e/iterative/resource_runner_test.go#L35-L70
Should Installing CML be part of .setup https://github.com/iterative/terraform-provider-iterative/blob/master/environment/setup.sh ?
Should that script actually log into that file? /var/log/cml_stack.log

I'm fairly confident that I have unbroken all the things I broke.
hacky e2e test:
git clone git@github.com:dacbd/terraform-provider-iterative.git
pushd terraform-provider-iterative
git checkout target-cml-version
make build
make install
popd
git clone git@github.com:dacbd/cml.git
pushd cml
npm install
sed -i 's/source = "iterative\/iterative"/source = "github.com\/iterative\/iterative"/g' src/terraform.js
sed -i 's/return template;/console.log(template);return template;/g' src/terraform.js
bin/cml.js runner \
    --single \
    --token=***\
    --cloud=aws \
    --cloud-region=us-west-2 \
    --cloud-type=t3.micro \
    --cloud-startup-script=ZWNobyAiZWNkc2Etc2hhMi1uaXN0cDM4NCBBQUFBRTJWalpITmhMWE5vWVRJdGJtbHpkSEF6T0RRQUFBQUlibWx6ZEhBek9EUUFBQUJoQkRZZDNzc2E2TDE1alFDNWJja0oydmlXbEExdEJ5Z3hlV295M3MwUzE0WkhNeFVNZnA3dTJ5cWZpY3BITzViK3BqZ2c3THorODBJYncxNTd3YVRaUE0reGJGMi9LR3FTN2FZVjBML1I4VmJXalZFcHp4WkVlb3hTQ3dGQTF0SFdVZz09IGNhcmRubzowMDA2MTE4OTU1NzUiID4+IC9ob21lL3VidW50dS8uc3NoL2F1dGhvcml6ZWRfa2V5cwo=
popd
rm -rf cml
rm -rf terraform-provider-iterative

I tested it with aws/gcp (gcp lets you view the startup script the instance was made with which was nice)
I did not test all of the paths basically just cml_version = "" ie default/latest since there isn't a method in cml runner to set it.

lol wut google error?
I saw the instance appear with a spinning status in the GCP dashboard but they spit this error out...
https://gist.github.com/dacbd/41b9821c200dd38709a3f671b830ac49

Made a cml-version branch to test additional values

cml_version = ""
cml_version = "0.11.1"
cml_version = "v0.11.1"
cml_version = "git://github.com/dacbd/cml.git#cml-version"
cml_version = "0.10.0"
cml_version = "0.9.0"
cml_version = "v0.8.1"

(Outdated confirmation)

Should this be updated further?

Yes.

Should Installing CML be part of .setup?

No, the setup section only takes care of Node.js, Docker and Nvidia drivers.

Should that script actually log into that file? /var/log/cml_stack.log

No, despite the name, that file is just being used as a flag. 🙈


App Error When Pending Update

The pending update created an error. After clicking OK, the app closed and Windows asked for permission for LBRY to make changes to the system. After relaunch the navigations bars were missing.
After closing the app and restarting, everything was OK again.

I think this was a hiccup on your end, haven't seen this from anyone else. Closing for now unless it pops up again
You can try reinstalling 0.21.5 and then upgrading again to see if it's reproducible.


AMBARI-24761 - Infra Manager: hive support for archiving Infra Solr

What changes were proposed in this pull request?

When archiving documents stored in solr collections the output json file is compressed. Change output file compressor from tar.gz to bzip2 because Hive can not process tar.gz
When serializing Documents to json the integer type fields should be serialized as integers not as strings.
Instead of

"line_number":"315",

use
"line_number":315,

because these fields are declared as integers in the target Hive table and Hives's org.apache.hive.hcatalog.data.JsonSerDe serializer expects integers.

adjust UTs and ITs

How was this patch tested?

Run UTs and ITs
Manually:

Deploy Ambari and a cluster including Infra Solr, Infra Manager, Logsearch, Ranger, Hive, Hdfs
Enable Ranger plugins
Create folders on HDFS to store exported data and set permissions to allow reading from the folders for Hive and write for Infra Manager
Export data from Solr using Infra manager to HDFS
Create external tables in Hive for exported data (https://docs.hortonworks.com/HDPDocuments/Ambari-<IP_ADDRESS>/bk_ambari-operations/content/amb_infra_arch_n_purge_command_line_operations.html)
Select data from the tables using Hive Query

Refer to this link for build results (access rights to CI server needed):
https://builds.apache.org/job/Ambari-Infra-Github-PR-Builder/9/
Test PASSed.


Wrong compiler-error when the inner type can not be serialized

At the following case the error message is realy missliading/wrong.
Boopickle should tell the user, that ATest could not be serialized instead of Seq which is not true.
class ATest

// works fine
boopickle.Unpickle[Seq[String]].fromBytes(e.data.asInstanceOf[ByteBuffer])
// this one is missleading and wrong
boopickle.Unpickle[Seq[ATest]].fromBytes(e.data.asInstanceOf[ByteBuffer])
// this one contains an informative error messages
boopickle.Unpickle[ATest].fromBytes(e.data.asInstanceOf[ByteBuffer])

[error] C:\Users\florian.kirmaier\Dropbox\git\Sample.scala:49: The referenced trait [[Seq]] must be sealed. For non-sealed traits, create a pickler with boopickle.CompositePickler. You may also get this error if a pickler for a class in your type hierarchy cannot be found.
[error]     boopickle.Unpickle[Seq[ATest]].fromBytes(e.data.asInstanceOf[ByteBuffer])
[error]                       ^
[error] C:\Users\florian.kirmaier\Dropbox\git\Sample.scala:50: Cannot materialize pickler for non-case class: simplefx.html.SimpleFXElement.ATest
[error]     boopickle.Unpickle[ATest].fromBytes(e.data.asInstanceOf[ByteBuffer])
[error]                       ^
[error] two errors found
[error] (scalajs/compile:compile) Compilation failed
[error] Total time: 8 s, completed Jun 22, 2015 5:17:45 PM

Yeah, I've seen the same in my tests. Unfortunately the type information available at macro expansion time is not so clear, so it's difficult to tell where the error exactly is. That's why the error message also mentions the other option. Perhaps I need to add this case as a potential reason as well.

I will try my luck today ... maybe i will find a solution, but dunno


Sum row doesn't update as we make changes to the poll

Context
When we interact with a poll, the 'Sum' row doesn't update immediately as we are adding participants and making preferences. It only updates after the page reloads.
Steps to Reproduce
Steps to reproduce the behavior:

Create a new poll with the 'Group' preset (show results to participants immediately)
Open the poll link in another window
Add new participants and select preferences
Notice that 'Sum' row doesn't update when we are making changes

Expected result
Need to see aggregated results in 'Sum' row immediately
Actual result
'Sum' row does not change. It change only after page reload
References

@Morphclue  Happy to work on this issue if you can verify the issue and assign this to me.

@amandee27 Sure! If you need any help or some guidance feel free to ask.


[matching] assertMatch not raise exception when failed

According to document, assertMatch should raise MatchError on failure, but it actually didn't raise (and leaves a unused variable ok)

Fixed in PR


Unclear spec error message as output

I am trying to fix the parser spec for a modification I made, but I get this output as error
Parser parses "b = 0;puts foo -1, b"
     Failure/Error: node.should eq(Expressions.from(local_expected_node))

       Expected: b = 0
       puts(foo(-1, b))
        : Crystal::Expressions
            got: b = 0
       puts(foo(-1, b))
        : Crystal::Expressions

     # spec/compiler/parser/parser_spec.cr:21

I don't know if there is any other issue open like this, as I don't know how to look for it, and I also guess it's just a matter of how the ast node is constructed, but what can I do to know what's wrong?

Delete these three lines:
https://github.com/crystal-lang/crystal/blob/e2717c6cb1f639cd3f89a0889ec7c2d164ed5b7f/src/compiler/crystal/syntax/to_s.cr#L6-L8
Also feel free to send a PR with those three (four) lines removed.

I agree it would be more reasonable to let inspect print a structured view of the AST node instead of stringified code.

It would be nicer to have a more readable format for spec. Whole inspect is indeed more meaningful, but in case of articulated AST nodes it becomes hard to read.
By the way, I'll send the PR for the moment


add precommit workflow

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 85.33%. Comparing base (840e506) to head (177ea86).

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@           Coverage Diff           @@
##             main     #183   +/-   ##
=======================================
  Coverage   85.33%   85.33%
=======================================
  Files          18       18
  Lines        1786     1786
=======================================
  Hits         1524     1524
  Misses        262      262

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


The plugin doesn't seem to be loading my deno.json file

The plugin doesn't seem to be loading my deno.json file from the root of my project directory. I really don't like using double qoutes in my JS files.
{
  "options": {
     "singleQuote": true,
  }
}

What you have is not quite a valid deno.json. Fortunately you can fix this yourself:
{
  "fmt": {
    "options": {
       "singleQuote": true,
    }
  }
}


airy create --provider aws fails with helm chart error

Describe the bug

In text:
installing Helm charts failed with err:  helm run failed with error &Job{ObjectMeta:{helm-runner  default /apis/batch/v1/namespaces/default/jobs/helm-runner 0897d649-9901-475e-b137-344046a661e2 1399 0 2021-07-06 22:42:46 -0400 EDT <nil> <nil> map[helm-runner:true] map[] [] []  [{airy Update batch/v1 2021-07-06 22:42:46 -0400 EDT FieldsV1 {"f:metadata":{"f:labels":{".":{},"f:helm-runner":{}}},"f:spec":{"f:backoffLimit":{},"f:completions":{},"f:parallelism":{},"f:template":{"f:spec":{"f:containers":{"k:{\"name\":\"helm-runner\"}":{".":{},"f:args":{},"f:image":{},"f:imagePullPolicy":{},"f:name":{},"f:resources":{},"f:terminationMessagePath":{},"f:terminationMessagePolicy":{},"f:volumeMounts":{".":{},"k:{\"mountPath\":\"/apps/config\"}":{".":{},"f:mountPath":{},"f:name":{}}}}},"f:dnsPolicy":{},"f:restartPolicy":{},"f:schedulerName":{},"f:securityContext":{},"f:serviceAccount":{},"f:serviceAccountName":{},"f:terminationGracePeriodSeconds":{},"f:volumes":{".":{},"k:{\"name\":\"core-config\"}":{".":{},"f:configMap":{".":{},"f:defaultMode":{},"f:name":{}},"f:name":{}}}}}}}} {kube-controller-manager Update batch/v1 2021-07-06 22:42:49 -0400 EDT FieldsV1 {"f:status":{"f:active":{},"f:failed":{},"f:startTime":{}}}}]},Spec:JobSpec{Parallelism:*1,Completions:*1,ActiveDeadlineSeconds:nil,Selector:&v1.LabelSelector{MatchLabels:map[string]string{controller-uid: 0897d649-9901-475e-b137-344046a661e2,},MatchExpressions:[]LabelSelectorRequirement{},},ManualSelector:nil,Template:{{      0 0001-01-01 00:00:00 +0000 UTC <nil> <nil> map[controller-uid:0897d649-9901-475e-b137-344046a661e2 job-name:helm-runner] map[] [] []  []} {[{core-config {nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil nil ConfigMapVolumeSource{LocalObjectReference:LocalObjectReference{Name:airy-config-map,},Items:[]KeyToPath{},DefaultMode:*420,Optional:nil,} nil nil nil nil nil nil nil nil nil nil}}] [] [{helm-runner ghcr.io/airyhq/infrastructure/helm:0.23.1 [] [install --values /apps/config/airy-config-map.yaml --timeout 10m0s core /apps/helm-chart/]  [] [] [] {map[] map[]} [{core-config false /apps/config  <nil> }] [] nil nil nil nil /dev/termination-log File Always nil false false false}] [] Never 0xc0005c9d60 <nil> ClusterFirst map[] helm-account helm-account <nil>  false false false <nil> &PodSecurityContext{SELinuxOptions:nil,RunAsUser:nil,RunAsNonRoot:nil,SupplementalGroups:[],FSGroup:nil,RunAsGroup:nil,Sysctls:[]Sysctl{},WindowsOptions:nil,FSGroupChangePolicy:nil,SeccompProfile:nil,} []   nil default-scheduler [] []  <nil> nil [] <nil> <nil> <nil> map[] [] <nil>}},BackoffLimit:*6,TTLSecondsAfterFinished:nil,},Status:JobStatus{Conditions:[]JobCondition{},StartTime:2021-07-06 22:42:46 -0400 EDT,CompletionTime:<nil>,Active:1,Succeeded:0,Failed:1,},}

To Reproduce
Steps to reproduce the behavior:

From the CLI Installation docs for Linux:

curl -LO "https://airy-core-binaries.s3.amazonaws.com/0.23.1/linux/amd64/airy" -o "airy"
sudo install -o root -g root -m 0755 airy /usr/local/bin/airy

From the AWS instructions:

aws configure
airy create --provider aws

See error posted above

Expected behavior
I get a console like this, as described in the docs:

Desktop (please complete the following information):

OS: Fedora Linux 34

Additional context

Airy CLI Version: Version: 0.23.1, GitCommit: 6fb707c61f37b11b92228a2b5b142f80b0350cb9
AWS CLI Version: aws-cli/2.2.17 Python/3.8.8 Linux/5.12.13-300.fc34.x86_64 exe/x86_64.fedora.34 prompt/off

Thank you @chrisshaw for submitting this issue.
I tried to reproduce with the same version, on Ubuntu Linux, but couldn't do it. Even though 0.23.1 is an older version of the CLI, I don't think that this problem is version related.
I think the failure is caused by the helm job not being able to complete within the time frame of 10 minutes.
In order to confirm this, can you please send us the logs from the first helm-runner pod (if you still have the K8s cluster running):
kubectl logs $(kubectl get pods -l job-name=helm-runner --sort-by=.metadata.creationTimestamp | tail -n 1 | awk '{ print $1; }')

Thank you!

Yeah I think you may be right about that timeout. It took a good while.
Unfortunately I destroyed the cluster. Fortunately (?) I tried it again and it worked.

So... here are the successful logs anyway.
NAME: core
LAST DEPLOYED: Fri Jul  9 00:25:09 2021
NAMESPACE: default
STATUS: deployed
REVISION: 1
TEST SUITE: None

I'm unblocked, so I think it's safe to close this issue. I can tear down and rebuild a couple more times and can let you know if I can reproduce!


Audio distortion

When the audio speed is changed, it is distorted, theres a way to change speed without distorting voices?

There's currently no way. It might be possible from API 23, older API versions do no offer any audio time stretching algorithm.
Duplicate of #24


Extend pull-down in Parameter Select to more than 5 results

Please make the length of the pull-down search results to more than just the arbitrary 5, preferably to be determined in the Advanced Settings of the Parameter Select.
I have multiple persons in the database that have similar names: John Doe I, John Doe II, etc. and I want them all to be shown, not just the arbitrarily selected first five.
Thank you.

Hey @gcthys , you can do this already in NeoDash if you have the latest version.

All you have to do is go to the Parameter Select Settings -> Advanced Settings -> Value Suggestion Limit, and then you can set the suggestions to whatever number you want!

Hi @GQ16 , thanks for bringing that to my attention. I had discussed this some time ago with Niels and had missed it in the update, sorry!


Check for tslint.json before deleting

This package throws an error on install if tslint.json isn't present.
I added an if statement to check for the file before attempting to delete. Helpful if you've manually deleted it ahead of time or have already installed this package and are reinstalling or switching versions.

This isn't necessary... already addressed in v1.2


fix: Correct typo in TableReport docstring

represention is now representation.
pacakges is now packages.

thanks! we should merge #1126 to avoid these typos in the future :)

Thanks @rouk1


How to run gaps and create TMDB list?

Hi, it seems you have transitioned from a command line approach to a web UI approach. That's fine of course, but how can I run as a docker container to create a TMDB list? I see that issue #25 seemingly added the ability to populate a TMDB list, however, I am unable to get that to work using the following docker run command:
docker run \
        --rm \
        --name gaps \
        -t \
        -e DBAPIKEY=[redacted] \
        -e PLEXADDRESS=https://[redacted]/library/sections/1/all/?X-Plex-Token=[redacted] \
        -e TMDBLISTID=[redacted] \
        -e WRITETOFILE=true \
        -p 8443:8443 \
        --expose 32400 \
        housewrecker/gaps:latest

Is there a way to accomplish this? The web app works OK for me, but copying the list to the clipboard seems to be my only current output option, which isn't very useful IMHO.
Thanks

Did you follow the CMD line prompts?
It will prompt you for a URL that you must go to and approve access to your TMDB.  After going to the link you go back to the CMD line and Hit enter (some terminals require several enters).
Did any of that happen for you?

No, I get no command line prompts at all...

I'll have to look closer at this tomorrow. Where are you running it from ? Windows? Linux?
You may have better luck filling in the yaml and running the jar

Ubuntu 18.04, I'll try to figure out the yaml and run the jar as you suggest.

Which release did you pull? You need to use v0.0.3

I pulled v0.0.4, let me try v0.0.3

I was able to get this to work using v0.0.3... Had to build my own docker container as you only have v0.0.4 on docker hub. Will that functionality eventually make it into a future version?

Planning to, yes.
On Wed, Oct 23, 2019, 7:10 PM Jeff Thompson<EMAIL_ADDRESS>wrote:

I was able to get this to work using v0.0.3... Had to build my own docker
container as you only have v0.0.4 on docker hub. Will that functionality
eventually make it into a future version?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/JasonHHouse/Gaps/issues/66?email_source=notifications&email_token=AAICE7GXLL4N6MHBXHMI7M3QQDKYBA5CNFSM4JDRQTI2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOECDFDDI#issuecomment-545673613,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAICE7ELMLFMJJ2BVM54GQ3QQDKYBANCNFSM4JDRQTIQ
.

ok, i'll close this and just watch for future updates, thanks.


Feature:

page 49 in the Loops lesson, the main code is
#!/bin/bash

read -p "What is your name? " name

while [[ -z ${name} ]]
do
    echo "Your name can not be blank. Please enter a valid name!"
    read -p "Enter your name again? " name
done

echo "Hi there ${name}"

could be shortened to :
#!/bin/bash

read -p 'what is ur name ? ' name

if [[ -z ${name} ]]
then
        echo 'please insert some name ...'
        $0
else
        echo hello, $name
fi

and THX ❤

@c4ir0

read -p "What is your name? " name

while [[ -z ${name} ]]
do
   echo "Your name can not be blank. Please enter a valid name!"
   read -p "Enter your name again? " name
done

echo "Hi there ${name}"

could make in a function :
askname(){
#!/bin/bash
read -p "What is your name? " name
while [[ -z ${name} ]]
do
    echo "Your name can not be blank. Please enter a valid name!"
    askname
done
echo "Hi there ${name}"
}

therewith could by bad return value call it self as function (or how it names..)
as 0nelineer :
#!/bin/bash
read -p 'what is ur name ? ' name ; if [[ -z ${name} ]] ; then  echo 'please insert some name ...' ; $0 ; else  echo hello, $name ; fi

saves the lines in a big bash script
best

Hey @c4ir0, thanks for this suggestion, but if we use $0 the script itself might not be executable or not in the path, resulting in the following error:
# bash test.sh
what is ur name ?
please insert some name ...
test.sh: line 8: test.sh: command not found

This looks good! That is an interesting approach! Happy to see that you’ve been playing around and trying different things mentioned in the book and expanding on the information! Good luck with your studies!


[BUG]: Error when using gpt4all

Describe the bug
When using ggml-gpt4all-j-v1.3-groovy.bin error is thrown while running DB chat. Model is loaded fine. Other models work fine.
2023-08-12 12:13:36 | INFO | stdout | Get model path: DB-GPT/models/ggml-gpt4all-j-v1.3-groovy.bin adapter <pilot.server.chat_adapter.GPT4AllChatAdapter object at 0x7f3354349d80>
Environment used -- Linux with 64GB RAM and GPU with 3GB RAM. Issue also happens running in cpu mode. Setting DEVICE to cpu here (DEVICE = "cpu") inside pilot/configs/model_config.py
-- commented below and added new line DEVICE = "cpu"
DEVICE = (
"cuda"
if torch.cuda.is_available()
else "mps"
if torch.backends.mps.is_available()
else "cpu"
)
To Reproduce
Steps to reproduce the behavior:

Modify .env to use LLM_MODEL=gptj-6b
Run python pilot/server/dbgpt_server.py
Goto new chat, data chat or DB chat
This error is thrown - ERROR!can only concatenate str (not "NoneType") to str LLMServer Generate Error, Please CheckErrorInfo.: too many values to unpack (expected 2)

Issue also happens when doing simple chat. Type hello

Is there any other requirements to use ggml-gpt4all-j-v1.3-groovy.bin. Documentations mentions following

gpt4all is just a LLM model for local cpu test, if you want to experience more capabilities, it is recommended to use vicuna-13b-1.5.  The gpt4all model only supports native dialogs


Exclude with checkboxes

Excludes with checkboxes
If you configurate your settings.json with file excludes like this:

"**/.gitignore": true,
"**/*.bmp": false,

This should result in checkboxes in the VSCode settings like this:

[ x ]   "**/.gitignore": true,
[    ]   "**/*.bmp": false,

See screenshot:
Imgur VSCode screenshot
( 1 ) Should have those checkboxes to enable / disable this excludes
( 2 ) Is the code configuration equivalent of it

Why is this important?
If you configurate a list of excludes in your:
Name.code-workspace
you don't see what's blocked for in folder settings, same goes for user setting excludes.

For example:

You block:
*.png, *.jpg, *.jpeg, *.exe, *.msi
in your: Name.code-workspace\

But in sub-folder .projectFolder\executables\ you want to see files again you could use:
"**/*.exe": false,
"**/*.msi": false,

The next good thing about enable / disable checkboxes is, that you quickly can disable those excludes for a moment to see the files temporarly.
For example to see the .gitignore again to edit it.
You can to go:
Settings > Type: Excludes > Workspace
And there you just disable the checkbox from .gitignore to see the file again, work with it and when your done you can enable the checkbox again.

It's often kinda complicated to configurate the excludes over:

User setting
Workspace setting
Folder setting

This little feature would help a lot to have more overview what's blocked and what's not.

For example you could have this code in your User-Settings, Workspace-Settings and Folder-Settings:
  "files.exclude": {
    "**/.vscode": true,
    "**/*.code-workspace": true,
    "**/.gitignore": true,
    "**/*.bmp": true,
    "**/*.ico": true,
    "**/*.jpeg": true,
    "**/*.jpg": true,
    "**/*.png": true,
    "**/*.rar": true,
    "**/*.zip": true,
    "**/*.exe": true,
    "**/*.msi": true
  },

Yes this would be "redundant" but now it comes!
You now see all the same excludes in all 3 setting places. If you want to "unblock" a certaint file type now you just quickly go into Folder-Settings and disable the checkbox from the file you want to unblock in exact this folder location.
I'm talking here about a Name.code-workspace with many different folder added to the project.

Next level of those checkboxes
Now that we have those enable / disable checkboxes to have more control / overview in the settings itself there's the next suggestion.
When you add an exclude into your Workspace-Settings and you go to your Folder-Settings excludes it should show that X, Y is already blocked from another source (like Workspace-Setting / User-Settings).
This could be shown in different color, here an example.
Workspace-Setting exclude list shown in VSCode settings tab:
   [ x ] **/.vscode
   [ x ] **/*.code-workspace
   [ x ] **/.gitignore

Folder-Setting exclude list shown in VSCode settings tab:
   [ x ] **/*.bmp
   [ x ] **/*.ico
   [ x ] **/*.jpeg
   [ x ] **/*.jpg
   [ x ] **/*.png
   [ x ] **/*.rar
   [ x ] **/*.zip
   [ x ] **/*.exe
   [ x ] **/*.msi

   // This section have different highlighting to see that those settings are from another source affecting this folder
   [ x ] **/.vscode
   [ x ] **/*.code-workspace
   [ x ] **/.gitignore

So basically, we have 3 excludes in the (global) workspace-settings which affects all project folders we added.
The settings tab knows that and shows them in the Folder-Setting excludes aswell.
So that we have a full list of "Workspace+Folder" exclude list shown in the settings here!
If we now disable one of the checkboxes from the "highlighted section" we don't disable it for the workspace settings file we add this code:
  "files.exclude": {
    .... all exclude code here
    "**/.gitignore": true
  },

To the Folder-Settings file. Since we changed that for the folder settings only.
So the view of the Folder-Settings exclude would look like this:
   [ x ] **/*.bmp
   [ x ] **/*.ico
   [ x ] **/*.jpeg
   [ x ] **/*.jpg
   [ x ] **/*.png
   [ x ] **/*.rar
   [ x ] **/*.zip
   [ x ] **/*.exe
   [ x ] **/*.msi
   [    ] **/.gitignore

   // This section have different highlighting to see that those settings are from another source affecting this folder
   [ x ] **/.vscode
   [ x ] **/*.code-workspace

And the Folder-Settings code like this:
  "files.exclude": {
    "**/*.bmp": true,
    "**/*.ico": true,
    "**/*.jpeg": true,
    "**/*.jpg": true,
    "**/*.png": true,
    "**/*.rar": true,
    "**/*.zip": true,
    "**/*.exe": true,
    "**/*.msi": true,
    "**/.gitignore": false,
  },

While the Workspace-Settings code still looks like this:
  "files.exclude": {
    "**/.vscode": true,
    "**/*.code-workspace": true,
    "**/.gitignore": true
  },

You changed the Folder-Settings part (highlighted from another source)
This writes into your Folder-Settings directly (false or true)
It moves out of the highlighted section to the top, to your other Folder-Excludes since the settings is now in your Folder-Settings

Now, when you enable / disable the .gitignore it will still change the Folder-Setting like:

"**/.gitignore": true
"**/.gitignore": false

If you want that this will be global again, you just delete this whole entry from the Folder-Settings list like you do it today. Edit this line, delete the code press enter.
This result is that the code gets deleted in the Folder-Setting file:
  "files.exclude": {
    "**/*.bmp": true,
    "**/*.ico": true,
    "**/*.jpeg": true,
    "**/*.jpg": true,
    "**/*.png": true,
    "**/*.rar": true,
    "**/*.zip": true,
    "**/*.exe": true,
    "**/*.msi": true,
  },

And this will change the view back again to:
   [ x ] **/*.bmp
   [ x ] **/*.ico
   [ x ] **/*.jpeg
   [ x ] **/*.jpg
   [ x ] **/*.png
   [ x ] **/*.rar
   [ x ] **/*.zip
   [ x ] **/*.exe
   [ x ] **/*.msi

   // This section have different highlighting to see that those settings are from another source affecting this folder
   [ x ] **/.vscode
   [ x ] **/*.code-workspace
   [ x ] **/.gitignore

From before deleting the .gitignore line:
   [ x ] **/*.bmp
   [ x ] **/*.ico
   [ x ] **/*.jpeg
   [ x ] **/*.jpg
   [ x ] **/*.png
   [ x ] **/*.rar
   [ x ] **/*.zip
   [ x ] **/*.exe
   [ x ] **/*.msi
   [    ] **/.gitignore

   // This section have different highlighting to see that those settings are from another source affecting this folder
   [ x ] **/.vscode
   [ x ] **/*.code-workspace

That means, if you remove the .gitignore exclude from your Folder-Settings it's deleted from the Folder-File.
But since the .gitignore still exists in the Workspace-Settings-File it will be shown again in the "highlighted area" from the Folder-Exclude-Settings!
You CAN'T DELETE (edit) highlighted elements, since they are stored in another place.
It only shows you if there is another exclude enable / disable set in a higher priority section so that you know that your Folder-Setting is affected by it!
You can change the checkbox from the highlighted area, but this will NOT change the settings of the highlighted section (like Workspace-Settings-Exclude) but it will add the exclude code to your Folder-Settings-Exclude file. 👍
This value you can enable / disable like all the other, and you can delete it again.
If you want to DELETE the highlighted exclude, you have to go to this settings and do it there.
Edit, delete text, press ENTER.
Or maybe you can add a "delete" and "edit" button on the right of an exclude entry.
Maybe you can make it possible to click on the "highlighted section" to get forwarded to the exclude settings of this highlighted section.
In our example a click on the highlighted section (headline title text) would redirect you to:
Workspace-Settings-Exclude

Conclusion
Often it get's really complicated if you have a long list of exclude files list!
A checkbox to enable / disable those settings helps to quickly track a file temporarly or even makes them visible forever again.
But since you don't want to forget about that you disabled this file / path a while ago it will be still shown in the exclude list, just "unchecked"!
You get a better overview which other section (exclude setting) affect your current setting.
Like User -> Workspace -> Folder

Sorry for the long text, but I hope it makes clear what I think would be great to have here.
A better overview in the settings itself to see what's blocked from other sources (higher prio levels).
And since you can disable (true value) stuff on the highest level, but you can enable (false value) it on lower level again, and this is not listed anywhere you can get totally confused about it if you don't look into the .json files!
With checkboxes you would see the exclude is set (true) or not (false). 👍


Newick parser and fixes to iterator interface

Okay, we have a parser in the newick branch...
julia> using Phylo

julia> parsenewick("((,),);")
NamedTree phylogenetic tree with 5 nodes and 4 branches
Leaf names:
String["Node 2", "Node 4", "Node 1"]

Or:
julia> filename = "h1n1.trees"
"h1n1.trees"

julia> filetree = open(parsenewick, filename)
NamedTree phylogenetic tree with 1013 nodes and 1012 branches
Leaf names:
String["407", "153", "1", "54", "101", "371", "41", "464", "65", "475"  …  "336", "145", "36", "95", "414", "138", "294", "353", "232", "306"]

Note it doesn't read in the NEXUS format with header information, only the basic newick format.

Coverage decreased (-14.4%) to 72.869% when pulling 8176ee23bf1966bcf76e303d1ca2d1f24003bbde on newick into ef9ba7c7801b65af905178cc8520d7e8599cb0d9 on master.

Coverage decreased (-14.5%) to 72.766% when pulling dd1ff9b184bc5a0b9ee0054b59f5c968b878bf57 on newick into ef9ba7c7801b65af905178cc8520d7e8599cb0d9 on master.

Coverage increased (+0.7%) to 87.96% when pulling 06f9aad97f1ae511b07ed8f3d74783947af4c8f5 on newick into ef9ba7c7801b65af905178cc8520d7e8599cb0d9 on master.


chore(deps): update ci dependencies

This PR contains the following updates:

Package
Type
Update
Change

common-dev-assets

digest
4d3c7e4 -> d72be06

github.com/IBM/platform-services-go-sdk
require
minor
v0.40.0 -> v0.41.0

github.com/terraform-ibm-modules/ibmcloud-terratest-wrapper
require
patch
v1.10.10 -> v1.10.11

Release Notes

IBM/platform-services-go-sdk (github.com/IBM/platform-services-go-sdk)
v0.41.0
Compare Source
Features

Enterprise Management: re-gen service after update trait object (#263) (52cfdaf)

terraform-ibm-modules/ibmcloud-terratest-wrapper (github.com/terraform-ibm-modules/ibmcloud-terratest-wrapper)
v1.10.11
Compare Source
Bug Fixes

deps: update module github.com/gruntwork-io/terratest to v0.43.8 (#581) (5b1468a)

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

/run pipeline

Edited/Blocked Notification
Renovate will not automatically rebase this PR, because it does not recognize the last commit author and assumes somebody else may have edited the PR.
You can manually request rebase by checking the rebase/retry box above.
⚠ Warning: custom changes will be lost.

/run pipeline

:tada: This PR is included in version 1.9.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Logging endpoint/task info and newlines

I am running a service in docker with the splunk logging driver[1]. The new lines that are used during startup to log out the endpoints[2,3] and tasks[4] are corrupting the log processing because of the empty new lines that are padding the lists. It may be an issue with our configuration, but I wanted to put out a feeler to see if anyone else had run into this issue. The issue can be bypassed by changing the log levels to WARN. But I like having the endpoints/tasks logged on startup and will be investigating some other options to keep this functionality. The resolution may involve removing the new lines or adding some whitespace to the empty lines.
[1] https://docs.docker.com/engine/admin/logging/splunk/
[2] https://github.com/dropwizard/dropwizard/blob/v1.1.1/dropwizard-jersey/src/main/java/io/dropwizard/jersey/DropwizardResourceConfig.java#L126
[3] https://github.com/dropwizard/dropwizard/blob/v1.1.1/dropwizard-jersey/src/main/java/io/dropwizard/jersey/DropwizardResourceConfig.java#L156
[4] https://github.com/dropwizard/dropwizard/blob/v1.1.1/dropwizard-core/src/main/java/io/dropwizard/setup/AdminEnvironment.java#L62-L74

Another option may to suppress this output entirely and prefer a first class solution like swagger.
https://github.com/dropwizard/dropwizard/pull/1204#issuecomment-158626796

Got around this with only logback format changes.
%replace(%m%n%exception){"[\r\n]", "\\n"}%nopex


new to mixins

Hi,
I'm new to mixins. I went over the talk at https://promcon.io/2018-munich/talks/prometheus-monitoring-mixins/.
We have kube-prometheus deployed ink8s using helm and spinnaker deployed to a diff k8s using hal - and we have lots of service monitors, prometheus rules, alerts, graf dashes etc installed in our k8s.
We have already created the SMs to scrape spinnaker and we see the targets in prometheus, Also we installed jsonnet, jsonnetfmt, jb and cloned this github project. We now want to create grafana dashes, prometheus rules and alerts and we can directly do kubectl apply on to create those in our k8s. How do I achieve this using this github project ?
Thanks

tagging @kskewes

This mixin outputs Prometheus Operator CRD's so your setup should support them.
Are you using this helm chart?: https://github.com/prometheus-community/helm-charts/tree/main/charts/kube-prometheus-stack
I haven't used that before and not sure how it works. I couldn't see anything about importing or migrating jsonnet based mixins.
The mixin's from that talk and that this project is based on use jsonnet as an alternative to helm.
jsonnet enables importing and modifying the configuration before rendering it out to json or yaml to then kubectl apply -f -.
Can you please try following the steps here: https://github.com/uneeq-oss/spinnaker-mixin#using-the-mixin-as-raw-json-and-yaml-files and then kubectl diff -f ./manifests/ ?
If it looks okay then you can try kubectl apply -f ./manifests/ and verify that Grafana dashboards update, Prometheus Alert rule s are created, etc.
If this works out it would be great to update the README.md with any extra steps or clarification.
You can also find us Spinnaker monitoring folk in the #monitoring channel on the Spinnaker Slack.

@kskewes-sf
yes. Using helm to deploy kube-prometheus
Tried the link you shared - https://github.com/uneeq-oss/spinnaker-mixin#using-the-mixin-as-raw-json-and-yaml-files
Didnt work.
This is what I did :

installed go, jsonnet and jsonnetfmt

[root@spinnaker-mixin]# go version && jsonnet --version && jsonnetfmt --version
go version go1.17.8 linux/amd64
Jsonnet commandline interpreter (Go implementation) v0.18.0
Jsonnet reformatter v0.18.0

cloned this repo

git clone https://github.com/uneeq-oss/spinnaker-mixin.git

then did

cd spinnaker-mixin
jb install

and finally "make" but this step threw errors. Also did see any files generated in manifests dir.

[root@spinnaker-mixin]# make
find . -name '*.libsonnet' -print -o -name '*.jsonnet' -print | \
        xargs -n 1 -- jsonnetfmt -i
bash: line 0: bash: find . -name '*.libsonnet' -print -o -name '*.jsonnet' -print | \
        xargs -n 1 -- jsonnetfmt -i: invalid option name
make: *** [fmt] Error 2

Sorry I had missed https://github.com/jsonnet-bundler/jsonnet-bundler from the install steps.
Could you please follow changes #16 and see if the jsonnet files render for you?


Feature/codeclimate setup

Current coverage is 79.39% (diff: 100%)

Merging #22 into development will not change coverage

@@           development        #22   diff @@
=============================================
  Files               43         43
  Lines              398        398
  Methods             40         40
  Messages             0          0
  Branches            19         19
=============================================
  Hits               316        316
  Misses              82         82
  Partials             0          0

Powered by Codecov. Last update c1f88ae...bd5a984

approved


Chapter4 Page 126

Hi Sebastian,
The second code block on page 126 states:
"Note that C=1.0 is the default. You can increase or decrease it to make the regularization effect stronger or weaker, respectively."
which implies a proportional relationship between C and lambda, instead of an inverse relationship as stated on page 128. Additionally, on page 127, it's stated : "...However,...by further increasing the regularization strength--that is, choosing lower values for the C parameter."
I want to make sure I'm understanding this correctly in the event that it is an error and not listed in the errata section.

Thanks for the feedback. You are right, increasing the value of C makes the regularization effect weaker because in sklearn C is the inverse of regularization strength. I'll make a note to be more clear about that in future reprints. Thanks!

No problem; loving the book!


Bump geneva mdm and mdsd images

Which issue this PR addresses:
Standard maintenance..
What this PR does / why we need it:
Bumps containers for genevamdm and genevamdsd.
Test plan for issue:
E2E
Is there any documentation that needs to be updated for this PR?
No

Mirror pipeline running then will run e2e again.

Manually mirrored to INT, same as last time I bumped this.  Something about how I run the mirror pipeline is just not doing what I expect.
/azp run E2E

/azp run e2e


Minecraft - Server Issue?

Ummm.... Ok,
So This Is Very Odd And No Well-Seen.
I Dont Know What This Does/Mean, But Ok?
I Looked In The Console And It Says This:
Issue >> https://gyazo.com/35e56420fb5b8d15a6738a2e482d6c3c
Sooo, What Do I Do Here?

That's a Spigot Build Tools related message.  Spigot wants you to run the Build Tools procedure again to get an updated Spigot.jar file.
Unrelated to PermissionsEx.

Try to keep all your comments in one ticket please.  I'm already helping you in #2881 .

ok. im new to github so thx


Warning in ggplot2 - "Ignoring unknown aesthetics: text"

When plotting figures, Rstudio gives the following warning:
Warning in ggplot2::<...>,  :
  Ignoring unknown aesthetics: text

The text aesthetic is used with ggplotly, to show text when the user hovers over a plotted point.
This seems to be an issue with ggplotly, because the text actually is shown.

Fixed for spectra curation, analyte curation and data exploration plots in commit 69d1f06.
But still an issue in the repeatability plots.


OOP Switch

Currently the codebase is messy, confusing, uses globals, and overall a little gross. Planning on creating an object orientated approach in the solution to this issue.

Working on issue on branch NWTOPT/issue#21

Here's a depiction of what i'm imagining for the flow of operations. Next working on the actual file structure.

Here's a diagram of the network flow plan:


Protected routes getting called without authentication

I got routes are calling without authentication. Even I used protected but it's not working. Here below my snippet :
//in routes.js
import UniversalRouter from 'universal-router';

const routes = [
 path: '/',
  protected : true,

  async action() {
    const Home = await new Promise((resolve) => {
      require.ensure([], (require) => {
        resolve(require('./Home').default);
      }, 'home');
    });
    return <Home key={'home'} />;
  },
];

//When router resolve
app.get('*', async (req, res, next) => {
    try {
        let css = new Set();
        let statusCode = 200;
        const data = {title: '', description: '', style: '', script: assets.main.js, children: ''};
        await UniversalRouter.resolve(routes, {
            path: req.path,
            query: req.query,
            context: {
                insertCss: (...styles) => {
                    styles.forEach(style => css.add(style._getCss())); // eslint-disable-line no-underscore-dangle, max-len
                },
                setTitle: value => (data.title = value),
                setMeta: (key, value) => (data[key] = value),
            },
            render(component, status = 200) {
                css = new Set();
                statusCode = status;
                data.children = ReactDOM.renderToString(component);
                data.style = [...css].join('');
                return true;
            },
        });

        const html = ReactDOM.renderToStaticMarkup(<Html {...data} />);

        res.status(statusCode);
        res.send(`<!doctype html>${html}`);
    } catch (err) {
        next(err);
    }
});

Can somebody please explain how to redirect them on login screen ?

In your example, it's unclear where the render(component, status) is called from.
In the current version of React Starter Kit you can find an example.


Updated papi submodule to make GCC 13 in Ubuntu 24.04 happy

Just to make sure I am understanding correctly, point the submodule to PAPI repo's latest tag, which is, as far as I can see,
https://github.com/icl-utk-edu/papi/releases/tag/papi-7-1-0-t ?
Please confirm.


Thanos Rules API web endpoint sometimes times out if type parameter is given

Thanos, Prometheus and Golang version used:

Thanos: local build based on 63bcedba
$ thanos --version
thanos, version 0.12.2 (branch: master, revision: 63bcedbaec91481265cfefdbf4d0419983318546)
  build user:       sur@sur-xps13
  build date:       20200608-09:54:02
  go version:       go1.14.3

$ go version
go version go1.14.3 linux/amd64

Object Storage Provider:
N/A
What happened:
In a scenario with a Thanos Querier proxying the new Rules API to i.e. Thanos Ruler the request against the /api/v1/rules?type=alert API endpoint sometimes times out.
So far I could not reproduce the issue if no type parameter is given.
What you expected to happen:
No error
How to reproduce it (as minimally and precisely as possible):
$ curl 'https://localhost/api/v1/rules?type=alert'
...
         unexpected error: rpc error: code = Internal desc = perform GET request against http://<IP_ADDRESS>:32889/api/v1/rules?type=alert: Get "http://<IP_ADDRESS>:32889/api/v1/rules?type=alert": context deadline exceeded

This can be non-deterministically be reproduced with the following e2e test:
func TestRulesAlertsAPI_Fanout(t *testing.T) {
	t.Parallel()

	netName := "e2e_test_rules_fanout"

	s, err := e2e.NewScenario(netName)
	testutil.Ok(t, err)
	defer s.Close()

	rulesSubDir := filepath.Join("rules")
	testutil.Ok(t, os.MkdirAll(filepath.Join(s.SharedDir(), rulesSubDir), os.ModePerm))
	createRuleFiles(t, filepath.Join(s.SharedDir(), rulesSubDir))

	// 2x Rulers.
	r1, err := e2ethanos.NewRuler(s.SharedDir(), "rule1", rulesSubDir, nil, nil)
	testutil.Ok(t, err)
	testutil.Ok(t, s.StartAndWaitReady(r1))

	q, err := e2ethanos.NewQuerier(
		s.SharedDir(),
		"query",
		[]string{r1.GRPCNetworkEndpoint()},
		nil,
		[]string{r1.GRPCNetworkEndpoint()},
	)

	testutil.Ok(t, err)
	testutil.Ok(t, s.StartAndWaitReady(q))

	ctx, cancel := context.WithTimeout(context.Background(), 1*time.Minute)
	defer cancel()

	testutil.Ok(t, q.WaitSumMetrics(e2e.Equals(1), "thanos_store_nodes_grpc_connections"))

	ruleAndAssert(t, ctx, q.HTTPEndpoint(), "alert", []*rulespb.RuleGroup{
		{
			Name: "example_abort",
			File: "/shared/rules/rules-0.yaml",
			Rules: []*rulespb.Rule{
				rulespb.NewAlertingRule(&rulespb.Alert{
					Name:  "TestAlert_AbortOnPartialResponse",
					Query: "absent(some_metric)",
					Labels: rulespb.PromLabels{Labels: []storepb.Label{
						{Name: "severity", Value: "page"},
					}},
				}),
			},
		},
		{
			Name: "example_warn",
			File: "/shared/rules/rules-1.yaml",
			Rules: []*rulespb.Rule{
				rulespb.NewAlertingRule(&rulespb.Alert{
					Name:  "TestAlert_WarnOnPartialResponse",
					Query: "absent(some_metric)",
					Labels: rulespb.PromLabels{Labels: []storepb.Label{
						{Name: "severity", Value: "page"},
					}},
				}),
			},
		},
	})
}

The above sometimes suceeds and sometimes fails with:
    TestRulesAlertsAPI_Fanout: rules_api_test.go:61: rules_api_test.go:246:

         unexpected error: rpc error: code = Internal desc = perform GET request against http://<IP_ADDRESS>:32889/api/v1/rules?type=alert: Get "http://<IP_ADDRESS>:32889/api/v1/rules?type=alert": context deadline exceeded

Full logs to relevant components:
Anything else we need to know:

@s-urbaniak, maybe related to https://github.com/thanos-io/thanos/issues/2708 ?

@GiedriusS that sounds familiar, although in my case I always received a context timeout. I am also still investigating.

Well because there is timeout logic in querier maybe not in ruler, so it looks quite similar yes

Ah i see, yes, this potentially could then be triaged against thanos ruler. Let me try just prometheus sidecars in the above e2e test and at least verify a couple of runs if that behavior is observable there too.


no table generation

In ION there is missing functionality to properly process gen_tbl request
tracking there with issue https://github.com/JHUAPL-DTNMA/dtnma-tools/issues/22

This is the major update for ANMS backend dev. Fixing DTNMA-tools to properly produce tables, creating new function  and updating  API routes to support table creation request. Then making update to both the API calls anms-core is doing to the ion-manager, to the database (accessing the resulting tables the manager generates), and to translator (processing ARI requests to generate tables  to send to the ion-manager).   And also the way ion-manager is interacting with the database, making sure it is storing tables correctly


feature: Enum parsing throws instead of null fallback

Reference: https://github.com/graphql/graphql-js/blob/770acd61bc13205a4635e73146c3cb91eb570629/src/type/definition.ts#L1264

@paulofaria Sorry, one last push to fix formatting!


Mazda: disable hud alerts until we find a way to silence audible alerts

Signed-off-by: Jafar Al-Gharaibeh<EMAIL_ADDRESS>

I’ll merge this for now since I agree that it’s super annoying, but I expect this will be addressed soon. I don’t care so much about the actual HUD alert, the most important thing is the dash alert.

I’ll merge this for now since I agree that it’s super annoying, but I expect this will be addressed soon. I don’t care so much about the actual HUD alert, the most important thing is the dash alert.

I don't disagree @adeebshihadeh. BTW, I just pushed a commit to enable hud alerts for steer lockout

I think this makes more sense.


Will this work even in thousands or millions of data in dirPagination?

Hi,
I am curious and i am earnestly asking you question regarding the program performance. Will the dirPagination be suitable for thousands or even millions of data or larger application?

Hi,
The performance limitations would not be directly related to this library, rather you would simply run into memory & processor limits if you try to page over millions of items in memory. Hundreds or even low thousands would probably be fine, but once you get into tens-of-thousands +, you would be much better off to shift the paging logic onto the server, which this library supports. See this section of the readme on server side paging


ReactiveServiceMixin and notifyListeners documentation

In documentation for ReactiveServiceMixin, the example uses reactive value from observable_ish package. In the answer for issue #88, notifyListeners was recommended way without reactive values.
My question is what is the current state of this, should notifyListeners be in documentation instead of reactive values as the default solution?
It is also mentioned that reactive values will be removed, does that mean functions that use of observable_ish package should be deprecated, and later observable_ish can be fully removed from stacked?

@merfire yes, it should be in the documentation.
And yes, i'd like to have all references to observable_ish removed from the readme and the examples.

+1 on this - I had to click into listenToReactiveValues to see that my RxValues were no longer being listened to, since the documentation has not been updated to declare that only ReactiveValue and ReactiveList are now:

@JayPerfetto totally get that. We're paying for open source support now because it's becoming quite difficult to keep up with all the issues myself.
I'm trying my best :) We will do a documentation run soon and add everything in that's missing

Its okay! this package still rules :D any plans to add a ReactiveMap class? I'm using ReactiveValue<Map<thing, thing>> for now but there was an RxMap (it was also unsuported by old-stacked) in observable_ish that might be useful

@JayPerfetto no plans right now, I want to clear all these issues first then move on to new things.

I'm super super appreciative of the package(s) you've created!! Thank you thank you thank you!
However I'm glad I looked at this post as I've been working on resolving my observable_ish package not working for a week now. Glad I found this, resolved my problem in minutes. I understand you must be busy, IMHO we should just quickly post a link to this post letting people know it has been removed from the latest package.

Requirements
Docs

Write documentation that showcase how to use reactive services with ViewModels
Remove references to observable_ish
Remove references to ReactiveValues

Code

Deprecate ReactiveValues type


Switch upload/download to using a pseudo-buffer instead of a third byteLength param

Turns out that hypercore uses the third param of the download/upload events to specify a peer. To maintain compat, we're going to have hyperspace-client emit an object that is "buffer-like" -- it contains no data but has the length and byteLength params set.
Depends on https://github.com/hypercore-protocol/hyperspace-client/pull/13

Published 3.15.0


make probe-rs-cli run feature par with probe-run

- [ ] probe-rs-cli run should support target halt and runner exit on ctrl + c
- [ ] show a backtrace on crash or ctrl + c
- [ ] stack usage analysis

Would like to add a point: setting command values of command line options without having to modify the command itself (e.g. environment variables, a .env file or equivalent) so that using it as a runner isn't as much of a hassle if probe-rs-cli cannot determine the exact probe to use for an operation.

I think environment variables are a bigger hassle than just commandline flags for something you just config once, no?
.env file would work nicely I guess :)

Yes, that is true! Yeah I'm mostly thinking of a use-case where you're swapping out the feature set of a cargo run semi-often while also wanting to specify --probe. In those cases being able to configure the probe selector without requiring that it comes from a command line option directly may be nice! I'm impartial to env variables or some sort of .env file, just so long as there is a possibility :)

Ohhh, now I get it, yep, that would be cool!