kv hash key partitioning

Enabling better underlaying performance can be achieved by adding another level, we can partition the data.
Postgres table can be partitioned by a key - to enable that, we can add an optional hash-key while setting and scanning data in our kv storage.
This issue was created to address:

API changes to enable operations using hash-key
Update the Postgres implementation to support partitioning

Putting in writing the discussion @nopcoder And I had with @ozkatz:
The API should not be changed. It is written in a general way on purpose to allow many implementations to the kv store interface. We want to partition on Postgres since the current huge non-partitioned table will quickly become the bottleneck.
The partitioning must take into account the main entity type with many changes and where performance matters => entries under a staging token. Since Keys are opaque to the kv store, it must decide on a parameter to partition by - which most likely be the prefix of the key. To ensure all entries under a staging token ends up in the same partition, we must write it at the very beginning of the key. e.g. instead of refstore/repo/my-repo/branch/my-branch/stagingTokens/my-staging-token/path/to/my/file do stagingTokens/my-staging-token/repo/my-repo/branch/my-branch/path/to/my/file/.
Given that we're currently not facing this problem (only multipart implementation is completed), and assuming that we agree on the above, this becomes more of a principal than an actual task to be done. I'll close this one if no objections are raised.

I pretty much disagree with all of the above
The API without separate hash and ordered keys is undoubtedly the simplest.  However not by much, and OTOH it will be very hard to scale.
First, note that almost every key needs a prefix space.  By not supporting it in the KV API, you're just moving the problem of handling prefixes over to the application.  Which is actually a harder problem than it seems if you don't want to limit the bytes allowed in your prefix.  So simplest might be to decide to go with prefix:key, but that means you don't get to use colons in your prefix.
But more importantly, the current API does not match some useful real-life systems, and will not attain full performance.  Examples of high-value implementation targets:

DynamoDB requires a hash and an ordered key.  Taking the first few bytes of the key as a hash will only work if scan becomes a complex operation.  Failing that, it is not that nice.
PostgreSQL is not that great at dropping many keys.  This is precisely what we need to do during a COMMIT.  But if all staging keys live in the same partitions (or even just a separate table!), this is as simple as DROPping the partition table (and faster because the staging area partition is uncontended by the time you drop it).
Cassandra and ScyllaDB have the same type of split key as DynamoDB.  True, you might want to split the different staging areas internally to avoid hotspotting -- but at the very least the API has to acknowledge this.

So I am not sold on this.  It is a simpler API.  But that API prevents a trivial performance boost on DynamoDB and similar KV stores, and will require a difficult schema upgrade when we do decide to move.  And while the API is simpler, the actual implementation code needs to be smarter about how it handles partitions.  Given that actual application code anyway needs to provide a keyspace (because auth != staging areas != ...), this simpler API makes the application code harder to migrate to real databases.

OK I think I now understand what you mean by "hash key" and it's actually a partition key? a-la dynamodb/cassandra?
I'd first suggest naming it "partition key".

Cassandra and ScyllaDB have the same type of split key as DynamoDB.

I'm ok with the split key concept, I do think it's a rather short blanket anyway.
If we want to support databases that don't have this construct it does become harder: object stores, foundationDB, spanner/cockroach and possibly others - don't provide this type of control and partition automatically on a contiguously sorted key space for scaling throughput (see S3's now-outdated recommendation to prefix paths with hash values).
Heck, this is even what lakeFS does :)

PostgreSQL is not that great at dropping many keys

'm not as concerned about performance there since this should not block a commit request anyway. dropping a partition isn't good enough unless we tell Postgres to match its partition count to the cardinality of e.g. staging tokens which could potentially mess up point lookup time (as most accesses will likely hit a partition with still-empty stats, resulting in ~table~ partition scans).
This requires testing but we've been burned by this sort of unpredictability before and I think we can agree that critical path random lookups should be prioritized over efficient partition delete performance.
TL;DR - I'm OK with having a partition key in the API. I'd be careful about premature optimizations in non-critical-path areas.


bootstrap-select directive doesn't react with v-on

Hey, I have following directive for bootstrap-select:
Vue.directive('selectpicker',{
    twoWay: true,
    deep: true,

    bind: function() {
        $(this.el).selectpicker().on("change", function(e) {
            this.set($(this.el).val());
        }.bind(this));
    },
    update: function (value) {
        $(this.el).selectpicker('refresh').trigger("change");
    },
    unbind: function () {
        $(this.el).off().selectpicker('destroy');
    }
});

The question is why Vue.js ignores v-on on my custom directive? Then I change option, searchAgreements not firing.
<select class="form-control"  v-selectpicker="filter.limit"  v-on:change="searchAgreements">
    <option value="20">20</option>
    <option value="50">50</option>
    <option value="100">100</option>
 </select>

Thanks in advance

Make sure you include jQuery before Vue so that Vue knows it needs to handle jQuery triggered events. jQuery trigger does not fire native events, so Vue detects for jQuery presence to listen to jQuery events. If you include jQuery after Vue, it won't work.

Well actually I'm including jquery before Vue, any other ideas?
global.jQuery = global.$ = require('jquery');
global.Vue = require('vue');
Vue.use(require('vue-resource'));
Vue.directive('selectpicker', require('./salestool/directives/selectpicker'));

I tested locally and it seems to work fine for me. If you are still having issue, please provide a live reproduction.

Yep, sorry. It seems that I was using old bootstrap-select plugin.


ssl/ssl_ciph.c: Replace size_t with int and add the checks

Replace the type of "mac", "out", and "blk" with int to avoid implicit conversion when it is assigned by EVP_MD_get_size(), EVP_CIPHER_get_iv_length(), and EVP_CIPHER_get_block_size(). Moreover, add the checks to avoid integer overflow.
Fixes: 045bd04706 ("Add DTLS_get_data_mtu() function")

Checklist

[ ] documentation is added or updated
[ ] tests are added or updated

This PR is in a state where it requires action by @openssl/committers but the last update was 30 days ago

This pull request is ready to merge

Squashed and merged to the master branch. Thank you for the contribution.


license notice

The MIT license requires including the copyright notice and license with the software, yet I don't see that included in the actual files.  Do you expect others to add it when they use your software? (or maybe you might want to add it, so it is always included :)
Thanks.

Hi @jlovejoy! The license file itself should be included, as it's part of the software. I noticed that the copyright year was outdated though, so took the time to update that. Thank you! :boom:


update(build): set large resource_class for circleCI.

Signed-off-by: Federico Di Pierro<EMAIL_ADDRESS>
What type of PR is this?

Uncomment one (or more) /kind <> lines:

/kind bug

/kind cleanup

/kind design

/kind documentation

/kind failing-test

/kind feature

Any specific area of the project related to this PR?

Uncomment one (or more) /area <> lines:

/area build

/area cmd

/area pkg

/area docs

/area tests

What this PR does / why we need it:
The PR force-set the large resource_class for circleCI, given that we are facing timeout issues with the buildx command.
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

NONE

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: FedeDP
To complete the pull request process, please assign leodido after the PR has been reviewed.
You can assign the PR to them by writing /assign @leodido in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

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

Once #154 is in, we do not even need this as #154 already trims down CI times by a lot.

Is this still necessary given #154?

Closing, as this is addressed by #154 .


How to get the host and port for Rspec enviornemt

I want to get the host and port for the test environment in Rspec tests.
How to get that can anybody help?
Linked Question in stack overflow: https://stackoverflow.com/questions/68616413/how-to-get-host-and-port-configuration-for-test-environment-in-rspec-3-10-rails

We keep our issue tracker to track bugs and feature requests.
In addition to SO, you may use other help channels https://rspec.info/help/
Thanks for understanding.


How to use scrollspy?

Can you provide demo of scrollspy? I don't know which directive should I use for scrollspy?

ScrollSpy core parts are intended for developers to create their own functionality os learn how to properly spy on scroll.
Are your trying to setup a specific plugin?

I am trying to wrap my head around this plugin too, but it is not self explanatory. Since I couldn't get the scrollspy-affix directive working I implemented the navigation-scrollspy by my own which is working now. Still it feels strange to implement something that already exists in that very plugin. But this is already talked about in the other thread #72
I would like to get some advice on certain aspects of the sticky behavior:

how to define at which position it should stay sticky when scrolling up?
what does setting [scrollSpyAffix]={topMargin:100} or any other numeric value? does not change anything, but I think I am on the wrong track here and this is the offset that is being used when actually using the affix
´

With the help of @JonnyBGod I've created an example implementation https://ngx-scrollspy.now.sh
The source can be found here https://github.com/beeman/ngx-scrollspy-angular-cli-demo

@beeman Thank you, your code was very helpfull.
@JonnyBGod did not bring some documentation up yet, could you do it?
I am struggling with "scrollSpy-index-render" because i want to use my own custom ul list.
ScrollSpyIndexRenderOptions does not have options for li.class styling, which is important for Bootstrap4 nav-tabs.
This is how you managed to rendered your Navbar:
<scrollSpy-index-render [scrollSpyIndexRenderOptions]="{id: 'myScrollArea', spyId: 'window', topMargin: 90}"
		class="hidden-sm-down">
</scrollSpy-index-render>

My custom Navbar in Bootstrap4:

section1

section2

section3

section4

Either there is a good way to change design of "scrollSpy-index-render" or use your my own custom Navbar?
Documentation of ngx-scrollspy would be very desirable :) Because it is the only good approach i found to get Bootstrap Scrollspy working in an Angular4 app 👍

Does ngx-scrollspy require Bootstrap 4?  I've tried to implement 2 approaches - 1 in the read.md for ngx-scrollspy, but somtheing seems missing in the instructions regarding the ScrollSPyService.  The observable always returns undefined.
I also tried the method by @beeman, which partially works, but I cannot get it to make the references active while scrolling.   I noticed that the sample project uses bootstrap 4 beta.  Is that required?  We are still on bootsrtap 3.


Keep track of DataMin and DataMax only for shown data in DataStreamer

Feature Suggestion
Feature description:
It would be nice to have an option to keep track of minimum and maximum data only of the currently shown data points of a DataStreamer and scale the y axis to pretty much wrap the current data closely.
I would find it useful because when keeping track of some streaming data from lets say a sensor, the data can vary a lot over time, but I only want to see the close differences in the last couple of hundred data points, so if there were some significant outliers in the history, the graph is not very detailed.
I understand that this would probably come with some performance loss, but I think the option to have the feature would be cool.

Hi @nv-kn, thanks for this suggestion!
The DataStreamer actually has classes that implement IDataStreamerView to control how the autoscaling works https://github.com/ScottPlot/ScottPlot/tree/main/src/ScottPlot4/ScottPlot/Plottable/DataStreamerViews
You could create a ScrollAndZoomOntoLastNPoints class (or something with a less crazy name lol) that does the exact logic you describe, then assign it to your DataStreamer's Renderer property
https://github.com/ScottPlot/ScottPlot/blob/c7ce83274728f35977dc7d4c55aadc56ed8ee997/src/ScottPlot4/ScottPlot/Plottable/DataStreamer.cs#L65-L68
You could try this in your own code without modifying ScottPlot's source code, and if you create a class that has this functionality that works well for you, feel free to share the code in this issue or create a pull request and we can include it with ScottPlot as an opt-in feature!


[BI-997 BI-1061]-2 Update Trait Import (clean redo)

Ontology Changes

Replace "Trait" with "Ontology" in Trait Import
Alter table columns in Trait Import according to specifications
Changed "traits" to "ontology terms" in modal message and banner messages

Linked to PR taf/BI-997
Redo of PR bi-web/BI-997

Looks like some of the table unit tests are failing, you figuring it out?

I'm looking into it. For some reason the name column isn't retrieving the name....or any test value I put in there.

Looks like some of the table unit tests are failing, you figuring it out?

I'm looking into it. For some reason the name column isn't retrieving the name

Thanks for the help in fixing the tests @nickpalladino !

Similar to a comment Nick left in the original pull request, in TraitUploadService.ts, the constant forbiddenUploadingFile references "trait", and should probably be updated to "ontology term"

Added changes.


Please help me. FileNotFoundError: [WinError 2] The system cannot find the file specified: 'C:\ Users\Jeremiah\Downloads\manim-master\manim-master\media\videos\example_s cenes\480p15\SquareToCircle.mp4'

How do I solve this issue for my manim?
C:\Users\Jeremiah\Downloads\manim-master\manim-master>python -m manim example_sc
enes.py SquareToCircle -pl
Media will be written to ./media. You can change this behavior with the --media
_dir flag.
[concat @ 000000e20553c840] Impossible to open 'CC:/Users/Jeremiah/Downloads/man
im-master/manim-master/media/videos/example_scenes/480p15/partial_movie_files/Sq
uareToCircle/00000.mp4'
C:\Users\Jeremiah\Downloads\manim-master\manim-master\media\videos\example_scene
s\480p15\partial_movie_files\SquareToCircle\partial_movie_file_list.txt: Protoco
l not found
Did you mean file:C:\Users\Jeremiah\Downloads\manim-master\manim-master\media\vi
deos\example_scenes\480p15\partial_movie_files\SquareToCircle\partial_movie_file
_list.txt?
File ready at C:\Users\Jeremiah\Downloads\manim-master\manim-master\media\videos
\example_scenes\480p15\SquareToCircle.mp4
Played 3 animations
Traceback (most recent call last):
File "C:\Users\Jeremiah\Downloads\manim-master\manim-master\manimlib\extract_s
cene.py", line 156, in main
open_file_if_needed(scene.file_writer, **config)
File "C:\Users\Jeremiah\Downloads\manim-master\manim-master\manimlib\extract_s
cene.py", line 35, in open_file_if_needed
os.startfile(file_path)
FileNotFoundError: [WinError 2] The system cannot find the file specified: 'C:\
Users\Jeremiah\Downloads\manim-master\manim-master\media\videos\example_s
cenes\480p15\SquareToCircle.mp4'

See #1051 first.

#1051


Declare ourselves as Python 3.9

Python 3.5 is pretty old at this point, and I think we generally try to keep up with the latest features (e.g. assignment expression, self-documenting fstrings), so I think it makes sense to say we're 3.9. I put 3.8 in the READMEs because I don't think we have full 3.9 compatibility yet and 3.8 is more used, but I'm not really sure if that makes a difference :shrug:

What was the rationale for changing the site-packages paths to rustpythonX.Y? pip seems to be hardcoded to install to pythonX.Y and PyPy uses pythonX.Y too.

It seems like pip respects the rustpythonX.Y path in my experience, and I think my motivation was that we don't have anywhere close to full compatibility for many libraries (especially that require native C extensions) so I feel it makes sense to keep them separate, at least for now.

Makes sense.
I think the pip behaviour I saw is because there's still a reference to the pythonX.Y form in distutils.sysconfig:
https://github.com/RustPython/RustPython/blob/2bcf7d4d5b0d16b5e0f0dab555ba222f42aaf796/Lib/distutils/sysconfig.py#L136-L138
and in distutils.command.install:
https://github.com/RustPython/RustPython/blob/2bcf7d4d5b0d16b5e0f0dab555ba222f42aaf796/Lib/distutils/command/install.py#L30-L37
If I change those by hand pip installs to the correct location.

Huh, interesting, it installs to the right place on my machine but feel free to make a PR if that fixes it in your environment.


feat(atomic): add tab-manager support for facet components

This PR allows facets to be disabled/enabled based on the currently active tab in the tab manager.
https://coveord.atlassian.net/browse/CDX-1555

What if I'm a goofball and I put the same tab in both included and excluded?

Covered in this doc comment
  /*
  * If you don't set this property, or set it to `'[]'`, the facet can be displayed on any tab. Otherwise, the facet can only be displayed on the specified tabs. In either case, the facet won't be displayed on any of the tabs specified in the `tabs-excluded` property (exclusion takes precedence).
   */
  @ArrayProp()
  @Prop({reflect: true, mutable: true})
  public tabsIncluded: string[] | string = '[]'

What if I'm a goofball and I put the same tab in both included and excluded?

Covered in this doc comment
  /*
  * If you don't set this property, or set it to `'[]'`, the facet can be displayed on any tab. Otherwise, the facet can only be displayed on the specified tabs. In either case, the facet won't be displayed on any of the tabs specified in the `tabs-excluded` property (exclusion takes precedence).
   */
  @ArrayProp()
  @Prop({reflect: true, mutable: true})
  public tabsIncluded: string[] | string = '[]'

Should we consider this an error of implementation and throw a warning?

What if I'm a goofball and I put the same tab in both included and excluded?

Covered in this doc comment
  /*
  * If you don't set this property, or set it to `'[]'`, the facet can be displayed on any tab. Otherwise, the facet can only be displayed on the specified tabs. In either case, the facet won't be displayed on any of the tabs specified in the `tabs-excluded` property (exclusion takes precedence).
   */
  @ArrayProp()
  @Prop({reflect: true, mutable: true})
  public tabsIncluded: string[] | string = '[]'

Should we consider this an error of implementation and throw a warning?

I think a warning could be nice, yes!

What if I'm a goofball and I put the same tab in both included and excluded?

Exclusion wins!


Add newlines after instructions statement

Otherwise the instructions get glued together and the folder name becomes ModelsOnce.

Ah, good catch! I didn't realize that, I had switched all the echos to printf instead and forgot it would do that. Thanks! :)


Vulnerability count not going up.

After upgrading to new newest version, the vulnerability count no longer seems to be keeping track.

it appears that its always "False and False" with the incrementer never being reached. In the previous version it had been outside of that section

My mistake at last midnight.. Will be fixed in 3 hours. Thank you for bug reporting.

@KyleDaily Would you test release 1.2.1 version?

It is working!


Add Glip to applications page

Hi, we've been using Express since day 1 here at Glip and we love it. If possible, we'd like to be included on the express applications page. Please let me know if this is possible or if you'd like me to change anything. Thanks in advance!

👍

Thanks a bunch! I appreciate it.


Irregularly spaced custom cycles

I think it would be nice to have an easier way to create irregularly spaced custom cycles. For instance I want 3 colors from 'reds', 4 from 'blues', and so on. Right now if I do
plot.Cycle('reds', 'blues', 'greens', 15) it'll put 5 on each without any easy way to alter that.
Here's my hacky way of constructing it:
cycle1 = plot.Cycle('Boreal', 3, left=0.4, right=0.6)
cycle2 = plot.Cycle('Grays', 4, left=0.4, right=0.6)
cycle3 = plot.Cycle('Fire', 5, left=0.4, right=0.6)
cycle4 = plot.Cycle('Glacial', 2, left=0.4, right=0.6)
cycle5 = plot.Cycle('yellow', 1, left=0.4, right=0.6)

cycle = cycle1.concat(cycle2)
cycle = cycle.concat(cycle3)
cycle = cycle.concat(cycle4)
cycle = cycle.concat(cycle5)

Perhaps you could do plot.Cycle('reds', 'blues', 'greens', [3, 4, 5]) or something similar.

Glad to see someone is using the color features so rigorously! This is actually sort of already a feature (see the samples argument). A similar example looks something like:
cycle = plot.Cycle('Blues', 'Reds', 'Grays', 'Greens', 'Oranges',
   samples=np.concatenate((
      np.linspace(0.4, 0.6, 3),
      np.linspace(1.4, 1.6, 4),
      np.linspace(2.4, 2.6, 5),
      np.linspace(3.4, 3.6, 2),
      [4.5])) / 5)

There are some improvements that could be made though:

Cycle interprets positional arguments with Colormap. If Colormap returns a LinearSegmentedColormap, it converts it to ListedColormap by drawing discrete colors, registers that ListedColormap under a new name, and then finally creates a cycler.Cycler object from the colors in the ListedColormap.

It might make more sense if I add the option to convert LinearSegmentedColormaps to ListedColormaps to Colormap rather than Cycle, then users can optionally pass arrays of samples (e.g. samples=(3, 4, 5, 2, 1)) to Colormap.
Related to this, I couldn't exactly reproduce your example because ProPlot cannot merge LinearSegmentedColormaps with PerceptuallyUniformColormaps. But I can also add an option to Colormap to convert all positional arguments to LinearSegmentedColormap before merging.

Previously I allowed you to apply the left, right, cut, and reverse keyword arguments to each colormap differently by passing arrays instead of scalars. I got rid of this for the sake of simplicity, but maybe should add it back to be consistent with above.

Don't think I can address this until sometime January but feel free to submit a PR if you want. Now that I have pre-commit and CI set up it should be smoother.
Btw I tried out black on a few more files and it mostly won me over (especially with the -S flag; like you I prefer single quotes to double quotes). Only annoyance is it sometimes converts long lists like a = ['a', 'b', 'c', 'd', 'e', 'f'] and function arguments to one element per line -- is there a way to change this? I mean I get the motiviation but it often looks kinda ridiculous, especially for commands like Axes.format that accept arguments that naturally can be grouped with multiple items per line (e.g. xformatter=None, yformatter=None, xformatter_kw=None, yformatter_kw=None on one line).

I'll see if I have time to open a PR, but most likely not. Maybe I can give it a go on the flight home for the holidays. So this should be improved, and also added to the docs once it's improved.

Btw I tried out black on a few more files and it mostly won me over (especially with the -S flag; like you I prefer single quotes to double quotes). Only annoyance is it sometimes converts long lists like a = ['a', 'b', 'c', 'd', 'e', 'f'] and function arguments to one element per line -- is there a way to change this? I mean I get the motiviation but it often looks kinda ridiculous, especially for commands like Axes.format that accept arguments that naturally can be grouped with multiple items per line (e.g. xformatter=None, yformatter=None, xformatter_kw=None, yformatter_kw=None on one line).

Whatever they have listed in their options table is the options you can declare. The single line thing is forced when you go over your line limit (we use 88... or 89... I can't remember). I think it's a throwback to Java maybe? I remember this being a style thing in an early language I learned years ago. I think it looks nice, since you can very very clearly see all the options, and then they align with your docstrings. But I could see why it would be annoying when you have a ton of keywords, and when they can be grouped together.
They seem open to conversation on the black issue threads about changes moving forward. I recall having issues with dictionaries with long keys and had a thread open on that.

Don't seem to be any style-configuring options other than --skip-string-normalization and --line-length.  Thanks for telling me about it.

This is fixed in 972956b1 -- converting LinearSegmentedColormap to ListedColormap is now handled inside Colormap, and you can apply per-colormap arguments for colormap-modifying keywords like left, right, and samples. Here's a quick example:
import proplot as plot
import numpy as np
import pandas as pd
cycle = plot.Cycle(
    'Boreal', 'Grays', 'Fire', 'Glacial', 'yellow',
    left=[0.4] * 5, right=[0.6] * 5,
    samples=[3, 4, 5, 2, 1],
)
fig, ax = plot.subplots()
data = np.random.rand(10, len(cycle)).cumsum(axis=1)
data = pd.DataFrame(data, columns=list('abcdefghijklmno'))
ax.plot(data, cycle=cycle, linewidth=2, legend='b')


Now it's possible to specify scope config property from the outside

Before this commit, it was not possible to override the scope property on the configuration. This commit makes it possible

This would be awesome! Why is this PR on hold?


Register package with Julia Registry

@JuliaRegistrator register

Registration pull request created: JuliaRegistries/General/50447
After the above pull request is merged, it is recommended that a tag is created on this repository for the registered package version.
This will be done automatically if the Julia TagBot GitHub Action is installed, or can be done manually through the github interface, or via:
git tag -a v0.1.0 -m "<description of version>" 4a8a280ed9a34a6af63a295d976e578aeaca1e97
git push origin v0.1.0

Done in https://github.com/JuliaRegistries/General/pull/50447#issuecomment-992553277


Update installation guides

Update guides to respect changes in the upcoming patcher release, and update dependencies.
DO NOT MERGE UNTIL WIILINK PATCHER V2.0.4 RELEASES

@Humanoidear this should be good to merge now :)


Consider reducing how many cross-platform tests we run

Type of Request
feature request
Infrastructure Environment
I'm not sure, sorry.
What is happening?
As discussed in https://github.com/flutter/flutter/issues/142198, and on Discord with @christopherfujino:

I think it's a fair question to ask if we could significantly reduce the number of Windows test targets we have. I imagine we'd still want to do windows desktop integration tests, though.
Not sure we're getting any added value of running android tests on linux, mac, and windows, for example

Steps to reproduce
N/A
Expected results
We should run the minimum amount of tests needed to reduce the chance of cosmic rays causing a flake or failure.
@christopherfujino writes:

i think we should look at this like, what's a reasonable confidence tolerance we will live with, in order to run less tests and reduce our flake probability. Because I imagine all our code is entangled, and there are edge cases all over the code base.
but we could probably reduce a LOT of tests, while missing very few regressions
and if we for example ran the other tests on tool changes or engine rolls, we'd catch them anyway, just need to bisect
or we could have it be a dashboard feature to do the bisect for us

The decision about what tests to run where isn't owned by team-infra. Since my understanding is that this issue was motivated by some closures of the framework tree, I'm going to mark this team-framework, but addressing this issue will require deep cross-team collaboration.

Sounds good, thanks!

Not sure we're getting any added value of running android tests on linux, mac, and windows, for example

We have clients developing for Android on each of those platforms though.

I think it's a fair question to ask if we could significantly reduce the number of Windows test targets we have.

Isn't Windows our most common host platform?

@stuartmorgan:

We have clients developing for Android on each of those platforms though.

We don't need to run build and run every test on every commit across every platform.
At some point we have to accept that the embedders, VMs, and engine are appropriate abstractions - and if they aren't, we should add more testing and verification to those layers.

Isn't Windows our most common host platform?

If so that doesn't seem to be reflected with the stability of our tests/test infra around Windows, that's the friction.

At some point we have to accept that the embedders, VMs, and engine are appropriate abstractions

Isn't this issue (per earlier comments) about flutter/framework? Any integration test running in flutter/framework is testing a lot of tooling that isn't any of the abstractions you've listed.
(If a test is purely intended to be testing the engine, but has to run in flutter/flutter for some reason, then I would agree that it doesn't necessarily need multi-host testing.)

Isn't Windows our most common host platform?

If so that doesn't seem to be reflected with the stability of our tests/test infra around Windows, that's the friction.

We need to be careful not end up in a looking-for-our-keys-under-the-streetlight situation though. If we eliminate Windows tests because Linux tests are easier to run, but most of our users are still using Windows, then we're likely to decrease our own pain at the expense of increasing pain for our customers due to more regressions slipping through on the most commonly used environments.

We reduced runs for hermetic unit tests on Windows and Mac a few years ago, flutter.dev/go/reduce-ci-tests
I think that is still in place. For the framework at least, only test files tagged reduced-test-set run on all 3 platforms.


Recursion limit reached compile error on chrono crate

Steps to reproduce:

cargo new chrono_dep
cd chrono_dep
cargo add<EMAIL_ADDRESS>
using the following command line invocation:
cargo kani

with Kani version: 68693242c21
I expected to see this happen: No proof harnesses (functions with #[kani::proof]) were found to verify.

Instead, this happened:
$ cargo kani
   Compiling autocfg v1.1.0
   Compiling libc v0.2.137
   Compiling num-traits v0.2.15
   Compiling num-integer v0.1.45
   Compiling time v0.1.45
   Compiling chrono v0.4.19
error: recursion limit reached while expanding `stringify!`
  --> /home/ubuntu/.cargo/registry/src/github.com-1ecc6299db9ec823/chrono-0.4.19/src/sys/unix.rs:85:13
   |
85 |             panic!("localtime_r failed: {}", io::Error::last_os_error());
   |             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
   |
   = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`chrono`)
   = note: this error originates in the macro `core::assert` which comes from the expansion of the macro `panic` (in Nightly builds, run with -Z macro-backtrace for more info)

Error: "Failed to compile crate."
error: could not compile `chrono` due to previous error
Error: cargo exited with status exit status: 101

Here's a minimal reproducer:
extern crate std as core;

#[kani::proof]
fn main() {
    panic!("{}", 5);
}

$ kani panic_recur.rs
error: recursion limit reached while expanding `stringify!`
 --> panic_recur.rs:5:5
  |
5 |     panic!("{}", 5);
  |     ^^^^^^^^^^^^^^^
  |
  = help: consider increasing the recursion limit by adding a `#![recursion_limit = "256"]` attribute to your crate (`panic_recur`)
  = note: this error originates in the macro `core::assert` which comes from the expansion of the macro `panic` (in Nightly builds, run with -Z macro-backtrace for more info)

error: aborting due to previous error

Error: "Failed to compile crate."
Error: /home/ubuntu/git/kani/target/kani/bin/kani-compiler exited with status exit status: 1

Looks like this is broken again due to https://github.com/model-checking/kani/pull/2194 :(
The minimal reproducer works, but the chrono example doesn't. Re-opening.


Feature vr/weko basic auth 0.133.3 r2

Purpose

Changes

QA Notes

Side Effects

Ticket

Checked


ViCommandmode error

I have mapped Ctrl+BackSpace which is not being used as a handler, and got below error.
Oops, something went wrong.  Please report this bug with the details below. Report on GitHub: https://github.com/lzybkr/PSReadLine/issues/new

I can't reproduce this. If this still reproduces for you, reopen and add the exact command line you used.


Imagej Filter Gauss Plugin

The first version of the imagej-filter-gauss-plugin automatically generated using the imagej plugin generation pipeline.

Note that this PR is downstream of the currently open imagej-ui PR, which is the current iteration of the ImageJ pipeline. This PR will show changes to the entire pipeline (not just the plugin files) until the imagej-ui PR has been merged into PolusAI:dev.


Fix pdb api version for k8s 1.21+

Current if condition is wrong and chart is not installable for k8s 1.25+ because of policy/v1beta1 selection

[ ] Fix https://github.com/cockroachdb/helm-charts/issues/270

@rhu713 @celiala Can you please merge this quick fix?

Same check from otel collector helm chart
https://github.com/open-telemetry/opentelemetry-helm-charts/blob/fe8ee564b0c6c76f14e3af20daf318ae28855dce/charts/opentelemetry-collector/templates/_helpers.tpl#L153

Pinging to hopefully get some maintainer attention - we need this fix desperately. We currently cannot deploy CockroachDB in our cluster due to this.
Quick note: The same problem exists with CronJob resources, as well.


[CI] Jenkins Improvement

Let Jenkins recognize test failures
Add hook to post result html directly in PR, something like this

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/265/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-Performance-PRB/205/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/266/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-Performance-PRB/206/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/267/
Test FAILed.

🤖 This is a bot message
Test Failed:

https://s3.amazonaws.com/modin-jenkins-result/f3a1696/test_dataframe.html

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/268/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-Performance-PRB/207/
Test PASSed.

Jenkins test this please

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-Performance-PRB/209/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/270/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-Performance-PRB/210/
Test PASSed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/271/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/274/
Test FAILed.

Merged build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-Performance-PRB/213/
Test PASSed.

Build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/278/
Test PASSed.

Build finished. Test PASSed.

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-Performance-PRB/217/
Test PASSed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/480/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/494/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/495/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/496/
Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/498/
Test FAILed.

Merged build finished. Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/499/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/500/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/501/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/502/
Test FAILed.

jenkins test this please

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/503/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/504/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/505/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/506/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/507/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/508/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/509/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/511/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/512/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/513/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/514/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/510/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/515/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/517/
Test FAILed.

Merged build finished. Test FAILed.

Test FAILed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Modin-PRB/516/
Test FAILed.


Configure model for chatbot and codegen recipes

A couple small changes to the codegen and chatbot recipes, after doing some work with them using a vLLM model service:

Pass in model name to the llm object in codegen-app.py
Allow environment variable to configure model name in both chatbot_ui.py and codegen-app.py

LGTM


Feature Request: Create release for Mac OS.

Currently, there are grunt tasks to build binaries for linux and windows. It would be great if there were a task to build a binary for mac.

Will do !
Available arch/OS for cross compilation reference: https://golang.org/doc/install/source#environment


v1.8.0c: stuck at Lightning Progress  :  0 %

Hi,
Blockchain Progress : 100.00 % 14 peers
Lightning Progress  :  0 %

This has been the state now for a couple of days.
Here the debug info; https://l.termbin.com/0h89k

Its a core lightning @openoms can you take a quick look?

logs look fine.
can you type:
menu

and enter CLN @jalbstmeijer ?
a simple restart might set it straight also

@openoms
Still the same state.
Just an idea. I remember the raspiblitz web gui gave me (I suppose unintentionally) access to the dashboard while the bitcoin chain was still syncing. I played around and created a 20 SAS invoice.
Could that be in the way?
Any suggestion what I could try? Maybe reset/create a new lightning wallet?

Is the problem that you not get entered to the menu?
what does
cllog

show? Is your CLN wallet working when you type:
cl getinfo

If it is unused you are safe to reset the CLN wallet from the CLN - REPAIR-CL menu.

@openoms
I kept an eye on /mnt/hdd/app-data/.lightning/bitcoin/cl.log
When "Adding block" reached the Bitcoin Blocks amount, it seems to have finished.
Would be nice if this progress would be seen on the sync progress screen too.
Now when I log in to ssh, I get into the main menu instead of the sync progress screen.
Only thing is that the web gui is not able to complete loading now, as nginx encounters timeouts;
2023/04/28 12:34:00 [error] 839#839: *571 upstream timed out (110: Connection timed out) while reading response header from upstream, client: xxx, server: _, request: "GET /api/v1/lightning/list-all-tx?reversed=true HTTP/1.1", upstream: "http://<IP_ADDRESS>:11111/v1/lightning/list-all-tx?reversed=true", host: "xxx", referrer: "http://xxx/home"
2023/04/28 12:34:07 [error] 839#839: *585 upstream timed out (110: Connection timed out) while reading response header from upstream, client: xxx, server: _, request: "GET /api/v1/setup/status HTTP/1.1", upstream: "http://<IP_ADDRESS>:11111/v1/setup/status", host: "xxx", referrer: "http://xxx/home"

Should I open a separate ticket for that?

@openoms
As web gui loadng issues did not resolve after waiting for a whole.
I rebooted the raspiblitz,and ended up back exactly where this ticket started.
Lightning Progress  :  0 %
and cllog Adding block's
So I have no idea where I'm waiting for and when to expect a stable running raspiblitz

Not sure why your node is going into rescanning again.
Can try to remove the line starting with
rescan=

from the cl.conf

it seems to work after a new flash. This because I upgraded the OS (apt-get update), causing dependency issues see https://github.com/rootzoll/raspiblitz/issues/3779


TypeError: nemSimpleLogger.spawn is not a function

Since a recent update to this directive, I'm getting this error when I navigate between views in my angular app:
TypeError: nemSimpleLogger.spawn is not a function
  at new <anonymous> (angular-leaflet-directive.js:3031)
  at invoke (angular.js:4478)
  at Object.instantiate (angular.js:4486)
  at Object.<anonymous> (angular.js:4346)
  at Object.invoke (angular.js:4478)
  at Object.enforcedReturnValue [as $get] (angular.js:4330)
  at Object.invoke (angular.js:4478)
  at angular.js:4295
at getService (angular.js:4437)
at invoke (angular.js:4469)

Because of this error, the map doesn't load.
It happens specifically when I navigate from a view without leaflet to a view with leaflet. If I load the map view first, it works fine; it's only when I go to a non-map view first. (I am using angular-ui/ui-router for switching between different views.)
I am going to try to replicate this problem in a simple plunkr in the next day or two.
I do have angular-simple-logger loaded correctly and it's running the latest version.

Rolling back to v0.8.7 fixed this problem for me, so it must be something specific to v0.8.8.

Actually I would try a different version of the logger lib. It not leaflet that the problem. I'll try to look at this ASAP. But using asl of 0.1.0 should be ok for u.

This issue was moved to angular-ui/ui-leaflet#125

I'm going to rework&redesign angular-leaflet-directive to be compatible with Leaflet v1.0. It will mantain almost all its functionality, and will be compatible with the current features of the directive, but I must start from a fresh point, so I'm going to close this issue. If you think it must be worked with the new version, please reopen it.


Couldn't fulfill request make sure you don't have a typo in the name of the model or the host url

Whenever I try to use this plugin i recieve this error notification from Logseq, Im using Mistral with Ollama.
"Couldn't fulfill request make sure you don't have a typo in the name of the model or the host url"
And these are my settings from the plugin I didnt change anything:
localhost:11434
mistral:instruct

In plugins hit the gear icon and check package.json and make sure effect is set to true, and did you make sure that you can run the model normally without logseq with ollama run mistral:instruct?


validate required version jfrogcli on agent

Hi,
job logging:
Task         : Artifactory Publish Build Info
Description  : Publish the build-info collected in previous tasks to Artifactory.
Version      : 1.12.3
Author       : JFrog
Found tool in cache: jfrog 1.47.1 x64
Running jfrog-cli from X:\agent-2\work\tool\jfrog\1.47.1\x64\jfrog.exe.
JFrog CLI version: 1.47.1
from
https://github.com/jfrog/artifactory-azure-devops-extension/blob/master/tasks/ArtifactoryPublishBuildInfo/task.json :
"minimumAgentVersion": "1.83.0",
As it looks like my agent does not have required version.
Is there no validation ?

Hi @dkers,
The minimumAgentVersion property refers to Azure agents, not the JFrog CLI version.
Whenever there is a restriction due to JFrog CLI version, the extension validates it.
Thanks


[Release] Increase version to 0.3.2

[Bug] The build generated polyfill bundle is missing from the npm package #53

Codecov Report

Merging #54 (f4bb340) into main (70096be) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #54   +/-   ##
=======================================
  Coverage   97.81%   97.81%
=======================================
  Files          36       36
  Lines         596      596
  Branches      130      130
=======================================
  Hits          583      583
  Misses         13       13


chore: release main

:robot: I have created a release beep boop
stdlib: 1.0.6
1.0.6 (2023-12-23)
Bug Fixes

update renderer version (fa6c8c5)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/pavophilip/react-shader-fiber/releases/tag/stdlib-v1.0.6 :sunflower:


Please add a .gitattributes file

Please add .gitattributes file to exclude the /tests directory and any other files that aren't needed in production (e.g.: README.md, CHANGELOG.md).
Thanks :smiley:

Submit a pull request?

Sorry, I'm still a bit new to Github :upside_down_face:
I think I did everything right — #39

Closed by #67


upgrading rabbitmq delayed message exchange plugin to 3.8.9

Checklist

[ ] Affected Issues have been mentioned in the Closing issues section
[ ] Documentation has been written/updated
[ ] PR title is ready for changelog and subsystem label(s) applied

Explain the details for making this change. What existing problem does the pull request solve?
Fixing bug:  described in rabbitmq/rabbitmq-delayed-message-exchange#149

Closing issues
closes #2388

@jaimed-amazee @cdchris12 we would need this against the master branch as this should still go into 1.12.3.
but we can leave that one and merge it into master, and changed the milestone to v2.0.0
can you create a new PR from master, against master with your commit cherry-picked?

2.x version of #2390


AzureCP not associate with any TrustedLoginProvider

Can you help me to get through this error so I can add a tenant to AzureCP?

Re-run this section from the installation:
$trust = Get-SPTrustedIdentityTokenIssuer "SPTRUST NAME"
$trust.ClaimProviderName = "AzureCP"
$trust.Update()

Thanks @jeefberkey for helping out
@antuantc can this issue be closed?

Hi,
That suggestion did not work but you can go ahead and close it.  Once I get
some time, I will try it from the beginning.
thanks,
Tuan
On Tue, Mar 3, 2020 at 7:22 AM Yvan Duhamel<EMAIL_ADDRESS>wrote:

Thanks @jeefberkey https://github.com/jeefberkey for helping out
@antuantc https://github.com/antuantc can this issue be closed?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Yvand/AzureCP/issues/81?email_source=notifications&email_token=ACHO2S4KSAKPLA2PFDVPULTRFUABNA5CNFSM4KYDIX4KYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOENTOUOI#issuecomment-593947193,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACHO2S2N76SNH63Q5KZYRT3RFUABNANCNFSM4KYDIX4A
.


They work in other mobile browsers on the same devices, as well as desktop browsers (Firefox/Chromium, Windows/Linux).
You can view the source here: http://entangledloops.com/shootout.
I attached a screenshot of what the failed rendering looks like (it only happens for some tables, and exclusively on Safari). If I use Chrome on my iPad, it renders fine.

The problem is that iOS tries to identify things like dates, telephone numbers, etc., and make links out of them.  You will notice that the seven-digit numbers like 1017072 are shown in blue, which means they have been made into links.  Because MathJax won't process HTML tags, like the <a> used for the links, the main that contains those numbers will not be processed.  You will have to fool iOS into not thinking it is a number.  One way would be to use commas, like 1{,}017{,}072, or maybe even just adding some spaces would do.  You'll have to experiment to see what does it.

Ah, interesting. Thanks for letting me know.

For posterity, this fixed it:
<meta name="format-detection" content="telephone=no">
https://stackoverflow.com/questions/226131/how-to-disable-phone-number-linking-in-mobile-safari


Generate Clang-toolchain based compile_commands.json on Windows host

Xmake Version
2.8.6
Operating System Version and Architecture
Windows 11 23H2 AMD64
Describe Bug
I have a basic project definition.
XMake works fine for the platform I compile for (MSVC), however, I use VSCode with the official Clangd extension, and would like to use XMake to generate compile_commands.json - it does that just fine, however, Clangd gives better analysis results (especially for warnings) if the compile_commands are in clang/clang++ format, XMake however, generates the JSON file with MSVC (cl.exe) in mind. I don't want this behavior and there's no way to turn it around currently (not that I know of).
Expected Behavior
set_toolchains("clang") globally without any condition works just fine, but I want it to work only after executing xmake project -k compile_commands
Currently it gives me:
[
{
  "directory": "c:\\$Files\\Projects\\xmake-bug",
  "arguments": ["C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.38.33130\\bin\\HostX86\\x86\\cl.exe", "/c", "/nologo", "/Zi", "/FS", "/Fdbuild\\windows\\x86\\debug\\compile.xmake-bug.pdb", "/Od", "/std:c++latest", "/Isrc", "/EHsc", "/Fobuild\\.objs\\xmake-bug\\windows\\x86\\debug\\src\\Main.cpp.obj", "src\\Main.cpp", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\cppwinrt", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\km", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\shared", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\ucrt", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\um", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\winrt", "-imsvc", "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.38.33130\\include"],
  "file": "src\\Main.cpp"
}]

But I want:
[
{
  "directory": "C:\\$Files\\Projects\\xmake-bug",
  "arguments": ["clang.exe", "-c", "-Qunused-arguments", "-m32", "-g", "-O0", "-std=c++23", "-Isrc", "-fexceptions", "-fcxx-exceptions", "-o", "build\\.objs\\xmake-bug\\windows\\x86\\debug\\src\\Main.cpp.obj", "src\\Main.cpp"],
  "file": "src\\Main.cpp"
}]

Project Configuration
set_xmakever("2.8.6")

set_languages("cxxlatest")
set_allowedplats("windows")
set_arch("x86")

-- this is the issue
if is_config("compile_commands") then
    set_toolchains("clang")
end

add_rules("mode.debug", "mode.releasedbg", "mode.release")
add_rules("plugin.vsxmake.autoupdate")
add_rules("plugin.compile_commands.autoupdate")

target("xmake-bug")
    set_kind("binary")
    add_files("src/**.cpp")
    add_includedirs("src/")

Additional Information and Error Logs
There are no errors.

You can generate a compile_commands.json with Clangd in mind using --lsp=clangd.
xmake project -k compile_commands --lsp=clangd

@SirLynix That still generates cl.exe lines

I have also tried this, but doesn't have any effect:
rule("mode.clangd")
    on_config(function (target)
        print("Running compile_commands")
        target:set("toolchains", "clang")
    end)
rule_end()

add_rules("mode.debug", "mode.releasedbg", "mode.release", "mode.final", "mode.clangd")

$ xmake project -k compile_commands -m clangd

It works for me.
add_rules("mode.debug", "mode.release")

set_toolchains("clang")

target("test5")
    set_kind("binary")
    add_files("src/*.cpp")

>xmake project -k compile_commands
create ok!

[
{
  "directory": "D:\\projects\\personal\\test5",
  "arguments": ["clang.exe", "-c", "-Qunused-arguments", "-m64", "-fvisibility=hidden", "-fvisibility-inlines-hidden", "-O3", "-fexceptions", "-fcxx-exceptions", "-DNDEBUG", "-o", "build\\.objs\\test5\\windows\\x64\\release\\src\\main.cpp.obj", "src\\main.cpp"],
  "file": "src\\main.cpp"
}]

if is_config("compile_commands") then
set_toolchains("clang")
end

you can remove is_config("compile_commands")

I think they want to compile with MSVC but use clangd as a linter in VS Code.

@waruqi I think a flag to pass to the project subcommand would be an ideal solution:
$ xmake project -k compile_commands --cc=clang

Or making the is_config() check true or implementingget_config() return something that isn't nil.

@waruqi I think a flag to pass to the project subcommand would be an ideal solution:
$ xmake project -k compile_commands --cc=clang

Or making the is_config() check true or implementingget_config() to return something that isn't nil.

please define option("compile_commands") and use has_config instead of is_config, then run
xmake f --compile_commands=y
xmake project -k compile_commands

option("compile_commands", {default = false, description = "xxxx"})
if has_config("compile_commands") then
    set_toolchains("clang")
end

you can see https://xmake.io/#/plugin/more_plugins?id=configure-xmakelua-to-generate-automatically

@waruqi No, the point is that I'm already using the so-called "Automatic trigger generation" but since it doesn't have the flag, it'll override it back to MSVC, I need XMake to have a way to differentiate between normal project generation, building, and compile_commands.json updating.
To make it more clear, I use Clangd, not Microsoft's cpptools. XMake assumes anyone that uses Windows as their build host and target is using cpptools by default, which makes sense as that's what most people use and clangd is less popular.

I still don't know what you're trying to do.

If you want to generate compile_comands.json using the clang compiler, please use set_toolchains("clang"), it works for me. see https://github.com/xmake-io/xmake/issues/4559#issuecomment-1874765312
If you want to generate a clangd-style compile_commands.json, set lsp to clangd
If you want to automatically update compile_commands.json, please use plugin.compile_commands.autoupdate rule
If you want to use clangd and configure compile_commands.json, please see https://xmake.io/#/plugin/more_plugins?id=clangd

set_toolchains("clang")
add_rules("plugin.compile_commands.autoupdate", {outputdir = ".vscode", lsp = "clangd"})
target("test")
     set_kind("binary")
     add_files("src/*.c")

To be more clear as I think I understood what @ifarbod want.
They want to use msvc to compile on Windows and to use clangd as a linter (in the compile_commands.json), and they want their compile_commands to automatically update with the rule, without touching the project config as it wouldn't work otherwise.
So they want their toolchain to be the default one, but to generate (and automatically update) compile_commands with clangd toolchain.

To be more clear as I think I understood what @ifarbod want.
They want to use msvc to compile on Windows and to use clangd as a linter (in the compile_commands.json), and they want their compile_commands to automatically update with the rule, without touching the project config as it wouldn't work otherwise.
So they want their toolchain to be the default one, but to generate (and automatically update) compile_commands with clangd toolchain.

xmake-vscode can set xmake.compileCommandsBackend to clangd, and it has been default value.
https://github.com/xmake-io/xmake-vscode/blob/a5bdf61a9ff0053ddb2bc7380e330495e2dd77ba/package.json#L680
so, we need not do any thing. just use default config + vscode-xmake
target("test")
    add_files("src/*.cpp")

Yes, but passing --lsp=clangd (which is the same thing as setting XMAKE_GENERATOR_COMPDB_LSP) keeps generating cl.exe command-line:
[
{
  "directory": "c:\\$Files\\Projects\\xmake-bug",
  "arguments": ["C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.38.33130\\bin\\HostX86\\x86\\cl.exe", "/c", "/nologo", "/Zi", "/FS", "/Fdbuild\\windows\\x86\\debug\\compile.xmake-bug.pdb", "/Od", "/std:c++latest", "/Isrc", "/EHsc", "/Fobuild\\.objs\\xmake-bug\\windows\\x86\\debug\\src\\Main.cpp.obj", "src\\Main.cpp", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\cppwinrt", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\km", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\shared", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\ucrt", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\um", "-imsvc", "C:\\Program Files (x86)\\Windows Kits\\10\\Include\\10.0.22621.0\\winrt", "-imsvc", "C:\\Program Files\\Microsoft Visual Studio\\2022\\Enterprise\\VC\\Tools\\MSVC\\14.38.33130\\include"],
  "file": "src\\Main.cpp"
}]

They want to use msvc to compile on Windows and to use clangd as a linter (in the compile_commands.json)

They want to use msvc to compile on Windows and to use clangd as a linter (in the compile_commands.json)

You just said compiling with msvc, so even though you use clangd, you're still using the msvc compiler.
Unless you want to use clangd and also use clang in compile_commands.json.
--lsp=clangd only modifies the compile_commands generation style to make it better supported by clangd. But it does not modify the compiler inside compile_commands.

You just said compiling with msvc, so even though you use clangd, you're still using the msvc compiler.
Unless you want to use clangd and also use clang in compile_commands.json.

Yes that's the issue of @ifarbod, he wants to compile using MSVC (when running xmake) but have a compile_commands generated with Clang (for Visual Studio Code linter).

Unless you want to use clangd and also use clang in compile_commands.json.

Yes, that's what I want. Please provide a built-in method or guide me to the responsible code so I can make a PR.
Before discovering XMake, this has been me and my team's standard workflow for writing C++, granted, i was using Premake5 with a bunch of Python scripts.
I never knew compile_commands with cl.exe entries was possible, after switching to XMake, I was disappointed to see that. It's not useful to anyone that doesn't use vscode-cpptools, because they use it as pseudo-makefiles to build the project (?) and have Microsoft's own IntelliSense engine index the code using it. (I am aware, they also have clangd support)
For me and anyone else that prefers vscode-clangd, cl.exe entries are not that useful.
This extension is more like a linter instead of a full on IDE experience (as @SirLynix mentioned). To make the most use of it, you'd provide it with clang's [objectively better] warning definitions and have it complain at your code.

try
target("test")
    set_kind("binary")
    add_files("src/*.cpp")
    on_load(function (target)
        if os.getenv("XMAKE_IN_PROJECT_GENERATOR") then
            target:set("toolchains", "clang")
        end
    end)

@waruqi It keeps reverting back to cl.exe

you can try it. But it may have some side effects (caching causes). We can't support it better at the moment.
target("test")
    set_kind("binary")
    add_files("src/*.cpp")
    after_load(function (target)
        if os.getenv("XMAKE_IN_PROJECT_GENERATOR") then
            target:set("toolchains", "clang")
        end
        for _, toolchain in ipairs(target:toolchains()) do
            toolchain:check()
        end
    end)

@waruqi Tested this, it's okay-ish for the time being, hopefully, there's a better solution in the future.


Schema Compare can't apply changes to SQL comments

Type: Bug
The Schema Compare function detects changes in SQL comments (i.e. /* */ or leading --). These appear in the Schema Compare results and the diff shows correctly, however the changes are not available to apply. The "Apply" button is greyed out and when I roll over it it says "No changes to apply".
Steps to reproduce:

Create project using "Create Project from Database"
Modify comments in SQL object on db
Run Schema Compare to see diffs between db and project
Attempt to click "Apply"

Version: 1.48.0 (user setup)
Commit:<PHONE_NUMBER>ef8254b7c22a5dc55af7f8a1dea93f
Date: 2024-02-27T00:05:08.293Z
VS Code: 1.82.0
Electron: 25.9.8
Chromium: 114.0.5735.289
Node.js: 18.15.0
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19045
Extension version: 1.21.0
Azure Data Studio version: azuredatastudio 1.48.0<PHONE_NUMBER>ef8254b7c22a5dc55af7f8a1dea93f, 2024-02-27T00:05:08.293Z)
OS version: Windows_NT x64 10.0.19045
Restricted Mode: No
Preview Features: Enabled
Modes:

System Info

Item
Value

CPUs
11th Gen Intel(R) Core(TM) i7-1165G7 @ 2.80GHz (8 x 1690)

GPU Status
2d_canvas: enabledcanvas_oop_rasterization: enabled_ondirect_rendering_display_compositor: disabled_off_okgpu_compositing: enabledmultiple_raster_threads: enabled_onopengl: enabled_onrasterization: enabledraw_draw: disabled_off_okvideo_decode: enabledvideo_encode: enabledvulkan: disabled_offwebgl: enabledwebgl2: enabledwebgpu: enabled

Load (avg)
undefined

Memory (System)
15.41GB (1.89GB free)

Process Argv

Screen Reader
no

VM
0%

This definitely doesn't happen in Visual Studio.


CudaContext.syncOldStream overhead

Test machine: Windows 10, CUDA 8 + CuDNN, Titan X (Pascal)
This PR considerably refactors workspace use in DL4J: https://github.com/deeplearning4j/deeplearning4j/pull/4900
However, on a simple benchmark, it is considerably slower than 1.0.0-alpha (even though it eliminated the migrateInput bottleneck): https://github.com/deeplearning4j/dl4j-benchmark/blob/master/dl4j-core-benchmark/src/main/java/org/deeplearning4j/simple/SimpleBenchmark.java
According to profiling, the reason is due to the more frequent workspace closing.
Consider for example applying the updater... though there's some uncertainty here (profiling/tracing, plus grid executor, some functionality and workspace opening/closing moved elsewhere etc) it certainly looks like workspace closing (and, syncOldStream specifically) take a lot longer than the actual ops themselves.
https://github.com/deeplearning4j/deeplearning4j/blob/eafc97588d9037299b6044e765487ae169505bcb/deeplearning4j-nn/src/main/java/org/deeplearning4j/nn/updater/BaseMultiLayerUpdater.java#L275-L282
1.0.0-alpha:

ab_workspace_opt:

For comparison on 100 fit ops for AlexNet, the migrateInput I was working to eliminate took 2437ms on 1.0.0-alpha, and for comparison the syncOldStream for the updater alone took 3879ms.

Is SimpleBenchmark.java enough to reproduce this behavior?

Yes, use that SimpleBenchmark class in benchmark repo.

Confirming that after some workspace changes - and finally merging my memory PR to master - the issue seems to still be present.

This might have something to do with separable compilation that was enabled after 1.0.0-alpha?

That's quite possible. But lets take a look into profiler dump first.

At this moment i don't see anything suspicious at profiler. Actually it looks pretty much ideal. But we  ( @crockpotveggies and me) are still looking into dumps.

Ye, everything looks legit in this case.
It's just increased number of synchronize calls, due to DL4j workspaces changes.


title slips low - archive sheet - desktop safari

some titles slip low over the divider line, icon, and image
(this is an issue for an older version of safari - 9.1.3 - so if this is tricky we can figure out if we want to correct for this browser version)

Duplicate of #32


Vulkan SC support?

Hi,
Nvidia latest r560 support vulkan sc development on geforce rtx consumer cards.. they ship also a vulkan sc sdk with prebuilt binaries and r560 drivers ship a tool nvidia-ppc which allows offline compilation of pipeline binaries needed in vulkan sc i believe.. is amd planning to ship support for vulkan sc in amdvlk drivers even if only for development of vulkan sc apps?
thanks..

https://coreavi.com/wp-content/uploads/CoreAVI_ProductBrief_E9171_Support.pdf
Official Vulkan SC support for AMD HW is only provided by their partner, CoreAVI ...

Currently there is no plan to support vulkan sc in amdvlk drivers


Update npm dependencies

Looks like updating sinon broke the wallet's integration tests for some reason: https://github.com/sinonjs/sinon/issues/1377
Perhaps we'll just keep sinon behind until that issue is fixed

Scratch that, looks like adding global.HTMLElement = function() {} to test/dom.setup.js fixes this issue. That should do for now.


feat: Compiler backends option

This PR should NOT be merged until https://github.com/dafny-lang/dafny/pull/1739 is agreed on and merge.
It features a new option "Dafny Plugins", which essentially is a list of comma-separated DLLs that Dafny can use in various places to augment its pipeline.
Also, I added logging information about what launch arguments were used to start the DafnyLanguageServer.

I think this option should be a list instead of a comma-separated string

I think this option should be a list instead of a comma-separated string

Unless you know something I'm not aware of, lists are not at all user friendly in VSCode. With a list, you get the interface:

which provides no clue on how to add this setting to settings.json (look how people would have to guess it's dafny.compilerArgs with this case)
If you make it a string, VSCode makes it easy to edit and use.

Unless you know something I'm not aware of, lists are not at all user friendly in VSCode.

https://code.visualstudio.com/updates/v1_37#_settings-editor-support-for-string-arrays
Maybe it's because you used an optional list instead of a list?

Thanks for linking that doc @cpitclaudel. I think the reason that we're not seeing this kind of UI interaction is that we do not specify the type of the items. Therefore, the dafny.compilerArgs option should look like the following:

        "dafny.compilerArgs": {
          "type": "array",
          "items": {
            "type": "string"
          },
          "default": [
            "/verifyAllModules",
            "/compile:1",
            "/spillTargetCode:1"
          ],
          "description": "Optional array of strings as Dafny compilation arguments"
        }

Unless you know something I'm not aware of, lists are not at all user friendly in VSCode.

https://code.visualstudio.com/updates/v1_37#_settings-editor-support-for-string-arrays
Maybe it's because you used an optional list instead of a list?

Fantastic ! That's because the type of items was not specified. I'm going to do a separate PR so that it becomes the default.

Here is the PR. I'll update this PR accordingly.
https://github.com/dafny-lang/ide-vscode/pull/124

I just push some changes but realized we need to simplify how the parsing of argument works at the Dafny level.

I just tested it again on one of the Dafny tests, it works like a charm.


fix: update to radicle's new alien branding

Closes #56

Result:

new themed icons were handcrafted (and an associated .woff font containing them, needed in VS Code extensions)

radicle-alien-icons.zip

all readme screenshots were updated to show the updated, rebranded UI

For more context, it's worth checking the PR itself for a [visual diff](more context).


Adding UserVoice link

We'd like to point developers to UserVoice for upvoting missing extension APIs. This patch updates our documentation to reflect that.

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


Highlight function parameters

Before:

After:

LGTM. Would you mind add some test cases in the syntax_test_typst.typ file?

Done! Is that enough?


Abandoned drafts keep rising from the dead

Describe the bug
I think this is a recent change in behaviour: previously, if I started drafting a message and thought better of it, I could just close the draft and it would go into my drafts folder, where I could access it if needed but otherwise I could just forget about it. Recently, my abandoned drafts keep resurfacing whenever I try to reply to a different message.
This wouldn't be so bad, but it's really awkward to dismiss them, and sometimes the old text gets mixed into a new draft without me noticing, so it gets a bit frustrating sometimes.
To Reproduce
To reproduce the basic issue:

start typing a reply in some topic, and don't post it
close the draft
try to reply to another message in the same topic. The old draft text reappears

if you don't want to resurrect the old draft but still want it to stay saved as a draft, it seems the only thing you can do is click on the three dots next to the send button and click "Save draft and start a new message", which is awkward to do and very non-obvious.
To reproduce accidentally mixing up an old draft with a new one

start drafting a reply in some topic
close the draft
select another long message in the same topic and click "quote and reply."
start replying to the quote by breaking the quote up into chunks and replying to fragments of it
now notice that the old draft text is still there at the end of the quote, even though it never became visible in the process of editing the quote to reply to it.

Expected behavior
Either the old draft just never reappears unless I specifically seek it out, or if it does reappear, it should be very very obvious that it's an old draft and very, very easy to dismiss it and start a new one.
If I click "quote and reply" to some message, I don't think the draft text should ever reappear.
Or perhaps the best option would be something like a note that says "you have n drafts in this topic, do you want to restore one of them?" above the text box where you enter a reply. So it's easy to resurrect a draft but not mandatory.

Desktop (please complete the following information):

Operating System:

macOS 12.6.5

Zulip Desktop Version:

5.11.0

Thanks for the report! This is indeed a recent intentional change, as described in this Zulip update message:

When you start composing, the most recently edited draft for the conversation you are composing to now automatically appears in the compose box. You can always save a draft and start a new message using the send options menu next to the Send button. Learn more.

It's very possible there are improvements to be made in how it works.
I'm surprised about the particular issue you report with quote-and-reply, though. When I try to follow your instruction to reproduce accidentally mixing up an old draft with a new one, I'm not seeing the old draft appear.

I think you're right - it is not happening for me following the exact instructions I gave. So I am not currently sure what was tripping me up - I definitely did have the experience a few times where I was replying to a quote and found some old draft text that wasn't meant to be there, but I'm now not sure exactly how to reproduce it.
Then I guess all I want to say is that as it is, I don't think this is a good change. It could be useful occasionally, but the rest of the time it just presents me with a problem I have to work around. If there was an easy one-click way to dismiss the old draft it wouldn't be so bad, but I would still honestly prefer it not to happen at all.

Are you hoping to save the old draft for later, or do you want to get rid of it altogether? If you don't need it at all, deleting the text in your compose box will clear it out.

Often I want to keep it. I use Zulip for maths, and it can take a while to get everything right before I send it. Often I do end up abandoning drafts entirely, but I don't want to explicitly delete them because I do sometimes come back to them.

Closing, as we don't seem to have a clear bug here and haven't gotten similar reports in the last few months. (It's most likely that we accidentally fixed this). But thanks for the feedback about auto-deleting drafts; I posted https://chat.zulip.org/#narrow/channel/137-feedback/topic/Drafts.2030.20day.20expiration/near/1969953 to discuss that detail.


OPDS feed, implement search

In the UI or each OPDS catalog, a search bar is hidden until we develop the OPDS search feature.
This feature relies on the proper processing of search links in OPDS structures.
Also, when the OPDS search bar is re-activated, the position of the search icon will have to be fixed.

In OPDS 1.1, search is defined in https://specs.opds.io/opds-1.1.html#Search. The feature is declared via the presence of an opensearch link in the feed. It is using a templated URL and the "searchTerms" variable.
Note: We will not use the "atom:author", "atom:contributor" or "atom:title" for the short term, as our search field is generic.
ex. in https://catalog.feedbooks.com/catalog/public_domain.atom
there is an element
https://catalog.feedbooks.com/opensearch.xml contains

https://catalog.feedbooks.com/search.atom?query=gatsby
returns a feed of search results, ready for display.
In OPDS 2, search is currently defined by https://github.com/opds-community/drafts/blob/master/opds-2.0.md#2-search. The syntax is simpler, as the templated URL is directly in the json structure.

Here is a sample OPDS 2 feed, with a search feature: https://catalog.feedbooks.com/catalog/index.json

fixed in c234373


wip / shouldn't we set ingressclass for kubernetes ingresses as well?!

What does this PR do?

Motivation
Reading a question on SO, I  realize we may be missing something ... (question about nginx ... I've lost my focus ..)
An option that is documented, in Traefik docs, seems to be missing from our _podTemplate
More

[X] Yes, I updated the chart version

Additional Notes
don't merge yet
would there be any rational for using separate IGC, dealing with Ingresses and traefik-specific objects?
maybe move providers.xxx.ingressClass to providers.ingressClass?
then: add tests

Hello @faust64,
This pull request seems to be a good candidate to fix https://github.com/traefik/traefik-helm-chart/issues/555.
Regarding your questions:

would there be any rational for using separate IGC, dealing with Ingresses and traefik-specific objects?
maybe move providers.xxx.ingressClass to providers.ingressClass?

As the ingressClass option is already available for the kubernetesCRD provider, adding it only to the kubernetesIngress provider sounds good. As you said, we could have only one config option and the same applies to all duplicated options between the providers, feel free to open an issue to discuss that.
Could you update this pull request (rebase + minor version bump)?

Superseded by #513


Earlier release of 2.0?

@pboling Thanks for all your work here! I'd love to get a release 2.0, particularly to pull in https://github.com/oauth-xx/oauth2/pull/509 since this gets rid of MD5, which is necessary for FIPS compliance.
I see https://github.com/oauth-xx/oauth2/milestone/1 is the goal, but could we push these to a 2.1 release?

Are https://github.com/oauth-xx/oauth2/issues/582 and https://github.com/oauth-xx/oauth2/issues/248 the main issues that need help?

Ok, I think the 2.0 issues are complete now. I think the mutual TLS issue can probably be left alone now: https://github.com/oauth-xx/oauth2/issues/583#issuecomment-1151595579. As far as I can tell, no code changes are necessary on the client.
Could we cut a release soon? Thanks again!

Everything looks great!  I'll start the release process 🎸

@stanhu I have released 2.0.0.rc1.  Please try it out!

@pboling Thank you!
I did a diff between v1.4.9 and v2.0.0.rc1:

In v1.4.9, if there were a JSON or XML parser error in #get_token, the client would catch the exception and return nil. I'm wondering if this is could lead to errors bubbling up unexpectedly.
Wondering if OAuth2::Client#refresh! should use a keyword argument access_token_class to be consistent with OAuth2::Client#get_token.

Ok, I see raise_errors was default to true, so the exception would be thrown in v1.4.9 as well.

@stanhu On the first point, raising was an intentional breaking change. https://github.com/oauth-xx/oauth2/pull/576

On the second point, yeah, I think it makes sense to have the arguments share a common pattern.

#595 should resolve a regression, and #596 should make the arguments consistent.

I will have a look at them when I get back to my computer!

@stanhu 2.0.0.rc2 has been released with those changes

@pboling Thank you! One more bug fix with error handling: https://github.com/oauth-xx/oauth2/pull/598

@stanhu 2.0.0.rc3 is released!

@stanhu 2.0.0 is released!

@pboling Thank you so much! I was just going to say that I've been testing our OAuth2 integrations with the pre-release version, and everything looks good.


upgrade core to support multiple profile inputs that get merged into a single lookup

Consideration
it would be good if we can support
./hdmi_cec -p hdmiProfile.yaml -p platformTestProfile.yaml

And all the profiles get merged together, in a single entry. I realise this means that instead of supporting file based kvp, in the backend we would need to support adding a new function to kvp. Since we have open - which opens the first file, we can introduce read which basically appends to the current ut_kvp_instance_t with extra data..
or we change the basic configuration for open, to always append to the already open data..

#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>

#define MAX_FILES 10 // Maximum number of files to handle

int main(int argc, char *argv[]) {
    int opt;
    char *filenames[MAX_FILES];
    int fileCount = 0;
    const char *optString = "f:";

    while ((opt = getopt(argc, argv, optString)) != -1) {
        switch (opt) {
            case 'f':
                if (fileCount < MAX_FILES) {
                    filenames[fileCount++] = optarg;
                } else {
                    fprintf(stderr, "Error: Maximum number of files reached.\n");
                    exit(EXIT_FAILURE);
                }
                break;
            default:
                fprintf(stderr, "Usage: %s [-f filename]...\n", argv[0]); // Notice the "..."
                exit(EXIT_FAILURE);
        }
    }

    printf("Processing %d files:\n", fileCount);
    for (int i = 0; i < fileCount; i++) {
        printf("  - %s\n", filenames[i]);
        // Do something with each file (e.g., call your process_node function)
    }

    return 0;
}

Yaml file
./your_program -f file1.yaml -f file2.json -f http://example.com/config.yaml

we should be able to support this via changing the input file to ut-control-kvp-open to something like this !include <file>, which appends the included file into the instance. or !include <http://url>


Redux book

What does this PR do?
Add resource(s) | Improve repo
For resources
Description
Book for learning redux
Why is this valuable (or not)?
Managing an application's state is crucial for your application to behave consistently and this is where Redux comes into the picture. It provides a state container for applications.
How do we know it's really free?
Github repository
For book lists, is it a book? For course lists, is it a course? etc.
It is a Book
Checklist:

[x] Read our contributing guidelines
[x] Search for duplicates.
[x] Include author(s) and platform where appropriate.
[x] Put lists in alphabetical order, correct spacing.
[x] Add needed indications (PDF, access notes, under construction)

Follow-up

Check the status of GitHub Actions and resolve any reported warnings!

one change per PR please


Pydantic 2

Modelkit has pinned pydantic < 2 a few months ago since the latest 2.x version breaks BaseSettings.
A previous issue written by @victorbenichoux (see https://github.com/Cornerstone-OnDemand/modelkit/issues/189) and corresponding PR was merged to pin pydantic < 2 as a quick fix.
Nonetheless, as stated by @victorbenichoux (again) and backed by several profiling initiatives throughout the years:

pydantic input and output validations represent a large overhead (around 30% of the inference time for models with lots of typed model dependencies)
disabling MODELKIT_ENABLE_VALIDATION does not work with complex data types (it attempts at recursively and manually recreating the object without validating it in the first part) but still comes with the reconstruction overhead

As such, migrating modelkit to Pydantic 2 seems like a no-brainer, especially since it is now 2.4.x with a whole summer of patches, fixes and improvements!
It will be a good opportunity to bump a major version as well to celebrate the huge step forward in terms of speed (finally!)
@victorbenichoux would you still be happy to propose a PR, or discuss it ? :-)

Available in the 0.1.0.b1 pre-release on pypi!
Soon to be actually released under the stable 0.1.0 version once several migration tests have been carried out successfully

Now available as part of the modelkit 0.1.0 release & on main 🎉


fhir-model parser cannot parse datetime fractionalSeconds with more than 6 digits of precision

Describe the bug
While testing with the latest PDEX PlanNet resource examples, I noticed that some of them fail to parse and emit errors like these:
2020-08-25T13:20:23.3064062Z com.ibm.fhir.model.parser.exception.FHIRParserException: Text '2020-07-07T13:26:22.0314215+00:00' could not be parsed at index 26 [Endpoint.meta.lastUpdated]
2020-08-25T13:20:23.3068473Z 	at com.ibm.fhir.model.spec.test.R4ExamplesTest.serializationTest(R4ExamplesTest.java:36)
2020-08-25T13:20:23.3071479Z Caused by: java.time.format.DateTimeParseException: Text '2020-07-07T13:26:22.0314215+00:00' could not be parsed at index 26
2020-08-25T13:20:23.3073955Z 	at com.ibm.fhir.model.spec.test.R4ExamplesTest.serializationTest(R4ExamplesTest.java:36)

To Reproduce
Steps to reproduce the behavior:

Create an instance with a lastUpdated time that has 7 or more fractional second digits
Attempt to parse it

Expected behavior
The resource should get parsed with success; we should either truncate or round the fractional seconds to 6 digits.
Additional context
One thing this could affect is our ability to round-trip a resource.
We will need to clearly document the behavior.

New design enables the FHIR server to parse dateTime and instant elements with a fraction of seconds precision up to 9 digits. Anything greater than 6 digits will be truncated to 6 digits on object creation.


Add a builder for SearchRequest class

The SearchRequest class has been modified to simplify its use, see #455

Removing all the constructors with multiple arguments on the Class
Add the possibility to use a builder()

SearchRequest.builder()
    .q("")
    .offset(10)
    .limit(200)
    .cropLength(5)
    .cropMarker("…")
    .build();

Keep the possibility to initialize the Class like:

new SearchRequest("")
    .setOffset(10)
    .setLimit(200)
    .setCropLength(5)
    .setCropMarker("…");

bors merge


etcdctlv3: need to set transport security

Otherwise
Error:  grpc: no transport security set (use grpc.WithInsecure() explicitly or set credentials)

This is from the recent gRPC godep udpate. We need to set transport setting in grpc.Dial.

Will wait on @xiang90 to finalize v3 transport layer.

@heyitsanthony  got this :+1:   https://github.com/coreos/etcd/pull/4349


amplify init fails with type error log is not a function

Can you please provide the information requested in the issue template.

@najeeb2113 Please open an issue with this format - https://github.com/aws-amplify/amplify-cli/issues/new?assignees=&labels=&template=1.bug_report.yaml&title= for giving the team all the information required to repro.


Fleetctl failing to return any results or any debug info

I'm trying to run fleetctl to extract queries on the command line but a large proportion of the time, the queries are not displaying any results. Sometimes they will work but certainly not consistently or reliably.
Our fleet server is installed in multiple docker containers managed via a load balancer.
I've seen other issues raised where fleetctl has displayed debug information but even when I use the --debug option I do not get any details.
What version of fleet are you using (fleet version --full)?
fleet - version 2.0.2
  branch:       changelog
  revision:     96008f11bb51605cbf22b7bb6f883d262ce13a28
  build date:   2019-01-18T00:27:22Z
  build user:   zwass
  go version:   go1.11.3

What operating system are you using?
Oracle Linix 6.8
What did you do?
$ fleetctl query --timeout 25m --query 'select name,version from os_version' --labels 'All Hosts' --exit
What did you expect to see?
Query results
What did you see instead?
[----------]$ fleetctl query --timeout 25m --query 'select name,version from os_version' --labels 'All Hosts' --exit
⠋ [----------]$
[----------]$ fleetctl query --timeout 25m --query 'select name,version from os_version' --labels 'All Hosts'
0% responded (0% online) | 0/0 targeted hosts (0/0 online)
[----------]$

ping! same issue with me.

We have been discussing this issue on the osquery Slack (https://osquery.slack.com/archives/C1XCLA5DZ/p1551977973119600) and not yet come to any conclusion.
For anyone else experiencing it, can you please answer the following:

Fleet version and fleetctl version
Do the hosts appear online in the web UI?
Are you able to query via the web UI?
Are you able to query a single host through fleetctl?
Can you create a new label with the query select 1 and then query against that label via fleetctl?

If anyone is able to provide more information I am interested in debugging this.

same issue +1.
And more detail information for you to debugging

fleet & fleetctl version

# fleet version
fleet version 2.0.2

# fleetctl - version 2.0.2
  branch:       master
  revision:     8ca0358bf28173685815b79d8683a4239d629a14
  build date:   2019-01-18T00:39:59Z
  build user:   zwass
  go version:   go1.11.3

host is online in the Web UI

I can query  correctly via the WebUI

can't query correctly a single host via fleetctl

still failed

+1 still the same issue

@fl4nker is your Fleet instance possibly behind some load-balancer or other network configuration that does not support websockets? Can you please take a screenshot of the network panel in the chrome webtools after making a new live query (we're looking to see whether it is connecting over a websocket or XHR requests).
@kp625544 Can you please answer my questions in the post above, in addition to those added in this post?

@zwass  thank you for you help. the screenshot is shown as blow

@fl4nker it looks like Fleet is falling back to XHR requests. Unfortunately the library that provides this support was only available in JS and so there is no fallback support in fleetctl.
If you want queries to work in fleetctl you'll have to configure your LB or whatever else is fronting Fleet to support websockets.

@zwass I have the same issue when I run fleetctl on a remote machine, I'm able to see online hosts but not able to run queries. but when I run the same fleetctl query on the fleet host it's able to get results.
All hosts are online in the web UI and Fleetctl also able to get hosts.
fleetctl - version 2.4.0   branch: 	master   revision: 	70c6f5bd7d8a337a97f7702ee17088e74722896f   build date: 	2019-11-12T23:11:23Z   build user: 	zwass   go version: 	go1.12.8


az ad signed-in-user show failed from terraform

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az ad signed-in-user show
Errors:
The command failed with an unexpected error. Here is the traceback:
HTTPSConnectionPool(host='graph.microsoft.com', port=443): Max retries exceeded with url: /v1.0/me (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f36fb353dc0>: Failed to establish a new connection: [Errno -2] Name or service not known'))
Traceback (most recent call last):
  File "/opt/az/lib/python3.10/site-packages/urllib3/connection.py", line 174, in _new_conn
    conn = connection.create_connection(
  File "/opt/az/lib/python3.10/site-packages/urllib3/util/connection.py", line 73, in create_connection
    for res in socket.getaddrinfo(host, port, family, socket.SOCK_STREAM):
  File "/opt/az/lib/python3.10/socket.py", line 955, in getaddrinfo
    for res in _socket.getaddrinfo(host, port, family, type, proto, flags):
socket.gaierror: [Errno -2] Name or service not known

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/az/lib/python3.10/site-packages/urllib3/connectionpool.py", line 699, in urlopen
    httplib_response = self._make_request(
  File "/opt/az/lib/python3.10/site-packages/urllib3/connectionpool.py", line 382, in _make_request
    self._validate_conn(conn)
  File "/opt/az/lib/python3.10/site-packages/urllib3/connectionpool.py", line 1010, in _validate_conn
    conn.connect()
  File "/opt/az/lib/python3.10/site-packages/urllib3/connection.py", line 358, in connect
    conn = self._new_conn()
  File "/opt/az/lib/python3.10/site-packages/urllib3/connection.py", line 186, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPSConnection object at 0x7f36fb353dc0>: Failed to establish a new connection: [Errno -2] Name or service not known

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/az/lib/python3.10/site-packages/requests/adapters.py", line 439, in send
    resp = conn.urlopen(
  File "/opt/az/lib/python3.10/site-packages/urllib3/connectionpool.py", line 755, in urlopen
    retries = retries.increment(
  File "/opt/az/lib/python3.10/site-packages/urllib3/util/retry.py", line 574, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPSConnectionPool(host='graph.microsoft.com', port=443): Max retries exceeded with url: /v1.0/me (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f36fb353dc0>: Failed to establish a new connection: [Errno -2] Name or service not known'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/opt/az/lib/python3.10/site-packages/knack/cli.py", line 231, in invoke
    cmd_result = self.invocation.execute(args)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 663, in execute
    raise ex
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 726, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 718, in _run_job
    return cmd_copy.exception_handler(ex)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/command_modules/role/commands.py", line 51, in graph_err_handler
    raise ex
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 697, in _run_job
    result = cmd_copy(params)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/__init__.py", line 333, in __call__
    return self.handler(*args, **kwargs)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/command_operation.py", line 363, in handler
    show_exception_handler(ex)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/arm.py", line 429, in show_exception_handler
    raise ex
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/commands/command_operation.py", line 361, in handler
    return op(**command_args)
  File "/opt/az/lib/python3.10/site-packages/azure/cli/command_modules/role/custom.py", line 1809, in show_signed_in_user
    result = client.signed_in_user_get()
  File "/opt/az/lib/python3.10/site-packages/azure/cli/command_modules/role/_msgrpah/_graph_client.py", line 224, in signed_in_user_get
    result = self._send("GET", "/me")
  File "/opt/az/lib/python3.10/site-packages/azure/cli/command_modules/role/_msgrpah/_graph_client.py", line 52, in _send
    r = send_raw_request(self._cli_ctx, method, url, resource=self._resource, uri_parameters=param,
  File "/opt/az/lib/python3.10/site-packages/azure/cli/core/util.py", line 985, in send_raw_request
    r = s.send(prepped, **settings)
  File "/opt/az/lib/python3.10/site-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/opt/az/lib/python3.10/site-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='graph.microsoft.com', port=443): Max retries exceeded with url: /v1.0/me (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f36fb353dc0>: Failed to establish a new connection: [Errno -2] Name or service not known'))

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az ad signed-in-user show -o={}

Expected Behavior
Environment Summary
Linux-5.15.0-48-generic-x86_64-with-glibc2.35, Ubuntu 22.04.1 LTS
Python 3.10.5
Installer: DEB

azure-cli 2.39.0 *

Additional Context

@jiasli for awareness

The error message is pretty clear:

requests.exceptions.ConnectionError: HTTPSConnectionPool(host='graph.microsoft.com', port=443): Max retries exceeded with url: /v1.0/me (Caused by NewConnectionError('<urllib3.connection.HTTPSConnection object at 0x7f36fb353dc0>: Failed to establish a new connection: [Errno -2] Name or service not known'))

This is because your network can't resolve graph.microsoft.com. Plesae check your DNS settings to make sure graph.microsoft.com can be reached.


Update Angular to resolve vulnerability CVE-2021-4231

Versions of Angular < 11.0.5 have a cross-site scripting vulnerability as described at https://github.com/advisories/GHSA-c75v-2vq8-878f.

same issue here due to the version 9.0.0 of @angular/core referenced in package.json
any info about when the correction will be shipped ?

this issue is keeping me from updating angular. please fix!

Same issue A vulnerability was found in Angular up to 11.0.4/11.1.0-next.2

If you install this dependency as a dev dependency is still a problem but not that important and as I understood should be always a dev dependency