inaccurate / inconsistent reading of ROOT file

Hi,
I'm trying to use uproot to read a ROOT file created by Delphes, and I am seeing some very strange behavior. I've uploaded a small file which demonstrates the issue: test.root (1.2Mb). Delphes uses ExRootAnalysis under the hood, which in turn is writing TClonesArrays of particle-like objects to the root file. I'm using ROOT version 6.20/06 to create this sample, and I'm reading the file with uproot v3.11.7 on python 3.6.7.
When I read this file in using the ROOT command line interpreter, everything looks as expected, but I see highly inconsistent results when I load the file with uproot. The first thing I noticed is that the field fUniqueID is not read properly by uproot. In this example, each particle's fUniqueID happens to be equal to its array index + 1, as can be verified by opening the file in root:
root [1] Delphes->Scan("Particle.fUniqueID")

***********************************
*    Row   * Instance * Particle. *
***********************************
*        0 *        0 *         1 *
*        0 *        1 *         2 *
*        0 *        2 *         3 *
*        0 *        3 *         4 *
*        0 *        4 *         5 *
*        0 *        5 *         6 *
*        0 *        6 *         7 *
*        0 *        7 *         8 *
*        0 *        8 *         9 *
*        0 *        9 *        10 *
[ .. clipped ...]

However, uproot reports 0 for all values in this branch:
f = uproot.open("test.root")
t = f["Delphes"]
(t.array("Particle.fUniqueID") == 0).all().all()

> True

This led me to realize that uproot seems to somehow be confused about how may particles there are in each event. This file has a field called Particle_size, which is an integer that is set for convenience by the tree writer to indicate the length of the corresponding TClonesArray. However, the values read out by root vs. uproot are wildly different:
root [1] Delphes->Scan("Particle_size")

************************
*    Row   * Particle_ *
************************
*        0 *      2519 *
*        1 *      2580 *
*        2 *      1992 *
*        3 *      1848 *
*        4 *      2376 *
*        5 *      1963 *
*        6 *      2300 *
*        7 *      1949 *
*        8 *      2524 *
*        9 *      2685 *
************************

This result is as expected. But when I try to look at the same branch w/ uproot I get:
f = uproot.open("test.root")
t = f["Delphes"]
t.array("Particle_size")

> array([201, 125, 111, 116, 183, 132, 140, 107, 177, 243], dtype=int32)

Digging deeper, I found something even stranger; these incorrect numbers appear to correspond to the length of some, but not all of the split branches. For instance, the Particle.fUniqueID and Particle.PT branches actually do contain far fewer entries than expected:
pt = t.array("Particle.PT")
list(map(len, pt))

> [201, 125, 111, 116, 183, 132, 140, 107, 177, 243]

However, other branches, such as Particle.PID, contain the full number of expected entries, in agreement with root:
pid =t.array("Particle.PID")
lis(map(len, pid))

> [2519, 2580, 1992, 1848, 2376, 1963, 2300, 1949, 2524, 2685]

It gets weirder. While the fUniqueID field is just filled with zeros, the PT values are nonzero:
pt[0,:10]

> array([26.841331 , 25.875156 , 15.073622 , 13.940983 , 13.5541315,
       13.457675 , 10.314984 ,  9.512343 ,  8.793333 ,  8.770421 ],
      dtype=float32)

and they're sorted in descending order!
(pt[0,:1] > pt[0,1:]).all()

> True

Although there are thousands of particles in the actual event (as when read by root), I did some spot checking and it turns out that at least some of these PT values do actually appear in the event, so they are not just bogus numbers:
root [2] Delphes->Scan("Particle.PT", "Particle.PT>8 && Particle.Status==1")

***********************************
*    Row   * Instance * Particle. *
***********************************
*        0 *     1627 * 13.554131 *
*        0 *     1820 * 8.7933330 *
*        0 *     1823 * 10.314984 *
*        0 *     1840 * 26.841331 *
*        0 *     1842 * 13.457675 *
*        0 *     1844 * 8.3317794 *
*        0 *     2052 * 15.073621 *
*        0 *     2053 * 8.7704210 *
*        0 *     2366 * 25.875156 *
*        0 *     2510 * 13.940982 *
*        0 *     2511 * 9.5123434 *

I was not able to identify an obvious commonality between these particles, except that at least first ten (and possibly all, I didn't check) are particles with status code = 1 (i.e. stable particles); however, this subset still contains fewer than the expected number of stable particles. It is also maybe not too shocking that the pt is ordered, as I believe Delphes applies in-place sorting of particle arrays at various points during its processing.
To summarize, when I try to read this file with uproot, we have some branches appearing with fewer entries than expected, and in some cases missing/incorrect values. In other cases, the values are not missing, but appear to be a (random?) subset of the expected values, and appearing in a completely different order.
I don't know a lot about ROOT I/O but I am wondering if this has to do with multiple versions or "histories" of the file buffer appearing in the ROOT file? So that perhaps e.g. the 201 particles in the first event at some point were added, and then later the branch got updated with more data, before the event was finalized? It is interesting that the integer Particle_size agrees with the size of the incomplete branches. I can point you to the line where this gets set in ExRootAnalysis: the integer that backs the *_size branch is incremented as items are added to the TClonesArray, as opposed to being set by inspecting the length just before Tree.Fill(), so this could explain why the "partial" branches agree with the Particle_size branch.

I have not debugged the uproot3 code yet but I had a quick look with uproot4 which Jim is currently heavily working on and the good news is that the readout seems to be correct, so this is an uproot3 issue and not a general problem with the understanding of the ROOT layout -- so to say ;)
Here you can see that the fUniqueID is continuous, the sizes are the same as those returned by ROOT and the particle IDs are valid PDG IDs:
In [1]: import uproot4

In [2]: uproot4.__version__
Out[2]: '0.0.16'

In [3]: f = uproot4.open("/Users/tamasgal/Downloads/test.root")

In [4]: f["Delphes/Particle.fUniqueID"].array()
Out[4]: <Array [[1, 2, 3, 4, ... 2683, 2684, 2685]] type='10 * var * uint32'>

In [5]: f["Delphes/Particle_size"].array()
Out[5]: <Array [2519, 2580, 1992, ... 1949, 2524, 2685] type='10 * int32'>

In [6]: f["Delphes/Particle.PID"].array()
Out[6]: <Array [[2212, 2212, 21, ... 22, 211, -211]] type='10 * var * int32'>

So maybe you can simply switch over to uproot4, even if it's not 1.0 yet, but as far as I understood, the release date is this summer.
It's already on PyPI and you also need awkward1 to access those nice arrays:
pip install uproot4 awkward1

Thanks for the quick reply, Tamas! I wasn't aware of uproot4.
I can confirm that the above issues are fixed in uproot4. Unfortunately there seem to be some other issues in handling jagged arrays of TRefArrays, that were not an issue in uproot3. In uproot3 these were simply treated as doubly-jagged arrays of IDs, but in uproot4 it looks like there is a TRefArray class that isn't playing nicely in a jagged array.
Without getting too far off topic (should I open a separate issue on the uproot4 tracker?), this is the problem I encountered:
f = uproot4.open("test.root")
refs = f["Delphes/GenJet.Particles"].array()

produces a "CannotBeAwkward" error, which in turn produces a ValueError:
ValueError: cannot produce Awkward Arrays for interpretation AsObjects(Model_TRefArray) because

    TRefArray

instead, try library="np" instead of library="ak"

The error goes away if I try library="np" as suggested:
refs = f["Delphes/GenJet.Particles"].array(library="np")

But now refs will contain just a single TRefArray per event (when there should be several, one for each jet). It appears to only return the first TRefArray:
list(map(len, refs))

> [45, 23, 22, 13, 11, 13, 24, 8, 48, 46]

root [1] Delphes->Scan("GenJet.Particles.GetLast()")

***********************************
*    Row   * Instance * GenJet.Pa *
***********************************
*        0 *        0 *        44 *      <-----
*        0 *        1 *        19 *
*        0 *        2 *        20 *
*        0 *        3 *        30 *
*        0 *        4 *        25 *
*        0 *        5 *        31 *
*        0 *        6 *        25 *
*        1 *        0 *        22 *      <-----
*        1 *        1 *        23 *
*        1 *        2 *        11 *
*        1 *        3 *        19 *
*        1 *        4 *        26 *
*        1 *        5 *        18 *
*        2 *        0 *        21 *      <-----
*        2 *        1 *        20 *
*        2 *        2 *        23 *
*        2 *        3 *        24 *
*        2 *        4 *        18 *
*        3 *        0 *        12 *      <-----
*        3 *        1 *        34 *
*        3 *        2 *        34 *
*        3 *        3 *        32 *
*        4 *        0 *        10 *      <-----
*        4 *        1 *        65 *
*        4 *        2 *        31 *

I understand uproot4 is still under development, so maybe I just have to wait for that version to stabilize... keep up the great work!

You're both too quick for me and now my message below if outdated! Uproot 4 is ready for users, though issues like the one with TRefArray are not unexpected—having your example file will help me through them. I can't remember why I concluded that the TRefArray can't be Awkward (it has a string in it, but that's not a fundamental problem), so I'll review that and get your example working in Uproot 4. It's pretty disturbing that all those errors lurked in Uproot 3, but it validates my decision to give it a complete rerwite, rethinking and cleaning up the deserialization code while porting to Awkward 1.
By "ready for users," I mean it's graduated from alpha to beta. One could do a full physics analysis in it, though there are going to be rough edges like this. I'm not in favor of "big bang" releases, since there's a chicken-and-egg problem with needing users to find bugs and needing to eliminate bugs for users to be able to work.

I'll be taking a look at this file to see all the issues first hand. As for the fUniqueID, in going over the interpretation code to translate from Uproot 3 to Uproot 4, I did see that the Uproot 3 code was wrong, but nobody has ever complained about fUniqueID before. So that should at least be different, if not correct on Uproot 4.
I'll find out when I look at the file, but might there be different cycle numbers for this TTree, if it was written and rewritten? If that's the case, you might be looking at different TTrees in your comparisons between ROOT and Uproot, where I've of an older cycle of the other. That's something I'll check, though.
The particle_size is particularly disturbing because those are different numbers by an order of magnitude, and yet not ridiculously big (as would happen in a typical deserialization error. Again, I'll look into it. Thanks for providing a file!

The TRefArray thing is fixed in Uproot4's 0.0.16. The reason for excluding Awkward wasn't a good one, so I worked around that.
The original issue in Uproot3 was because two branches have the name "Particles_size", so you were seeing the other one. I only found out that it's possible for two branches to have the same name after writing Uproot3, so that was written assuming that branch names are unique identifiers. That kind of assumption is hard to remove from an existing codebase, but easy to avoid in a new one. Uproot4 was almost ready for it; I just needed to make cache keys unique.
So this should work for you in Uproot4, but I don't have enough time to backport the corrections into Uproot3.

Oh, and if you're using Uproot4 (because Uproot3 won't work for you), this link might be helpful:
https://indico.cern.ch/event/882824/timetable/#29-uproot-awkward-arrays-tutor
This was a tutorial I gave on it last week, which includes both an interactive notebook (Binder; GitHub) and a video of the talk itself (YouTube).

Wow, thanks for the super quick resolution! I'll test 0.0.16 this week and post an update to confirm.


bos credentials --cleartext returns every time different macaroon value

To begin: It is not a bug, but I am curious why the following is happening.
Each time bos credentials --cleartext returns a different value of macaroon. Surprisingly this is a valid encrypted value because using this value results in no failure.
When i do manually a base64 -w0 admin.macaroon it returns every time the same encrypted value.
I looked at the code but I couldn't find why the bos credentials --cleartext returns every time a different encrypted value of macaroon.
Hope anyone can clear this up for me?
Thanks in advance.

It is time-restricting the validity of the macaroon produced and time is always changing

Thanks for the clarification.


Adding ROBOT report and measure logs

Including a new click command, --robot_validate.

Reports should be generated based on the original content, not the downstream JSON


Add MDS in a box

Hey @matsonj, what do you think could be a great section/place for MDS in a box? Was thinking about Projects Powered By DuckDB but would love to check if you have other suggestions.

Yeah, I think Projects Powered by DuckDB is fine. There is a lot of neat stuff out there like that.
I would also add a link to this post under Media /blogs - https://duckdb.org/2022/10/12/modern-data-stack-in-a-box.html

this article is great too: https://dagster.io/blog/duckdb-data-lake

one more: https://medium.com/@rahul_39479/a-super-simple-and-highly-customizable-modern-data-stack-mds-in-a-box-using-dlt-and-motherduck-d6482ce9fab4

Let's go!
https://github.com/davidgasquez/awesome-duckdb#projects-powered-by-duckdb


[DOCFIX] Rename gRPC -ThreadActivelyCount to -ThreadActiveCount

See file diffs

@ZhuTopher we use auto command bin/alluxio docGen to update the configuration and metrics in the Alluxio docs. This PR may be conflicted with https://github.com/Alluxio/alluxio/pull/14392

@ZhuTopher can you help remove the metrics key updates but maintain the changes in docs/en/reference/Metrics-List.md

@xichen01  @maobaolong we updated some metric key name here to be more syntax correct, since the metric keys are added recently. If you have any monitoring system already depends on it, please see if it's easy to modify the names

alluxio-bot, merge this please

@Xenorith cherry-pick?

alluxio-bot, cherry-pick this to branch-2.7 please


How to Update polyline in angular 8

Issue description
Steps to reproduce and a minimal demo of the problem
_Use stackblitz.com or similar -- try this template as a starting point: https://stackblitz.com/edit/angular-google-maps-demo
What steps should we try in your demo to see the problem?
Current behavior
Expected/desired behavior
angular-google-maps, Angular, & any other relevant dependency versions
Other information

@Mohit-182000 no issue description so not sure what specifically is the issue and the stackblitz is just a general demo. But if it's getting polylines working, this specific stackoverflow QA might help.
https://stackoverflow.com/questions/46763420/how-to-alternate-color-of-polyline-with-angular-2-using-agm-map-agm-polyline


docs: add Coding Resource Finder

closes #13

Please, don't over do it, just add your project

Will be closing this one, make the right PR


Add "Select and paste parameters" and related methods

New features:

Select and paste parameters
Only selected parameters (pitch points, vibrato, expressions) of copied notes can be pasted.

Add Methods:

UNote.GetExpression
UNote.SetExpression

Expressions can now be handled more simply.
As a result, the following features have been optimized.

MoveSuffixToVoiceColor
Simplified processing.
AddTailNote
Expression of the previous note can now be carried over.

The shortcut Alt + V is set.

This menu can be selected by right clicking with the note you wish to paste selected.
If the copied note is less than the note you want to paste, it will loop through the parameters of the copied note.


[Event Hubs] EventHubConsumerClient Constructor parity with Python regarding PartitionManager

From @ramya-rao-a:

If we include PartitionManager in the constructor, we are signing up for 3 more constructor overloads
If we push it into the options bag, then it doesnt get the attention it deserves.
Therefore, we need to figure out if PartitionManager should stay in the subscribe method or move to the constructor

Closing in favor of #6220


Support for [Redfall]

Game name: Redfall

Game package name: BethesdaSoftworks.Redfall_3275kfvn8vcwc

redfall saves.zip

Hey, the save format seems to be a bit different between the versions, can you check if these work for your Steam version?
redfall_2533274821769301_2024-01-24_20_32_20.zip
Those are the converted files from your wgs data.
If those work, I'll add the support to this repo. If not, I'm afraid there might be no way to convert saves between the versions.

Thanks, I'm updating the game now and will test when it finishes and report back. Appreciate the help!


Config option to only send file paths relative to project folder

Discussed in https://github.com/wakatime/wakatime-cli/discussions/589

Originally posted by kaushalyap November 28, 2021
Currently it send absolute paths, I am aware of hide_file_names option As I think this obfuscate all file names, instead I want to obfuscate only the path to project, but still keep the filenames relative to the project directory ex: {obfuscateted}/ProjectName/somefile.js

@kaushalyap What should it send when no project folder is detected (Unknown Project in the dashboard)... the full file path?

@kaushalyap What should it send when no project folder is detected (Unknown Project in the dashboard)... the full file path?

file name with relative path would do ex: Directory/something.js

I don't understand... how would we know the relative path without knowing the project folder?

I don't understand... how would we know the relative path without knowing the project folder?

just take the full path (ex: /home/username/some/thing/dir/something.js) but only send the dir/something.js to the server.

What do we send when no project is detected? (Unknown Project)
Do we send the full file path, or just send the file name? We can't choose a path relative to the workspace directory because we don't know the workspace directory for Unknown Project.

So, to summarize what's needed:

new ini setting relative_paths = false (defaults to false, current behavior)
new command line argument --project-folder <workspace-path> to be sent from IDE irregardless of the value of relative_paths
new command line flag --relative-paths which when present, is the same as relative_paths = true; this probably won't be used same as --hide-project-names flag isn't used by the plugins because we get this value from the ini config file instead of plugins duplicating work

When relative_paths = true, we left-trim the absolute path removing workspace-folder. Workspace folder first comes from --project-folder <workspace-path> or uses the auto-detected project folder when no workspace folder is passed from the IDE.

@gandarez @alanhamlett Thanks! Great work!
When will be this update released with extensions / plugins?

@kaushalyap as soon as it gets released https://github.com/wakatime/wakatime-cli/pull/617

Once it shows up in releases you'll need to restart your editor to get the new version.

@gandarez It seems that this change is not yet released?

It was released in v1.32.1.


Normalization/simplification function

I want a function similar to what we call "normal" in cubicaltt. The purpose of this function is to normalize/simplify terms as far as possible, this means that it has to go under binders, unfold all definitions and compute all coe/hcom's as far as possible.
This is very useful for seeing how complicated definitions really are. I've found many things in cubicaltt that look innocent on the surface but once you start unfolding things you see that they are really complicated because they contain coe/hcom's in complicated types that unfold to a lot more hcom/coe's.
Another very useful thing with this kind of function is that they can be used to debug the system. If I have a term t : T in cubicaltt I can normalize/simplify it to get t', I can then ask the typechecker if t' : T. If this fails then I know that there is a bug somewhere and we managed to find a lot of bugs this way by doing this for the term inhabiting the type of the univalence axiom. In RedPRL we can probably not do exactly the same, but it might be that the heuristics are powerful enough to see that "t' : T" in many cases?
Note that it might be necessary for such a normalization/simplification function to be type-directed in RedPRL in order for things like (@ p 0) to reduce.

I think it would be nice to expose some sort of Eval Foo. (for non-stable closed-term evaluation) and Reduce Foo. (for stable reduction under binders) at the top level. Currently you can use the reduce tactic to play around with this inside a proof.
Some of what you are saying is not possible:

auto cannot always prove t : T, so it certainly cannot always prove t' : T for the value t' of t.
Types are not unique so you can't really have a type-directed simplification procedure. I think what you have in mind is reduce plus some fragment of auto. For example, given (@ p 0), p might be a variable of line type, in which case we know nothing about (@ p 0); a variable of type (path [_] a m n), in which case it is equal to m in a but might not be equal to m in some other type; or it could even be a variable of function type but we are inside the body of a function (-> void a) so the code is "dead."


[BUG] Possible bug. FusionCache + EntityFramework (latest) on ASP NET Core 8 (.NET 8)

Hi, I'm using the following code as suggested in the documentation, database is Azure SQL, FusionCache configuration provided here: #210
var data = await _cache.GetOrSetAsync("someKey-"+someId, async (cancellationToken) =>
    {
        var records = await dbContext.Table
            .AsNoTracking()
            .Where(x => x.Id == someId)
            .FirstOrDefaultAsync(cancellationToken: cancellationToken)
            .ConfigureAwait(false);
        if (records== null)
        {
            throw new RecordNotFoundException();
        }
        return records ;
    })
    .ConfigureAwait(false);

And sometimes, I'm getting strange exception:
System.InvalidOperationException: A second operation was started on this context instance before a previous operation completed. This is usually caused by different threads concurrently using the same instance of DbContext. For more information on how to avoid threading issues with DbContext, see https://go.microsoft.com/fwlink/?linkid=2097913.

   at Microsoft.EntityFrameworkCore.Query.Internal.SingleQueryingEnumerable`1.AsyncEnumerator.MoveNextAsync()

I tried to change DbContext lifetime to Transient, but it didn't help. It does not happen always. Did you face with similar?

I'm not sure why another operation was started before 1st ended as each operation is awaited

@apavelm This is most likely EF Core DbContext lifetime issue.

@akoken I thought so, but I made EF DbContext as Transient to avoid this. It didn't help
@jodydonetti Yes, some cache "partitions" have such settings.
Do you think that requesting individual DbContext using IServiceProvider inside GetOrSetAsync block could solve the issue?
I'll try

Hi, are you able to debug this? I'd like some more details, like the call stack when the exception is thrown, for example.

Oh, also: which version are you using?

The latest one. I switched this morning to IDbContextFactory and now creating DbContext inside GetOrSetAsync block  - so far so good. Will monitor more

Good! Let me know how it goes.

@jodydonetti It has been 4 days already passed, and still no such errors. So, I suppose IDbContextFactory should be recommended in documentation. Since .NET 7/8 it could be easily added to DI together with DbContext. So, both could be used at the same time. factory - for cache-inside blocks wrapped into "using", and DbContext for normal operations.

Awesome, happy it worked!
And good call for the documentation: I already planned to add 2 new docs:

Background Distributed Operations: about background execution of distributed cache and backplane operations (so not related to this)
Background Factory Executions: as the name implies, and related to both background factory completion with soft/hard timeous but also for Eager Refresh (same logic applies), also with notes and examples related to EF

Finally I'd link the latter in the docs for timeouts and eager refresh.
Sounds good?

@jodydonetti Hi, I just want to warn you about one thing. Perhaps what I faced is related to "Background Factory Executions".
IDbContextFactory works fine, and no issue with this. But we caught a very tricky error. Sometimes application crashes without any exception. We partially addressed this issue, but not in full. This could be invisible or ignored for simple applications, and 95% of users will never face it.
So, when background executions are started/running in some cases, it could cause synchronization context related issues. And sometimes could cause application crashes.
Like in our case, we have unsafe binary dependency (Google OR Tools) for complex math computations. And when the control thread is passed "from" or "to" (hard to identify the direction) issues could occur. Depends on where the control thread on the moment of execution, it could cause exception (for managed code), or application crash for unsafe (DLL) code.
Initially, I was blaming Google's library, but even using old version of app it could happen randomly.
I don't know what to do with this. Putting await Task.Yield(); before unmanaged code execution somehow helped, but not in 100% cases.
So, please thank about possibility of described case. Unfortunately, I have no repro-code as too-many async thread situation is difficult to even debug.
I kindly ask you just to review the code, maybe something that looks like described could be found there.
And a side question, is it possible to use only InMemoryCache and Redis only as a backplate for syncing between instances? When I tried to configure it like this - I got a warning. Sorry for off-topic.
Thank you.

@jodydonetti one more question, does the FusionCache on Redis uses transactions or any other blocks?

@jodydonetti Hi, I just want to warn you about one thing.
[...]

Interesting, thanks for the heads up, I'll try to take a bird's eye view at the code from looking for something that may get these results, and I'll warn you if I'll find something.

And a side question, is it possible to use only InMemoryCache and Redis only as a backplate for syncing between instances?

Is it possible? Yes.
Would I suggest it? No 😬
I mean it should work, but things can go wrong in subtle ways, so you better be careful. Read here for more.

When I tried to configure it like this - I got a warning.

Which warning was it?
I suppose it was this:

it has been detected a situation where there IS a backplane, there is NOT a distributed cache and the DefaultEntryOptions.SkipBackplaneNotifications option is set to false. This will probably cause problems, since a notification will be sent automatically at every change in the cache (Set, Remove, Expire and also GetOrSet when the factory is called) but there is not a distributed cache that different nodes can use, basically resulting in a situation where the cache will keep invalidating itself at every change. It is suggested to either (1) add a distributed cache or (2) change the DefaultEntryOptions.SkipBackplaneNotifications to true.

If this is the case then yes, read the warning carefully, otherwise as explained bad things may happen...

@jodydonetti one more question, does the FusionCache on Redis uses transactions or any other blocks?

I don't understand what you mean here, cab you giveme more context?
Anyway each operation towards Redis is done "normally", without any "outside" transaction.
Maybe you are referring to the native transaction support in Redis itself?
To answer that, think about the fact that FusionCache doesn't even know what Redis is, since it works with any IDistributedCache implementation, one of which happens to talk to Redis.
When using Redis the library typically used is StackExchange.Redis, so if that library uses Redis transactions or not is up to its authors (spoiler: no, it doesn't currently uses it, and I don't think it ever will).
Hope this helps.

no, it doesn't currently uses it, and I don't think it ever will
That was the answer. Thanks

Just to clarify the situation about Redis. We ran into a strange issue with Redis, I just wanted to make sure the way how it used inside FusionCache. Thank you
About the warning - yes, I meant that one. I was investigating the issue I wrote above, so it was just for testing purposes.
Although, Perhaps there is a room for improvement.
Let's say we have a simple endpoint that uses FusionCache GetOrSet.
When Distributed cache disabled - it completes in 20-50ms, when it is enabled, execution takes significantly much more time, regardless if cache record is valid.
Just a suggestion, maybe it is not correct from any point of view, but what if L2 operation that could be done separately do as a background process? I understand that it is probably not straightforward to implement, but just an idea.
OK, Thank you for your answers and the library

Just a suggestion, maybe it is not correct from any point of view, but what if L2 operation that could be done separately do as a background process? I understand that it is probably not straightforward to implement, but just an idea.

You already can, just set AllowBackgroundDistributedCacheOperations to true and you're done.
Also, any potential issue with the distributed cache will be automatically handled by Auto-Recovery.
Looks good 😊 ?


EmulatorCredentials when running on dev services

Implementation to use EmulatorCredentials for dev services (unless access-token-enabled = true)

@all-contributors, please add jfbenckhuijsen for code


Add qualifying week to maternity, paternity and adoption

Rationale
This change updates the maternity, paternity and adoption smart answer calculators by asking the user if they were, or will be, employed during the qualifying week - rather than the present date when they are completing the questions.
The qualifying week (QW) is, broadly, the 15th week before the expected week of childbirth or adoption. It's worked out by finding the Sunday before the due or match date (or due day itself if it's a Sunday). The QW is 15 Sundays back from there.
For example, if the due date is 1 January 2016, the QW is 13 September.
For further details see:
https://www.pivotaltracker.com/n/projects/1270592/stories/104083442
Expected changes

Example Maternity URL

Question should be: "Was the employee (or will they be) on your payroll on 13 September 2015?"

Example Paternity URL

Question should be: "Was the employee (or will they be) on your payroll on 13 September 2015?"

Example Adoption URL

Question should be: "Was the employee (or will they be) on your payroll on 13 September 2015?"

The changes look good to me, however it would be better to have all the rationale behind the change directly in commit notes and the PR description. People looking at git/GH history in future may not have access to pivotal or we may not use pivotal anymore. Also, we're developing in the public by default, so we should make all information available to the public :)
Having said that, you can still reference pivotal for internal purposes.

Thanks @tadast - good points, I've update the description with a rationale section outlining the reason for the change.

LGTM after amending the commit note :+1:


cross-device link not permitted

hyperboot release bundle.html -v 1.0.0 -m 'initial release!' yields:
Error: EXDEV: cross-device link not permitted, rename '/tmp/.hyperboot-1439161119965-0.30642146873287857' -> '/home/pguth/github/hyperboot_test/hyperdata/7aea5d9d070b9a3b4c18b005b0a306d93222239ddc58105e23ea72662ff2050a.html'

mount yields among others:
tmpfs on /tmp type tmpfs (rw,seclabel)

Workaround: Set the TMP environmental variable (or one of those others) to a directory on the same device.
Example: mkdir ~/.tmp and then run export TMP=~/.tmp hyperboot release bundle.html -v 1.0.0 -m 'initial release!'


Operation lock state and the operation value should be persisted

That way we can handle the following scenario: insert -> initiate push -> connection failure after item inserted in server table -> client crashes or cancels push -> client app starts again -> delete -> condense. In the above scenario if we condense insert and delete into nothing, we end up not deleting the item we sent to server. And if we do not condense, insert will have no corresponding data in the table to send to the server while pushing as the record would have been deleted.

Is condensing purely an optimization, or are there functional reasons why we do it?

As we do not have change tracking in the local store, you do not have record values for past operations to replay them on the server. Condensing takes care of that as you have one operation with the associated value being the one in the table. Optimization is another benefit we get due to condensing. Also, if actions are replayed instead of condensing and sending one final operation to the server, you will keep running into weird cases where past operations conflict, but the latest one does not and you will have to keep resolving old conflicts to be able to push the latest operation. There are other nuances of replaying that make it a not so good choice.

I'd like to understand the scenarios you are talking about where replaying causes more conflicts. I would have thought condensing would introduce more bad situations (and it does, given the issues we have seen raised lately).

Sure, let's talk about it


Precompile styles with autoprefixer

I would like to simplify the bundler configuration and styles precompilation would allow to remove necessary postcss-loader from the webpack config.
Also, it's possible to think about css-modules precompilation so to keep configuration simple as possible.
cc @petrukhin

published in 0.10.3


Finalize test plan

dockerized api testing for the 5 initial endpoints.
how do we handle input data and expectations? seeds?

@aarelaponin , can you flesh out your cross-organization testing context here?

done.


Training LSTM RNN  model after restoration starting again with high loss

I have an LSTM based RNN language model where in after the initial training for 1000 iterations, the model is saved as follows
saver = tf.train.Saver()
saver.save(sess,'rnn_model.ckpt',global_step=1000)
I've restored the model by
        saver = tf.train.import_meta_graph("rnn_model.ckpt-1000.meta")
        saver.restore(self.sess, tf.train.latest_checkpoint('./'))
        graph = tf.get_default_graph()
        # restore the operations and placeholder as required from the graph
        # perform retraining

so far everything looks good, the model is restored, but however, when I plot the loss summary while training with the same input data as previous training, the loss again starts with high value as if it is training from start again freshly. I've tried to search all means to find the relevant forums but could not find a proper solution. please advise on the corrective steps
(related links
https://github.com/tensorflow/tensorflow/issues/6683
https://github.com/fchollet/keras/issues/4875
https://stackoverflow.com/questions/41328769/tensorflow-loss-resets-after-successfully-restored-checkpoint
)

I found the root cause. my input data vectors are modeled differently across each execution due to some issue in the data modeling part. Otherwise, no issue in tensor flow graph after restoration found. After fixing the input data model, I could able to retrain from the last checkpoint properly. I suggest cross checking the input data model for its consistency across multiple executions

I ran into the same problem, I have no idea how to solve it. Can you explain your solution in detail? Thank you.

@amadupu I am having the same issue as you, any tips on how to solve it? Does it have to do with how I am building the tfrecords from the png? Or is it after that

I think this link might be helpful.


GH-5039: Tweak costs and chainspec settings

Closes #5039
This PR adds a gas charge for calling a non-existing system contract entry point. Additionally, some charges for incorrectly charged system contract entrypoints are raised significantly (10k motes -> 2.5 CSPR or more depending on complexity).
This PR changes fee_handling and refund_handling to be consistent with 1.5.x settings (refund 99% and pay to proposer)

bors r+


Investigate caching of built resources between builds

Github Actions allows caching of resources between builds. This sounds like an interesting case for us to use with docker images - we can have the image(s) built, for example, nightly and during the run we load the image and use it. This would work because we don't bake the service code into the image.
A very basic example is here.

The same can probably be used to cut short the tool CI by caching the service binary.

The main issue can be covered in #124 by "publishing" the Docker images to the Github registry.
Closing this issue for now. Might be reopened if/when we find a use for the caching.


Fix GH workflow perms

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

Project coverage is 95.16%. Comparing base (e91d8db) to head (6831c5a).
Report is 2 commits behind head on main.

Additional details and impacted files
@@           Coverage Diff           @@
##             main    #1133   +/-   ##
=======================================
  Coverage   95.16%   95.16%
=======================================
  Files         102      102
  Lines       10236    10236
=======================================
  Hits         9741     9741
  Misses        346      346
  Partials      149      149

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


Tasks are not tagged while other resources are

It appears we are tagging ECS clusters and services but not tasks:

Cluster

Key - com.docker.compose.project
Value - dockerecsdemo

Services

Key - com.docker.compose.service
Value – backend
Key - com.docker.compose.project
Value – dockerecsdemo

Tasks – Null

It appears that co-pilot had a similar issue with propagating tags: https://github.com/aws/copilot-cli/issues/789.

@chris-crone I see this as Docker Labels on the Task and Tags still are empty?
❯ docker ecs version
Docker ECS plugin v1.0.0-beta.4 (1a949c6)
Docker Labels:

Key - com.docker.compose.service
Value - backend
Key - com.docker.compose.project
Value - dockerecsdemo

Arg, thanks for catching that @CarmenAPuccio. @ndeloof has put up #214 which should fix this.


Hi How can we make this menu come to left handside.

Hi great job with this menu component but how do we make it come in left handside of the android device and one more question can we inflate view badger to the menu item if and when we have the notification let me know . Honestly great job Thank you

Hi, thank you for your kindness.
If you are interested in this feature you can create a pull request. We react to the pull requests ASAP.


Question: Multiple IPs on one device?

I have some servers with 2 IP addresses, one primary and one for out-of-band management.  I'd like to scrape both IPs with Prometheus using 2 different jobs.  For example, blackbox exporter on the primary, and SNMP on the out-of-band IPMI.  Do you have any thoughts on how to accomplish this?
So far I've been scraping an endpoint like this:
http://netbox/api/plugins/prometheus-sd/devices?status=active&cf_prometheus_job=netbox_blackbox_ping

I could use the ip-addresses endpoint instead for the second one, but then I would lose important metadata.  I'm most interested in site and location labels.

Netbox has the ability to map OOB IP next to the primary IP since a while. I think there's already a PR for that which is merged. Does this solve your issue?

Oh ok perfect! I see that now. I accidentally posted in the wrong repo.


Use local bundle release override when changing spec

Sometimes, our PRs include changes to spec structs which would also be accompanied by changes in the config/ folder. During every run of the E2E presubmit, the latest bundle from S3 is pulled down and is parsed to know what images to use and what manifests to apply for cluster creation. One of the steps in cluster creation is installtion of custom components and EKS-A CRDs that are defined in the eksa-components.yaml manifest from the bundle release.
However due to local changes in spec, the eksa-components manifest that was pulled down from S3 will no longer work, since it corresponds to an outdated spec. This PR fixes that by detecting changes under config/, that imply that the spec CRD was changed, and generates a local compatible version of the eksa-components to be used in the e2e tests. The tests are configured to run with a local bundle release override in this case, where the eksa-components points to a local file rather an S3 URI.
/hold
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: abhay-krishna
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [abhay-krishna]

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

@abhay-krishna: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

eks-anywhere-e2e-presubmit
1434961a87f809be3c4dd63e957a3b28de74c7ce
link
/test eks-anywhere-e2e-presubmit

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/unhold

/retest

@abhay-krishna: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

eks-anywhere-e2e-presubmit
5826dccfedd7b1a2e0e295c238695d916869594e
link
/test eks-anywhere-e2e-presubmit

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: abhay-krishna, pokearu
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [abhay-krishna,pokearu]

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

@abhay-krishna: The following test failed, say /retest to rerun all failed tests:

Test name
Commit
Details
Rerun command

eks-anywhere-cluster-controller-tooling-presubmit
90f3ca948705ef2fe06cbea8b607b220d5be24f5
link
/test eks-anywhere-cluster-controller-tooling-presubmit

Full PR test history. Your PR dashboard.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. I understand the commands that are listed here.

/retest

New changes are detected. LGTM label has been removed.

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: abhay-krishna, pokearu
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [abhay-krishna,pokearu]

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


Umbrella issue: Localizing the Kubernetes website into Russian

Kubernetes documentation - the Russian localization project
Maintainers:

shurup
kirkonru

This Issue tracks the progress of the localization of the Kubernetes documentation in Russian.
General workflow

Choose the article you want to translate from the list below and comment in this issue that you are ready to work on it.
Wait for a response from the localization team. Maintainers will assign the chosen file to you.
Fork the main branch of the kubernetes/website repo.
Translate the chosen English article.
In your fork, create a corresponding Russian file (in /content/ru/docs/…) for the article you have translated. Make sure its name is the same as the original.
Fill it with the translated text; keep the layout and code samples intact. Use single backticks (`) to call out code or a command within a sentence.
Create a PR named [ru] Localization of /your/article.md, add the language/ru label to it.
Select dev-1.25-ru.1 as the target branch.

Points to remember

Please use the word localization instead of translation.
Make sure no one is translating the file.
If you feel that the localization team takes too long to respond, feel free to @mention/ping the maintainers mentioned above.

Useful links

For more information on how to contribute, check out these guidelines.
Feel free to join the relevant Slack channels:

Kubernetes;
kubernetes-docs-ru;
sig-docs-localizations.

Kubernetes Website Repository: https://github.com/kubernetes/website

Files
🟢 - localization is complete, the PR is ready for merging;
🟡 - localization is in progress;
🔵 - file is ready for review;
🟣 - file has been merged.

concepts/architecture/cgroups.md
🟢    concepts/architecture/cri.md
🟢    concepts/cluster-administration/certificates.md
🟣    concepts/cluster-administration/flow-control.md
🟣    concepts/cluster-administration/logging.md
🟢    concepts/cluster-administration/manage-deployment.md
🟢    concepts/cluster-administration/networking.md
🟢    concepts/cluster-administration/proxies.md
🟢    concepts/cluster-administration/system-metrics.md
🟢    concepts/cluster-administration/system-traces.md
🟢    concepts/cluster-administration/system-logs.md
🟢    concepts/configuration/_index.md
🟢    concepts/configuration/configmap.md
🟢    concepts/configuration/manage-resources-containers.md
🟢    concepts/configuration/organize-cluster-access-kubeconfig.md
🟢    concepts/configuration/overview.md
🟢    concepts/configuration/secret.md
🟢    concepts/configuration/windows-resource-management.md
🟢    concepts/containers/_index.md
🟢    concepts/containers/container-environment.md
🟢    concepts/containers/container-lifecycle-hooks.md
🟢    concepts/containers/images.md
🟢    concepts/containers/runtime-class.md
🟡 WIP    concepts/extend-kubernetes/_index.md
🟡 WIP    concepts/extend-kubernetes/operator.md
🟡 WIP    concepts/extend-kubernetes/api-extension/_index.md
🟡 WIP    concepts/extend-kubernetes/api-extension/apiserver-aggregation.md
🟡 WIP    concepts/extend-kubernetes/api-extension/custom-resources.md
🟡 WIP  concepts/extend-kubernetes/compute-storage-net/_index.md
🟡 WIP  concepts/extend-kubernetes/compute-storage-net/device-plugins.md
🟡 WIP  concepts/extend-kubernetes/compute-storage-net/network-plugins.md
🟡 WIP concepts/overview/working-with-objects/finalizers.md
🟡 WIP concepts/overview/working-with-objects/owners-dependents.md
🟡 WIP concepts/policy/_index.md
🟡 WIP concepts/policy/limit-range.md
🟡 WIP concepts/policy/node-resource-managers.md
🟡 WIP concepts/policy/pid-limiting.md
🟡 WIP concepts/policy/resource-quotas.md
🟣   concepts/scheduling-eviction/_index.md
🟣   concepts/scheduling-eviction/api-eviction.md
🔵   concepts/scheduling-eviction/assign-pod-node.md
🟡 WIP  concepts/scheduling-eviction/kube-scheduler.md
🟡 WIP concepts/scheduling-eviction/node-pressure-eviction.md
🟡 WIP concepts/scheduling-eviction/pod-overhead.md
concepts/scheduling-eviction/pod-priority-preemption.md
concepts/scheduling-eviction/resource-bin-packing.md
concepts/scheduling-eviction/scheduler-perf-tuning.md
concepts/scheduling-eviction/scheduling-framework.md
concepts/scheduling-eviction/taint-and-toleration.md
concepts/scheduling-eviction/topology-spread-constraints.md
concepts/security/_index.md
concepts/security/api-server-bypass-risks.md
concepts/security/controlling-access.md
concepts/security/multi-tenancy.md
concepts/security/overview.md
concepts/security/pod-security-admission.md
concepts/security/pod-security-policy.md
concepts/security/pod-security-standards.md
concepts/security/rbac-good-practices.md
concepts/security/security-checklist.md
concepts/security/windows-security.md
concepts/services-networking/_index.md
concepts/services-networking/connect-applications-service.md
concepts/services-networking/dns-pod-service.md
concepts/services-networking/dual-stack.md
concepts/services-networking/endpoint-slices.md
concepts/services-networking/ingress-controllers.md
concepts/services-networking/ingress.md
concepts/services-networking/network-policies.md
concepts/services-networking/service-topology.md
concepts/services-networking/service-traffic-policy.md
concepts/services-networking/service.md
concepts/services-networking/topology-aware-hints.md
concepts/services-networking/windows-networking.md
concepts/storage/_index.md
concepts/storage/dynamic-provisioning.md
concepts/storage/ephemeral-volumes.md
concepts/storage/persistent-volumes.md
concepts/storage/projected-volumes.md
concepts/storage/storage-capacity.md
concepts/storage/storage-classes.md
concepts/storage/storage-limits.md
concepts/storage/volume-health-monitoring.md
concepts/storage/volume-pvc-datasource.md
concepts/storage/volume-snapshot-classes.md
concepts/storage/volume-snapshots.md
concepts/storage/volumes.md
concepts/storage/windows-storage.md
concepts/windows/_index.md
concepts/windows/intro.md
concepts/windows/user-guide.md
concepts/workloads/_index.md
concepts/workloads/controllers/_index.md
concepts/workloads/controllers/cron-jobs.md
concepts/workloads/controllers/daemonset.md
concepts/workloads/controllers/deployment.md
concepts/workloads/controllers/job.md
concepts/workloads/controllers/replicaset.md
concepts/workloads/controllers/replicationcontroller.md
concepts/workloads/controllers/statefulset.md
concepts/workloads/controllers/ttlafterfinished.md
concepts/workloads/pods/_index.md
concepts/workloads/pods/disruptions.md
concepts/workloads/pods/downward-api.md
concepts/workloads/pods/ephemeral-containers.md
concepts/workloads/pods/init-containers.md
concepts/workloads/pods/pod-lifecycle.md
concepts/workloads/pods/user-namespaces.md

/language ru
/area localization

@kirkonru thank you for summing it all up! Let's also add PRs to the documents that are translated already but not merged yet, please. E.g.:

[x]   concepts/cluster-administration/networking.md — #36467
[x]   concepts/cluster-administration/proxies.md — #36783
…

We've started with translating the missing pages; however, there are some problems with existing (already translated) pages as well.

#37745 revealed that concepts/_index.md (and the first pages it leads to) is significantly outdated. Since it's a starting point for many users, I'd say these pages are more important than other files we have in our current todo list;
looking at #35187 made me realise this article has room for improvement as well (hopefully, @Zhurik will handle that — we can mark him as WIP for now).

@kirkonru, reflect these thoughts in the Files, please.

This issue is an ongoing effort; thus, we don't want to make it stale.
/remove-lifecycle stale

/triage accepted
/lifecycle frozen
/area localization

Hi gents! @shurup @kirkonru
I could contribute to this issue, if help is still needed.
I could start with concepts/workloads/_index.md unless you think the docs should be localized in the order provided above. Let me know. Thanks! :)

Hi @yungserge! Sure, there's still a lot to be done, and your help will be much appreciated!
@kirkonru, please confirm you haven't started working on concepts/workloads/_index.md yet so Sergey can proceed with this page.

Hi @yungserge! No work has begun on concepts/workloads/_index.md, so feel free to localize it. Please let me know when you are ready to proceed - I'll label the page as a WIP. The Documentation Style Guide might come in handy (Russian version is also available, but I'm not sure how up to date it is).

@kirkonru I've already started, you can label it as WIP. Thanks, the Documentation Style Guide is helpful

Hey guys! @shurup @kirkonru  I am ready to submit the PR but it says to "Select dev-1.25-ru.1 as the target branch." and I do not see this one in the repo. Should I just select the main branch?

@yungserge right, mentioning the v1.25 branch there is outdated. You can use main instead.

@kirkonru  I can start with the next one: concepts/workloads/controllers/_index.md

@yungserge Great! Got it assigned to you.

I can start working on concepts/workloads/controllers/cron-jobs.md while waiting for feedback on #44009.

Hi @yungserge, that's awesome! Please feel free to keep going with the whole concepts/workloads part, as we are unaware of anyone else handling it ATM.

Hi @shurup, could you take a look at #44009? I am ready to submit the next document, and I wanted to get feedback on the current PR before I do so :)

Hi @yungserge! I will surely do that. Sorry for the delay on my side due to a vacation and Christmas holidays. Hopefully, I'll get back to reviewing it next week.

@shurup No problem, just when you get a chance. Thank you!

Hi @shurup, @kirkonru 👋
I can help with translating the Pods page


Revolve not working with all faces of a sketch

This code generates the above image:
from build123d import *

with BuildPart() as rev:
    with BuildSketch() as texts:
        with Locations((0,90,0)):
            Text("Some",50,font='Arial',font_style=FontStyle.REGULAR)
        with Locations((0,50,0)):
            Text("Text!",50,font='Arial Black',font_style=FontStyle.BOLD)
    #revolve(texts.sketch.faces(),axis=Axis.X,revolution_arc=45)
    for i in texts.sketch.faces():
        revolve(i,axis=Axis.X,revolution_arc=45)
#show_object(texts.sketch)
show_object(rev.part)

This code only generates one of the revolved shapes:
from build123d import *

with BuildPart() as rev:
    with BuildSketch() as texts:
        with Locations((0,90,0)):
            Text("Some",50,font='Arial',font_style=FontStyle.REGULAR)
        with Locations((0,50,0)):
            Text("Text!",50,font='Arial Black',font_style=FontStyle.BOLD)
    revolve(texts.sketch.faces(),axis=Axis.X,revolution_arc=45)
#show_object(texts.sketch)
show_object(rev.part)

revolve was keeping only the last revolved face - fixed.


Unfaithful Answers

Thank you for this work!
We get faithful answers from human annotators (along  with corresponding citations for each answer). Where do the unfaithful answers come from? How are they generated? For example, I see quite a few in the technology_references.json file from the google drive
Also, in the citations version  of the technology data there seems to only be 12 entries for unfaithful answer but the google drive (uncited) version has one for almost each question. Why the discrepancy?

Hello, unfaithful answers are also annotated by human annotators. We instructed them to insert an error in the original faithful answer.
We eventually decided not to use the unfaithful answer in our paper, and this repo is only for reproducing the results in the paper. Feel free to leverage the unfaithful answers if it is any helpful to your work.


[AutoPR applicationinsights/resource-manager] fix: applicationinsights delete examples

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/6636

(message created by the CI based on PR content)

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/6521


RBAC: Allow resource "arn:lakefs:fs:::repository/prefix*"

If I have many repositories then I want to control access on the subset of repositories based on the prefix. So, allow resource "arn:lakefs:fs:::repository/prefix*".

The reason here is that in some scenarios you will have hundreds of users and repositories. However, each user has access to a much smaller list of repos. Often, based on a prefix, that can be a department name, for example. This gets "noisy" fast, and would be better if users can only see their repositories.

This is needed to list the repositories

The challenge is not only the "noise" but also strictly separation of access. Users shouldn't see repositories that they have no access to.

duplicate of https://github.com/treeverse/product/issues/181


Add API Documentation for Mentors, Services and Status endpoints

Feature
Why is this feature being added?

Our contributors need to be able to research, confirm and build against the API endpoints that the backend offers.
What should your feature do?
Document the following backend API endpoints in our online API documentation.  When doing so, please follow the steps described in our README for how to document our API.
The endpoints to be documented are:

[ ] api/v1/mentors_controller#index
[ ] api/v1/mentors_controller#show
[ ] api/v1/services_controller#index
[ ] api/v1/status_controller#all

@hpjaj May I have this issue -- i think this would be great starting point on the backend.

@dave5801 - It's yours!  Ping me if you have any questions.

HI @hpjaj, I am new to contributing and it looks like this is up my alley. May I?

@robotscissors - it's yours!  Let me know if you have any questions.

Hi Harry, got docker installed and forked. Following the instructions [
operationcode_backend/docs/setup/docker_setup.md], after running this:
Let's Go:> make test
docker-compose up --build -d
Creating network "operationcodebackend_default" with the default driver
Pulling bundle (operationcodebackend_web:)...
ERROR: Get
https://registry-1.docker.io/v2/library/operationcodebackend_web/manifests/latest:
unauthorized: incorrect username or password
make: *** [bg] Error 1
Can you give me a shove in the right direction?
On Sun, May 6, 2018 at 8:06 PM, Harry Levine<EMAIL_ADDRESS>wrote:

@robotscissors https://github.com/robotscissors - it's yours! Let me
know if you have any questions.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/OperationCode/operationcode_backend/issues/217#issuecomment-386945172,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AXhbH8plcCdoGmRYsUEaUzAgGnPIpP2qks5tv7oqgaJpZM4RL-nF
.

To confirm, have you tried:

Have the Docker app running
Run make setup
Run make bundle
Run make test

Also, are you on a Mac, PC, or Linux?

Hi Harry,
I am on a Mac. Yes, I have tried all three commands and docker is running.
https://registry-1.docker.io/v2/library/ruby/manifests/2.3.3  (which I
think is the container)
Returns this:
{

errors:
[
{
- code: "UNAUTHORIZED",
- message: "authentication required",
- detail:
[
-
{
- Type: "repository",
- Class: "",
- Name: "library/ruby",
- Action: "pull"
}
]
}
]

}
On Mon, May 7, 2018 at 6:55 PM, Harry Levine<EMAIL_ADDRESS>wrote:

Also, are you on a Mac, PC, or Linux?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/OperationCode/operationcode_backend/issues/217#issuecomment-387259928,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AXhbH9ZDiGjAOLzpxb0n3bpsJxYbe3Wbks5twPsKgaJpZM4RL-nF
.

Hold the phone. I logged out of Docker at the command line and logged back in again, and things are moving. Thank you for your patience.


"no-gutter" class does not affect a sass @extend row, when there is no "col" class present

https://v4-alpha.getbootstrap.com/layout/grid/#no-gutters
since the code targeting a ".col" class,
if sass is being used to affect html without said ".col" class, the code will work on the "row" itself, but not any children [who has no "col" class]

You are using an outdated version of Bootstrap. Please upgrade to v4.0.0-beta.2
Docs are now here: https://getbootstrap.com/docs/4.0/

like @wolfy1339 said :smile:

:) okey

Closing because version was outdated.


Job enablement refactoring

allow to disable projects with a quick switch in jjb
Templates set the variable disabled=true to disable an entire project. The jobs are still there and deployed.
This can help when ressouces are low or the workers of an additional arch are not available - they can be disabled now with a small change to the project configuration in jjb.

This is a split of PR #1762


Add support for Energinet

New to go so I am very open to suggestions in terms of my code. I have yet to try evcc to its full potential, but could identify that I would be missing the electricity price so decided to implement an API connection right away.
I could see that the current user base is not that interested in getting the current (or as we call it in Scandinavia "spot" price), but I am guessing this would be the future for all European countries. There was an issue suggesting implementing of ENTSO-E, but as this requires an API token (which although is easily obtainable is kind of a pain to get since you have to write them an email) I decided to start with Energi Data Service for the Danish market. I might look into ENTSO-E further down the road.

Looking good. Just to be sure: you can't get DK prices from Elering?

Sorry for the hickup. You'll still need to run gofmt or simply use VScode!

@andig could you help me out on this one? I tried running "make porcelain" on my PC, but it modified pretty much all the files. I can see that when it runs in the Actions it just takes the two files.
I am running VSCode on Windows if this makes any difference.

Done, still:

Just to be sure: you can't get DK prices from Elering?

When looking at https://dashboard.elering.ee/assets/api-doc.html#/nps-controller/getPriceUsingGET I can only see prices for EE, FI, LT and LV

LGTM, thank you very much!

Cool feature, but i cant find anything in the dokumentation,
how is charges: supposed to work?

The price is used to calculate the cost of the charge. I believe there is also a setting to pursue to find the cheapest charge price.

Yes i understand that but in what format should i use the field?
In Home Assistant i use this template for additional charges.
`{% set s = {
"trans_nettarif": 0.05800,
"systemtarif": 0.05400,
"balancetarif_forbrug": 0.0028625,
"pso_tarif": 0.00,
"elafgift": 0.08000,
"elafgift_hoej": 0.697000,
"nettarif_c_time_lavlast": 0.326800,
"nettarif_c_time_spidslast": 0.840900,
"abonnement_net": 0.00,
"eltillaeg_ellev": 0.00,
"abonnement_ellev": 0.00
} %}
{% if states("sensor.daily_energy_import_total") | float > 10.92 %}
{% if now().month >= 10 or now().month < 4 %}
{% if now().hour >= 17 and now().hour < 20 %}
{{ s.trans_nettarif + s.systemtarif + s.balancetarif_forbrug + s.pso_tarif + s.elafgift + s.nettarif_c_time_spidslast + s.abonnement_net + s.eltillaeg_ellev + s.abonnement_ellev }}
{% else %}
{{ s.trans_nettarif + s.systemtarif + s.balancetarif_forbrug + s.pso_tarif + s.elafgift + s.nettarif_c_time_lavlast + s.abonnement_net + s.eltillaeg_ellev + s.abonnement_ellev }}
{% endif %}
{% else %}
{{ s.trans_nettarif + s.systemtarif + s.balancetarif_forbrug + s.pso_tarif + s.elafgift + s.nettarif_c_time_lavlast + s.abonnement_net + s.eltillaeg_ellev + s.abonnement_ellev }}
{% endif %}
{% else %}
{% if now().month >= 10 or now().month < 4 %}
{% if now().hour >= 17 and now().hour < 20 %}
{{ s.trans_nettarif + s.systemtarif + s.balancetarif_forbrug + s.pso_tarif + s.elafgift_hoej + s.nettarif_c_time_spidslast + s.abonnement_net + s.eltillaeg_ellev + s.abonnement_ellev }}
{% else %}
{{ s.trans_nettarif + s.systemtarif + s.balancetarif_forbrug + s.pso_tarif + s.elafgift_hoej + s.nettarif_c_time_lavlast + s.abonnement_net + s.eltillaeg_ellev + s.abonnement_ellev }}
{% endif %}
{% else %}
{{ s.trans_nettarif + s.systemtarif + s.balancetarif_forbrug + s.pso_tarif + s.elafgift_hoej + s.nettarif_c_time_lavlast + s.abonnement_net + s.eltillaeg_ellev + s.abonnement_ellev }}
{% endif %}
{% endif %}
`

/cc @VolkerK62 haben wir charges und taxes dokumentiert?

Die Doku ist bei diesem PR nicht beachtet worden.
Habe mal einen Blick in die evcc.dist.yaml geworfen.
"Elering" und "Energinet" sind in der Doku nicht gelistet.


chore: Add CODEOWNERS mapped by filenames

Adds a codeowners using existing reviewer patterns.
The OWNERS file was a loosely tied benefit of:
https://github.com/equinix/terraform-provider-equinix/pull/142#issue-1237879622

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

Comparison is base (a60c71f) 44.71% compared to head (b62d9d0) 58.94%.
Report is 2 commits behind head on main.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##             main     #396       +/-   ##
===========================================
+ Coverage   44.71%   58.94%   +14.22%
===========================================
  Files          98       98
  Lines       19888    19888
===========================================
+ Hits         8893    11722     +2829
+ Misses      10961     7874     -3087
- Partials       34      292      +258

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


[IOTDB-4378] Negtive feedback Region extension policy

In order to make the Partition algorithm more durable, the following changes are made:

It's necessary to  create a new RegionGroup when no RegionGroups are available for a StorageGroup (all RegionGroups are Disabled). See the RegionGroup Allocation doc for more details.
It's feasible for using Unknown DataNode to alllocate new Region when the number of Running DataNodes is insufficient. The RegionMaintainer thread will retry the Region creation process after the specified DataNodes are restarted. The RegionMaintainer thread was finished in IOTDB-4370.
No matter whether the new RegionGroups creation is success or not, it takes no effects on the Partition allocation decision. Because we can only consider all available RegionGroups to process Partition allocation in this step.

You can see the Partition Algorithm doc to get an overview of the whole process.

WIP. I need to optimize some code structure.

I'll paste doc and update tests later~

LGTM


Dragging 2 or more items not working properly

So I am creating a tool where multiple draggable items could be add. The weird part is that only one items is being dragged correctly when I click my mouse and hold to drag. When I have a second item that I want to drag, it is not being dragged when I click my mouse and hold, but once I do mouse up and just move the cursor, it is suddenly moved. Not what I expect.
Here is how it looks like in code:
const [ activeDrags, setActiveDrags ] = useState(0);
const onStart = () => {
    setActiveDrags(activeDrags + 1);
};
const onStop = () => {
    setActiveDrags(activeDrags - 1);
};
const dragHandlers = {onStart: onStart, onStop: onStop};

return (
    <div id="bannerContent">
        <Draggable {...dragHandlers} bounds="#bannerContent">
            ........
        </Draggable>
        <Draggable {...dragHandlers} bounds="#bannerContent">
            ........
        </Draggable>
    </div>
)

Anything I am missing?

I have the same issue also, did you find any solution ?


Add image holder new site

https://imageholdr.com/

Something want to add

Other useful tool https://libreqr.com :)


JMLL-887 Update the LSD team Zendesk ticket copy

Codecov Report

Merging #187 (10b3630) into main (2377154) will decrease coverage by 0.01%.
The diff coverage is 50.00%.

@@            Coverage Diff             @@
##             main     #187      +/-   ##
==========================================
- Coverage   75.55%   75.53%   -0.02%
==========================================
  Files         160      160
  Lines        6021     6022       +1
==========================================
  Hits         4549     4549
- Misses       1472     1473       +1

Impacted Files
Coverage Δ

leavers/workflow/tasks.py
59.27% <0.00%> (-0.27%)
:arrow_down:

core/utils/lsd.py
46.15% <100.00%> (ø)

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 2377154...10b3630. Read the comment docs.


Allow setting the nav header color via config

If you have a collection of related, but distinct doc sites, it's really nice to be able to color code them without having a completely custom theme for each.

Would love to see this, but I expected the appropriate change in the css file. Does it not work the same?

Are you saying you want the config to be applied via stylesheet and not inline style?

Right, that way it'd be applied to all places that use #2980B9 and would be consistent. I don't know how the templating works here with css

Well the purpose of this PR is not to allow people to globally change a color, but to specifically set the header color. It would be cool to allow a global change, but I'm not sure if that's possible since, as far as I'm aware, sphinx theme packages are comprised of css and not sass, and I'm not aware of a way to modify a theme css file based on the config.

If it is in fact possbile and someone could explain how, I would be happy to update the PR.

So I haven't worked on this project in a bit, so I'll leave it to someone else one of the maintainers to make a decision but thought I'd chime in here.
The sass files give you essentially what you are looking for. An ability to theme the look and feel of a project using variables. Using python to change frontend is generally backwards way to do it and not the right tool for the job. Sphinx took this in the wrong direction by allowing the css_t stuff which essentially is a junk version of sass or any other preprocessor which are pretty standard tools at this point. Using config values to manage css is a very lazy (and dirty) way to solve a problem.
I generally think it's a bad idea for python code to modify the frontend when the frotend world has perfectly good ways to handle these problems.
To change colors in the proper way you want simply edit the sass files. Look to PR https://github.com/snide/sphinx_rtd_theme/pull/226 as an example of how coloring should be handled with the source files. But yeah, you want to edit sass files, then build css. Not edit python files to create style tags or run a secondary, un-used outside of sphinx css_t system.

I agree that it's generally a bad idea for python code to modify the frontend.
However, I think changing just the header color via config is akin to setting the logo image via config. It's something super simple that allows you to individualize the site without having to do any dev work. This is how a lot of wordpress themes work, you can't just re-skin your theme through the config, but you can change a couple of key visual things, like the logo image and a header color.
Regardless, we are using my own fork to handle this, so it's not a big deal if other people don't think this is a good idea.

@snide I'm not sure what you mean... Isn't this exactly what the TODO is describing?
@asakusuma I definitely want to see this, as color is the most obvious personalization on this theme

@siminm That todo actually describes what was done in this PR.
https://github.com/snide/sphinx_rtd_theme/pull/226

I'm -1 on this too. This would be better left off to css overrides.

Closing this out due to inactivity and because of the issues raised above -- I don't think this PR is mergable. I think this use case is better served with the other options that were outlined above and I wouldn't want to start implementing changes as inline CSS styles.


try to fix release by telling github actions to use correct java version

I haven't tested this (it's kinda hard to test without merging), but here is the relevant documentation about this environment variable:

https://docs.github.com/en/actions/learn-github-actions/workflow-syntax-for-github-actions#env
https://github.com/actions/virtual-environments/blob/macOS-11/20211219.1/images/macos/provision/core/openjdk.sh
https://github.com/actions/virtual-environments/blob/macOS-11/20211219.1/images/macos/macos-11-Readme.md

Let's give it a try!


Notebook diff view not preserved on reload

Testing #105770

Open the my-work.github-issues file
Make some changes to it, open it in the changes view
Reload VS Code. The notebook diff view is no longer open

This works nicely with regular editors.

Works nice now, thanks for fixing


DefaultAzureCredentials availability

Looking for capabilies mentioned in the following blog,  https://devblogs.microsoft.com/azure-sdk/authentication-and-the-azure-sdk/. It seems Go SDK is not mentioned there. Any update on it?

Hi @toklive thanks for this issue!
Based on the documentation link in this blog, I assume this DefaultAzureCredentials should come from Azure.Identity namespace, which belongs to go SDK track 2. @jhendrixMSFT could you please share some comment about this?

You are correct, this will be released as a part of azidentity.  We have released an early alpha, you can find it here if you're curious.  It's not ready for general consumption, and you need an adapter to make it work with our track 1 SDK.

@jhendrixMSFT isDefaultAzureCredentials  ready for general consumption ?

It's still in preview but should be stable, both in terms of public surface area and execution.

Available in preview
https://pkg.go.dev/github.com/Azure/azure-sdk-for-go/sdk/azidentity


Start work on player-data loading (#72); default gamemode

Start work on loading player NBT data when it exists.
For the moment, it only loads the gamemode, so it does not complete the scope of ticket #72. It should however be the groundwork for loading spawn and inventory data.

There are no tests yet because I'd like to get some feedback on the NBT-loading/component integration.

Thanks!


WIP: Add bundlesize check

Deploy preview for gestalt ready!
Built with commit 21267d8c90d5553f046f61a6dcdfcd30d7ab8b61
https://deploy-preview-146--gestalt.netlify.com

Warnings

:warning:

Please add a changelog.md entry for your changes.

  Generated by :no_entry_sign: dangerJS

Is it possible to use Danger for this? Facebook uses it for the same purpose: https://github.com/facebook/react/pull/12682#issuecomment-384059206
Also, should we possibly be thinking of having a build matrix (dev/prod etc?) Uglify-es will strip all source-maps from the output.

Glad you didn't add moment!


Error in generated Controller

Hi, I'm having the following error in a generated controller:
Cannot use Mitul\Controller\AppBaseController as Controller because the name is already in use

The line that leads to this error is:
use Mitul\Controller\AppBaseController as Controller;

Can you post your generated controller code here ?

I run "php artisan mitul.generator:scaffold_api Project"

@tantam,
which version you are using ? Laravel version and Api Generator version ?

This is because currently exists a Controller class in your controllers folders.
You can solve it publishing templates:
php artisan mitul.generator:publish --templates

and edit first lines from the file resources/api-generator-templates/controller/AppBaseController.php
to this:
<?php namespace $NAMESPACE_CONTROLLER$;

use $NAMESPACE_APP$\Http\Controllers\Controller as AppController;
use Illuminate\Http\Request;
use Response;
use Symfony\Component\HttpKernel\Exception\HttpException;

class AppBaseController extends AppController
{

This is fixed in master branch. Now we are using AppBaseController instead of Controller.


OOM when streaming webcam video via webrtc on iMX8M mini

Hi,
I have an Issue when Streaming a video from a camera, connected via CSI to the iMX8M Mini, via webrtc to somewhere else. The Memory-Usage of the WPEWebProcess is increasing continously and after some time the system crashes. I currently can't find the cause of this increasing memory and already tested the gstreamer-pipeline which I extracted from the Log, but the pipeline runs smoothly.
With this webpage is reproduceable: cog --platform=fdo --set-permissions=all --enable-media-stream=true  https://janus.conf.meetecho.com/echotest.html
That's the Pipeline I tested: gst-launch-1.0 v4l2src ! videoscale ! videoconvert ! videorate ! capsfilter ! valve ! tee ! queue ! autovideosink
Another Issue, which seems to be related to this, is that after stopping the video and restarting it again, there is no video stream anymore and the memory usage doesn't increase.
Here are the gstreamer logs: GStreamer.zip

Is there any way, to get logs from the WPEWebProcess? I already tried an strace, but up to now I haven't found anything usefull in it. But here it is attached:
strace.log

I reproduced the error on a Raspberry Pi 4 as well. So it's not something related to the NXP-Board and the NXP Libraries and even a newer version of Webkit doesn't fix the Issue (I tried it with commit b067fbd3e80e53b9359f99367a6c2c342cdd75ce).

This is clearly a WebKit bug, forwarded upstream: https://bugs.webkit.org/show_bug.cgi?id=234134


Add scraping of deadlines and conference rankings

I added automated scraping of

Deadlines from WikiCFP
Rankings from Core

Currently the output are two files (actually yaml, but Github wants txt for upload):

conference_new_candidates.txt: contains new deadlines
conference_update_candidates.txt: contains updates to existing deadlines (updated information is currently marked with (NEW))

Some open points:

[ ] WikiCFP has a CC BY-SA 3.0 license, so all the deadline information would need to follow this license if we want to use it
[ ] I did not find the license for the data scraped from Core
[ ] The scraping can be done within the Docker container, which means that we could use Github Actions to automatically commit suggestions, i.e. to automatically commit the above mentioned files. This way, people from the community could easily check this data as well? What do you think?
[ ] What is the "best" output format? I thought having extra yaml files might be a good start, but maybe there are other ideas?
[ ] Any ideas on how to best match the conference master data information with the results from scraping?
[ ] Recent changes have been overwritten, need to check conferences.yml before merge

Cheers Alex

@a-nau thanks for this PR. I will be reviewing this by the end of week.


Write iio driver names to a file

Resolved by https://github.com/sdgtt/nebula/commit/987eee5a268c73428aa678f8b9a623c7289be08f


owner(ticdc): Fix an unexpected stop problem for changefeed backoff

What problem does this PR solve?

Issue Number: close #6348
What is changed and how it works?
Use 0 as MaxElapsedTime value instead of not populating this field. Because if MaxElapsedTime is not set,
15 min will be used in default. So after 15min, the backoff will stop, which is unexpected.
Ref https://github.com/cenkalti/backoff/blob/6b0e4ad0cd65431b217393bff47d1dff727b264b/exponential.go#L80
Check List
Tests

Unit test
Integration test

Questions
Will it cause performance regression or break compatibility?
No
Do you need to update user documentation, design documentation or monitoring documentation?
No
Release note
None

Note the affected versions should be updated, since https://github.com/pingcap/tiflow/pull/4262 was picked to all release branches.

Please add unit tests. Also make sure when a processor reports an error, owner close its changefeed immediately.

@overvenus We already have a test case TestHandleError to cover the backoff retry. The root cause of this issue is due to the hidden DefaultMaxElapsedTime = 15 * time.Minute of the backoff lib. I thought about adding more intervals in the following lines to let the total elapsed time pass 15min:
https://github.com/pingcap/tiflow/blob/f86dd0643ae7716685751dc8c89da733c211345c/cdc/owner/feed_state_manager_test.go#L267-L272
However, 15min is extremely long for a unit test. Do you have any suggestions?

Note the affected versions should be updated, since #4262 was picked to all release branches. @zhaoxinyu

The problem fixed by this PR is introduced in https://github.com/pingcap/tiflow/pull/6020, which was in a feature branch. In that PR, defaultBackoffMaxElapsedTime was removed to solve another issue #5647. It should be solved in master branch. It is my mistake.
Maybe I should submit a standalone PR in 6.1 branch and cherry-pick it back? @amyangfei How do you think?

Please add unit tests. Also make sure when a processor reports an error, owner close its changefeed immediately.

@overvenus We already have a test case TestHandleError to cover the backoff retry. The root cause of this issue is due to the hidden DefaultMaxElapsedTime = 15 * time.Minute in the backoff lib. I thought about adding more intervals in the following lines to let the total elapsed time pass 15min:
https://github.com/pingcap/tiflow/blob/f86dd0643ae7716685751dc8c89da733c211345c/cdc/owner/feed_state_manager_test.go#L267-L272
However, 15min is extremely long for a unit test. Do you have any suggestions?

What about setting a smaller backoff interval in tests?

What about setting a smaller backoff interval in tests?

@overvenus , in the unit tests, I think the backoff interval is already small enough. Ref:
https://github.com/pingcap/tiflow/blob/899d50e2472fcf9f7c2eadcc811108439c697314/cdc/owner/feed_state_manager.go#L78-L84

so make sure when a processor reports an error, owner close its changefeed immediately.

Okay, we need a test as mentioned above.

Note the affected versions should be updated, since #4262 was picked to all release branches. @zhaoxinyu

The problem fixed by this PR is introduced in #6020, which was in a feature branch. In that PR, defaultBackoffMaxElapsedTime was removed to solve another issue #5647. It should be solved in master branch instead of in the feature branch. It is my mistake.
Maybe I should submit an other standalone PR in 6.1 branch and cherry-pick it back? @amyangfei How do you think?

looks fine

Codecov Report

Merging #6351 (4e7d40c) into master (82defd1) will increase coverage by 0.0180%.
The diff coverage is 63.2195%.

:exclamation: Current head 4e7d40c differs from pull request most recent head 3de0c15. Consider uploading reports for the commit 3de0c15 to get more accurate results

Flag
Coverage Δ

dm
52.0459% <56.6666%> (+0.1054%)
:arrow_up:

engine
63.5755% <50.0000%> (+0.0471%)
:arrow_up:

Flags with carried forward coverage won't be shown. Click here to find out more.
@@               Coverage Diff                @@
##             master      #6351        +/-   ##
================================================
+ Coverage   59.2948%   59.3129%   +0.0180%
================================================
  Files           751        754         +3
  Lines         86284      86718       +434
================================================
+ Hits          51162      51435       +273
- Misses        30598      30722       +124
- Partials       4524       4561        +37

/lgtm

/merge

/merge

/run-dm-compatibility-test
/run-dm-integration-test
/run-integration-test
/run-kafka-integration-test

/run-integration-test
/run-kafka-integration-test

/run-all-tests

/run-verify

/run-kafka-integration-test

/run-integration-test

/run-integration-test


replacing zef.hemel by pantelis.vratsalis in notifications

Summary
Replacing  zef.hemel by pantelis.vratsalis
Small layout change

Hi @cwarnermm,
here is the proposed change for the double languages.
And for the locks Pantelis is mentioned now instead of Zef


Memory leaks in the CFG block data structure

The problem occurred because when cleaning empty blocks, unnecessary references are added to blocks.  The bug has been fixed by using block id to construct the is_visit set when visiting all blocks.


Allow stdout print when running in Docker

Our current stdout.isatty() check doesn't allow Rally display normal
progress messages when running in Docker, as typically the container
isn't run with tty enabled.
Workaround this, by expecting an environment variable
RALLY_RUNNING_IN_DOCKER set to True.

@danielmitterdorfer Thanks for the comments! I believe I addressed all of them, could you take another pass please?

@danielmitterdorfer Thanks for the review!


Bump version to <IP_ADDRESS>

Signed-off-by: Ravi Thaluru<EMAIL_ADDRESS>Issue #, if available:
N/A
Description of changes:
Bumping version to <IP_ADDRESS> and dependencies versions
CheckList:
[ X] Commits are signed per the DCO using --signoff
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

The build is failing, unable to find the tarball for OpenSearch 1.0.0 version to run integration tests. This seems to be tracked already - https://github.com/opensearch-project/OpenSearch/issues/769

Codecov Report

Merging #87 (2771052) into main (062658a) will increase coverage by 1.36%.
The diff coverage is 80.28%.

@@             Coverage Diff              @@
##               main      #87      +/-   ##
============================================
+ Coverage     76.67%   78.03%   +1.36%
- Complexity     1542     1868     +326
============================================
  Files           199      255      +56
  Lines          8325    10326    +2001
  Branches       1323     1524     +201
============================================
+ Hits           6383     8058    +1675
- Misses         1241     1446     +205
- Partials        701      822     +121

Impacted Files
Coverage Δ

...pensearch/indexmanagement/IndexManagementRunner.kt
55.55% <0.00%> (ø)

...exmanagement/indexstatemanagement/action/Action.kt
100.00% <ø> (ø)

...nt/indexstatemanagement/action/AllocationAction.kt
83.33% <ø> (ø)

...agement/indexstatemanagement/action/CloseAction.kt
100.00% <ø> (ø)

...gement/indexstatemanagement/action/DeleteAction.kt
0.00% <ø> (ø)

...nt/indexstatemanagement/action/ForceMergeAction.kt
75.00% <ø> (ø)

...indexstatemanagement/action/IndexPriorityAction.kt
83.33% <ø> (ø)

.../indexstatemanagement/action/NotificationAction.kt
83.33% <ø> (ø)

...nagement/indexstatemanagement/action/OpenAction.kt
100.00% <ø> (ø)

...ment/indexstatemanagement/action/ReadOnlyAction.kt
100.00% <ø> (ø)

... and 312 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 6a27255...2771052. Read the comment docs.


QR Code-based Corrections

@russellsayshi is working on it.

@homu r+

:pushpin: Commit f3819be has been approved by smo-key

:zap: Test exempted - status

I'm putting this in right now to spread the updates to vision extensions.
[CAUTION] QR is still not entirely functional. :)


is_element_not_present_by_* are slow

is_element_not_present_by_* set of functions are waiting for timeout regardless whether element is present or not. There is a waiting loop in BaseWebDriver.is_element_not_present() that is waiting for negative condition and later in BaseWebDriver.find_by() down in traceback that is waiting for positive condition.
This creates hudnreds of requests to webdriver during wait for condition that is actually satisfied immediately.

I am facing this question, too. But i use the function in selenium instead to solve this question, like use the find_element_by_xxx in the try/except. it is really fast.

@andrewsmedina This issue has been fixed in 0.13.0. is_element_not_present and is_element_not_visible return the moment the element is not present/visible, instead of retrying.


unable to sign into vscode with github/microsoft on chrome os

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.79.0
OS Version: debian linux bullseye (I am on a chromebook)

Steps to Reproduce:

click account at bottom left
click "turn on setting sync"
click "sign in and turn on" (with all of the options selected)
click "sign in with github"

I have already looked at several other issues related to this. Seems like they get redirected, but for me the only thing that happens from there is it says "signing in to github", and it stays there for eternity. It doesn't redirect me anywhere. I suspect that part of the problem could be that VS code never redirects me to links that I click. Reinstalling VS code also doesn't help.

I have also tried to sign in with microsoft, but nothing happens. Not even a popup.
Here is the github authentication output:

below is some extra info

Ok, so after a lot of googling I have found a solution. It turns out, running apps on linux with chrome os has some issues. Clicking links in linux apps doesn't redirect you anywhere, but I found a solution to that here: https://stackoverflow.com/questions/64469863/chrome-os-vscode-and-other-links-not-opening-gives-google-chrome-os-cant-o
The first solution has a link to a reddit post, where you can find the commands to fix it.
After that, I needed to install the GNOME keyring using sudo apt install gnome-keyring
After I was able to sign in with github.

Ok, so after a lot of googling I have found a solution. It turns out, running apps on linux with chrome os has some issues. Clicking links in linux apps doesn't redirect you anywhere, but I found a solution to that here: https://stackoverflow.com/questions/64469863/chrome-os-vscode-and-other-links-not-opening-gives-google-chrome-os-cant-o
The first solution has a link to a reddit post, where you can find the commands to fix it.
After that, I needed to install the GNOME keyring using sudo apt install gnome-keyring
After I was able to sign in with github.


[native_toolchain_c] Bump version

It looks like the auto-publisher doesn't pick up on semantic versions with +x, so bump from 0.2.4+1 to 0.2.5.

coverage: 98.172%. remained the same when pulling 33cba8696f29c7f585791b2570e30e6e45c1caa8 on v0.2.5 into 4f4d7c303291b341cf1052380139def3a145c90e on main.