Syntax error: word unexpected (expecting ")")

After a fresh install, I get the following error:
Error: Command failed: /home/atd/dev/pear2pear/node_modules/imagemin-pngcrush/node_modules/pngcrush-bin/vendor/pngcrush: 1: /home/atd/dev/pear2pear/node_modules/imagemin-pngcrush/node_modules/pngcrush-bin/vendor/pngcrush: Syntax error: word unexpected (expecting ")")

    at ChildProcess.exithandler (child_process.js:658:15)
    at ChildProcess.emit (events.js:98:17)
    at maybeClose (child_process.js:766:16)
    at Socket.<anonymous> (child_process.js:979:11)
    at Socket.emit (events.js:95:17)
    at Pipe.close (net.js:466:12)

What OS?

Debian testing.
The arch is i386 and pngcrush binary is ELF 64-bit LSB executable, x86-64 so maybe the problem resides there?

Closing as no one else has encountered this and it's very old.


Dex rank not working

I have 30% got the ultra something but it doesn't show I own the kit at all or my name as ultra

This bug should now be fixed but if not, please contact us via our Discord so it can be resolved as soon as possible :)


Index error : Index out of bounds in language_pair_dataset.py

Hi, I'm trying to use sentencepiece model as segmentation method for training NMT model. I tried to use the source code of  "multilingual translation" (where sentencepiece is used) and applied this source code to iwslt14 dataset example. (Changed bash code a bit)  and managed to train sentencepiece model and generate dictionary in data-bin file.
But when I tried to train the base transformer model, the index error occurred in language_pair_dataset.py.

Any help or suggestion? I have no idea where this error is occurring.
Thank you!

It's indexing out of the dataset, did you make any modifications there?

@huihuifan
Thank you for your reply.
I only made a few changes to the bash file(prepare-iwslt14.sh) to encode given dataset into segments with sentencepiece model.(referencing prepare-iwslt17-multilingual.sh) I haven't made any changes to other files(including language_pair_dataset.py).

Can you post what you are using? It's trying to sort the dataset and it's indexing out, so there's definitely some issue there

Closing due to inactivity.  Please open a new issue if you are still having problems.

Hi @JJumSSu  even I am facing the same issue when trying to use sentencepiece. Did you find solution to the issue ? If yes please share.

Unfortunately, this issue was not resolved. I couldn't find the problem. I am currently working with the IWSLT17 data set. Sorry,

Hi, anybody have solved problem?

Please open a new issue using the new templates providing a reproducible example.

Any solutions for this?

i think your src dataset has one more example than your tgt dataset, maybe because of some modifications you've done


Knockout 3 custom handler?

Any plan to have an official, or at least "well done", custom binding handler for Select2 v. 4 and Knockout?
thanks

We more or less don't have any "official" integrations between Select2 and other plugins (x-editable being an exception).
If you do find an integration, feel free to create a pull request that adds it to https://github.com/select2/select2#integrations


Markdown fixes

Fixes these issues with the new markdown:

null conversation ID. Fixes the createChannel regex to return null instead of the regex /#()\b/
Weird boundaries with _ and * i.e. under_score the first, `under_score the second`  was parsed wrong
Fix mobile link styling

Any issues I missed? @mmaxim @chrisnojima
@keybase/react-hackers

Common URL's   Like google.com etc

Plus 1 as thumbs up. See chat history in frontend

Was the link styling desktop also?

I'm talking without the http prefix.  I can try again later but it didn't work on desktop when I tried

ah I just repro'd. It works if you have just the url, but fails if there is text in front.
i.e.:
google.com works
this won't work google.com
I can't fix it right now, but the fix involves just having the text break at every space. The text rigth now is too greedy and eating the beginning of the link which doesn't let the link regex match.

don't merge yet, the changes to bold are kinda broken

alright, changes to bold are fixed.

I think that is all I know about, seems good to merge modulo CI

Merge away!

Channel mentions aren't styled / clickable on this branch


Provide a standardized way to customize admin backend URL

Fixes #10882 This pull request introduces a new configuration setting, WAGTAIL_BACKEND_ADMIN_URL, aimed at providing a standardized and flexible approach to customize the admin backend URL in Wagtail.
I would greatly appreciate suggestions and insights on this!
Please check the following:

[ ] Do the tests still pass?[^1]
[ ] Does the code comply with the style guide?

[ ] Run make lint from the Wagtail root.

[ ] For Python changes: Have you added tests to cover the new/fixed behaviour?
[ ] For front-end changes: Did you test on all of Wagtail’s supported environments?[^2]

[ ] Please list the exact browser and operating system versions you tested:
[ ] Please list which assistive technologies [^3] you tested:

[ ] For new features: Has the documentation been updated accordingly?

Please describe additional details for testing this change.
[^1]: Development Testing
[^2]: Browser and device support
[^3]: Accessibility Target

@rohitsrma  I think this is not on the right track sorry, see https://github.com/wagtail/wagtail/issues/10882#issuecomment-1826963021 (comment).
The original request is to support only the login URL, not the admin paths as a whole.
The admin base path can be set to whatever the Wagtail site wants it to be, so this does not need config. We are just wanting to provide a convenient way to set up the login form to go to another URL (internal or external).

Will close this, as it doesn't match what #10882 is asking for.

Thanks! @lb-  I'll let the other contributors work on this and will try to help them when possible.


[Testing] Adding utility method to PortManager

This is split out from #14614

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

Needs approval from an approver in each of these files:

pkg/OWNERS [nmittler]

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

@nmittler: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

prow/integ-mixer-k8s-presubmit-tests.sh
11211c903c25b322d03638ce5ce773a210569706
link
/test integ-mixer-k8s-presubmit-tests-master

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

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

Needs approval from an approver in each of these files:

pkg/OWNERS [nmittler]

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


Update tag to latest and pullPolicy to Always

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

This would never be supported as it can lead to side effects where deployed pods have different dgraph versions.
As an example, support at one point, dgraph/dgraph:latest image had dgraph version v20.03.3, and the image is updated on docker-hub so that latest now has dgraph version v20.03.4.  You can have some pods running on v20.03.3 and other pods running at v20.03.4.
The tag latest is convenient for development environments, but as this helm chart could be used for production environments, we would want to have intelligent defaults that do not produce side effects like the one explained above.


MSVC support and fallback to std assert

Hi thanks for the great and interesting work.
Is there any plan to support msvc?
I like the idea of this library to make dev experience better, but I don't want to introduce non cross platform code in my code.
If there is no plan to support msvc, is this library doing any kind of fallback (I didn't see) to the standard assert if the platform is not supported by your library?
Have a nice day!

Hello, thanks for the interest in the library! I haven't looked at msvc up until now. You make a good point about portability, I'll take a look at what would be needed for msvc support.

Pardon the delay here, been working hard on setting up some automated tests for this project! Library should be good to go for MSVC now :)


Instructions to add repository as Git sub-tree

Feature branch: example-rehaul
The naive way to make use of the code in this repository is to clone it and then adjust the cloned files, but this makes compatibility a nightmare.
Instead the usage of this repository as a Python package should be encouraged.
To achieve this, instructions should be provided to make use of this repository as a sub-tree, allowing easy updating of the project.

May no longer be necessary if installation via pip is possible


Fix ref tag case sensitivity

At the moment it's not possible to correctly use ref: tag keys which contain uppercase characters (I'm not a huge fan of them but it has become common to namespace ref: tags with the uppercase country code).
Overpass is case sensitive but osm_conflate currently lowercases all tag  names. This change uses the CaseInsensitiveDict class from requests (which is already a dependency) in SourcePoint to avoid tag name case issues.
I've tested this and it now behaves correctly with a ref tag key containing uppercase characters.

Actually, there is still a slight issue with this, I'll sort it.

Actually, there is still a slight issue with this, I'll sort it.

Thanks for the PR! There are two things missing now: value.strip() for each value, and skipping keys with value is None.

Oops, yes. Fixed.

And now it won't take tags == None :)
I'll have to check the code and examples to confirm that lowercase keys were not a requirement for some obscure process.


VECTOR-SEARCH 59: skipTo skipped to an item smaller than the target exception

Fixes https://github.com/riptano/VECTOR-SEARCH/issues/59
Adds a strictCompareTo method to the SAI PrimaryKey interface. The Javadocs should provide sufficient motivation.
Note that I tried to make these changes to the compareTo method, but because we use token only PrimaryKeys for the min and the max of a query, it seems that the strictCompareTo logic isn't what we want in all cases.
The primary reason we need strictCompareTo in the PostingListRangeIterator is that it stores the max primary key observed in the skipTo logic to lazily skip at a later time.
I verified that no other performSkipTo implementations need this strict comparison logic.

My tests are now complete and should cover essentially all of the new code. If anyone is interested in further motivation, the tests show the edge cases. Specifically, compareTo can produce different results than comparing the byte comparable representations of a Primary Key.


Archive failures when included in framework built with BUILD_LIBRARY_FOR_DISTRIBUTION=YES

My framework fails to archive successfully when this library is included and I have the library evolution flag of BUILD_LIBRARY_FOR_DISTRIBUTION=YES
Is this expected? Is it desired to have this library patched such that library evolution archives succeed? Specifically, I get the following errors:
swift-async-algorithms/Sources/AsyncAlgorithms/AsyncChunkedByGroupSequence.swift:108:10: error: 'let' property 'base' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.base = base

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncChunkedByGroupSequence.swift:109:10: error: 'let' property 'grouping' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.grouping = grouping

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncChunkedOnProjectionSequence.swift:89:10: error: 'let' property 'base' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.base = base

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncChunkedOnProjectionSequence.swift:90:10: error: 'let' property 'projection' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.projection = projection

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncChunksOfCountSequence.swift:74:10: error: 'let' property 'base' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.base = base

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncChunksOfCountSequence.swift:75:10: error: 'let' property 'count' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.count = count

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncInterspersedSequence.swift:38:10: error: 'let' property 'base' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.base = base

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncInterspersedSequence.swift:39:10: error: 'let' property 'separator' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.separator = separator

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncInterspersedSequence.swift:67:12: error: 'let' property 'separator' may not be initialized directly; use "self.init(...)" or "self = ..." instead
      self.separator = separator

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncJoinedBySeparatorSequence.swift:133:10: error: 'let' property 'base' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.base = base

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncJoinedBySeparatorSequence.swift:134:10: error: 'let' property 'separator' may not be initialized directly; use "self.init(...)" or "self = ..." instead
    self.separator = separator

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncRemoveDuplicatesSequence.swift:52:12: error: 'let' property 'predicate' may not be initialized directly; use "self.init(...)" or "self = ..." instead
      self.predicate = predicate

swift-async-algorithms/Sources/AsyncAlgorithms/AsyncRemoveDuplicatesSequence.swift:111:12: error: 'let' property 'predicate' may not be initialized directly; use "self.init(...)" or "self = ..." instead
      self.predicate = predicate

To see this, run the following archive command from the project root.
xcodebuild archive -scheme AsyncAlgorithms -destination "generic/platform=iOS" SKIP_INSTALL=NO BUILD_LIBRARY_FOR_DISTRIBUTION=YES

I found that replacing the @inlinable annotation for these initializers with @usableFromInline allows the archive to succeed and tests appear to be unaffected.


proc-macro-based implementation of Field

It would be nice to have a proc-macro that auto-creates and implements all of the field types and handles pinning correctly.
This should be done in a new crate, named gfp-derive

proc-macro derive was implemented in #5


QueryFactoryExtensionsAsync isn't in <IP_ADDRESS> assembly

I've been trying to do db.GetAsync but the extension method doesn't exist. Src code in GitHub here I can see they are in QueryFactory.Extensions.Async.cs file, but if I decompile the .dll with ILSpy, I can confirm it's not in there.
Can we get a release with those included plz?

It's there now. Closing, cheers!


Problem with nested object having a required property

Hey guys,
A schema with nested object that has a required property causes validation error
It also adds the nested property as an empty object even though it is not touched (try just changing the display field),
This behavior blocks the form to be submitted although it's valid,
Thanks,
Asaf.

There is a PR addressing this issue at #682, although I believe it still needs work. (Closing this as duplicate.)


Typo

In https://github.com/vladimir-bukhtoyarov/bucket4j/blob/f2173775e201818c679ba7cc71016eb7244bef22/bucket4j-core/src/main/java/io/github/bucket4j/Bucket.java#L177 replace "wise versa" with "vice-versa".

@cowwoc please submit pull request.

closed by #64


Output inversion

@johnnyr @tonokip is this simply inverting the signal on each phase? e.g.
PHASE_A1 = output_invert ^ sig


Support for HTTP2 over clear text or H2C

Search for duplicate feature request

[X] I already searched, and this feature request or improvement is not a duplicate.

Feature scope
Completely new feature
Feature request related to a problem

Describe the solution you'd like
Support for HTTP2 over clear text or H2C
Describe alternatives you've considered
Hyper + Axum + tower_http
Build target
All targets
Additional context
No response

Useful when there is a gateway sitting in front.


Not able to access private dependency

When depending on tetanes-core through git the build fails because of afaic a dependency on homebrew-formulae
https://github.com/tedsteen/nes-bundler/actions/runs/9192922817

doh! silly of me. let me fix that.

Perhaps a tetanes-core repository? 😇

main should be fixed now.

main should be fixed now.

works! :)


Change dashboards to local time

With the migration to Grafana 7.4 we now have the option of using the browser locale, and therefore catering for peoples local date/time format.
The following dashboards have been updated to reflect this:
Updates,
States
Stastistics.
There are three further dashboards which require updating, they are:
Charges
Drives
Vampire Drain,
However these are more complicated and require the panels to be upgraded to a newer version, so will be dealt with soon.

Am I wrong or didn't grafana already convert epoch time to local browser time /w $__time(column)? I'm not questioning your approach, I am genuinely curious :)

Am I wrong or didn't grafana already convert epoch time to local browser time /w $__time(column)? I'm not questioning your approach, I am genuinely curious :)

Yes it did, however Grafana was inconsistent and didn't use this approach across all its plugins.  If you look at my previous fix for this I was restricted to Date|Time_US & DateTime ISO.  Luckily this approach is no longer needed with the move to the latest version of Grafana.


Fix Issue #285 - Wrong Http Request Version

Fix for issue #285
Compatible with .NET 4.5, 4.6, Standard1.6, and Standard 2.0

Oops. Forgot to merge. Merging now.


Create event field

Need to change how events are stored

Need to change how events are stored

Done!


Implement the WPS-T list jobs method

Implemented and tested via Postman, Jupyter Notebook using a stub Hello World PGE.


Fail more clearly if the file program is not installed on the runner

This PR checks more clearly whether we can successfully find the location of the file program and emits a clearer message in the build log as well as a warning-level diagnostic if it cannot be found. There is also a new integration test which checks that this works as intended.
Since the check for whether the Go workaround is needed takes place before the database gets initialised, this PR also modifies the code for diagnostics to:

Check if the database exists yet before writing a diagnostic.
If it does not exist, the diagnostic is added to an array and flushed to disk later once the database is presumed to exist (init Action only)

Merge / deployment checklist

[ ] Confirm this change is backwards compatible with existing workflows.
[ ] Confirm the readme has been updated if necessary.
[ ] Confirm the changelog has been updated if necessary.

Added a changelog entry


ui/run-dev-server Uncaught TypeError from protobufjs util.LongBits

Hi，I just follow the Perfetto build instructions to build the UI，but got an Uncaught TypeError.
git clone https://android.googlesource.com/platform/external/perfetto/
tools/install-build-deps --ui
ui/run-dev-server

After run these commands，and then i see First build completed! Starting HTTP server on http://<IP_ADDRESS>:10000
But when i open it, i got an error,  seems came from protobufjs pkg
Uncaught TypeError: Cannot read properties of undefined (reading 'LongBits')
    at writer.js:8:22
    at index.ts:359:8

Does anyone have the same problem?

Env
MacOS 10.15.7

@chromy have you seen this before?

Fixed by update @rollup/plugin-commonjs 14.0.0 to 21.0.1
Step
edit ui/package.json  dependencies @rollup/plugin-commonjs to 21.0.1
cd ui
npm i
npm i --package-lock-only
cd ..

then
tools/install-build-deps --ui
ui/run-dev-server

that is really weird. install-build-deps invokes npm ci which should stick precisely to the pinned version.
Which doesn't explain how come this doesn't happen with all the other environments where we build perfetto.
¯\_(ツ)_/¯


During the Convert Image size from 2000 X676 To 1500 X 1000 , for making an PNG file , The image quality has been distorted

Hi team ,
We are conversion from image 2000 X676 To 1500 X 1000 for PNG image , The image has been converted but during the conversion its quality has been poor and sharpness  is very bad
We are using the setting
png({palette:true,colours:256,colors:256,dither:0.0,compressionLevel:0 ,quality:100}).withMetadata().resize(1500,1000)
for conversion , May I know that which settings is wrong for distorted the quality of compress image
Please help me out as priority basis
Compress Image :

Original Image

The use of png({ palette:true ... suggests you are using a globally-installed libvips with support for libimagequant. Please can you confirm this is the case, and if so, provide the versions of all dependencies you are using, plus as many details of the platform, OS etc. as you can.
Please also provide the complete code you are using to generate the output image.

help me out as priority basis

Please don't use phrases like this when requesting help from open source maintainers.

Yes I have installed the libvips  install on the globally and using the ^0.23.4 version of Sharp in present library,
We are using the ubutu server 16.0.4 version os in digital Ocean and using the express framework of Node for image re-size
Sample Code :
sharp.cache(false);
sharp('./upload/' + req.body.fileName).png({palette:true,colours:256,colors:256,dither:0.0,compressionLevel:5,quality:100,force: false }).withMetadata().resize(parseInt(req.body.cropWidth),parseInt(req.body.cropHeight)).toFile("./upload/temp_img_"+test_number +"."+"png").then( (ImageResult) => {
if (err) throw err;
fs.readFile("./upload/temp_img_"+test_number +"."+"png", function (err, data) {
if (err) { throw err; }
})
I have customize the libvips  via follow this article
https://sharp.pixelplumbing.com/install#custom-libvips

If you're using the packages provided by Ubuntu 16.04 then these are going to be outdated. Please upgrade to the latest sharp and upgrade the OS and as many other packages as you can, then provide the new versions of all relevant dependencies here.

@pixelfactorydevelopmentteam Were you able to upgrade the OS and make progress?

Hi team ,
I have already upgrade version from the 16.04 to 18.04 and all packages related to Sharp but still we are getting the distortion image during the process . So please help me for improve these distortion image issue

Given you are using a custom libvips, please provide the details of all dependencies it has been compiled with support for, including version numbers.

Closing due to inactivity but please feel free to reopen with the requested details if further help is required.


referentialActions: Only underline offending part of line when using referential actions, but not having preview feature enabled

it could only give a red squiggly line to the invalid part of the line

New formatter engine unfortunately did not make it into a Insider build of VSCode extension yet, see internal Slack: https://prisma-company.slack.com/archives/CKCQQGXJM/p1625264430037900

VSCode is unstuck, so I can not confirm this works as expected:


Support animated GIFs with transparency as RGBA frames with frame delay

For a project of mine I was looking for a crate that could load animated GIFs which I wanted to render with glium. Since this crate didn't have support for loading animated GIFs (I was surprised, because animation is the main reason why GIFs are used) I wrote my own loader based on this crate. It would be great to integrate animated GIF support into this crate, so that other projects can benefit from it as well.
This is my animated GIF loader / renderer code:
pub struct AnimGif<'a> {
    texture: glium::Texture2d,
    vertex_buffer: glium::vertex::VertexBufferAny,
    index_buffer: glium::index::IndexBufferAny,
    program: glium::Program,
    params: glium::DrawParameters<'a>,
    frame_count: u32,
    height: u32,
}
impl<'a> AnimGif<'a> {
    pub fn new<F: Facade, P: AsRef<Path>>(display: &F, path: P) -> AnimGif<'a> {
        use gif;
        use gif::SetParameter;
        use std::fs::File;
        let mut decoder = gif::Decoder::new(File::open(path).unwrap());
        decoder.set(gif::ColorOutput::RGBA);
        let mut decoder = decoder.read_info().unwrap();
        let size = (decoder.width() as u32, decoder.height() as u32);
        let frame_size = (size.0 * size.1 * 4) as usize;
        let mut gif_data = Vec::<u8>::new();
        let mut frame_count: u32 = 0;
        while let Some(frame) = decoder.read_next_frame().unwrap() {
            assert_eq!(frame.delay, 10);
            use image::GenericImage;
            let cur_frame = vec![0u8; frame_size];
            let src = image::ImageBuffer::<image::Rgba<u8>, Vec<u8>>::from_raw(frame.width as u32, frame.height as u32, frame.buffer.clone().into_owned()).unwrap();
            let mut dst = image::ImageBuffer::<image::Rgba<u8>, Vec<u8>>::from_raw(size.0, size.1, cur_frame).unwrap();
            dst.copy_from(&src, frame.left as u32, frame.top as u32);
            gif_data.extend(dst.into_raw());
            frame_count += 1;
        }
        let image = glium::texture::RawImage2d::from_raw_rgba_reversed(gif_data, (size.0, size.1 * frame_count));
        let texture = glium::texture::Texture2d::new(display, image).unwrap();

        #[derive(Copy, Clone)]
        struct Vertex {
            position: [f32; 2],
            tex_coords: [f32; 2],
        }

        implement_vertex!(Vertex, position, tex_coords);

        let shape = vec![
            Vertex { position: [0.0, -1.0], tex_coords: [0.0, 0.0] },
            Vertex { position: [0.0,  0.0], tex_coords: [0.0, 1.0] },
            Vertex { position: [1.0,  0.0], tex_coords: [1.0, 1.0] },
            Vertex { position: [1.0, -1.0], tex_coords: [1.0, 0.0] },
        ];

        let vertex_buffer = glium::VertexBuffer::new(display, &shape).unwrap().into_vertex_buffer_any();

        let index_buffer = glium::index::IndexBuffer::new(display, glium::index::PrimitiveType::TrianglesList, &[0u16,1,2,0,2,3]).unwrap().into();

        let vertex_shader_src = r#"
            #version 410

            layout(location = 0) in vec2 position;

            in vec2 tex_coords;
            out vec2 v_tex_coords;

            uniform mat4 matrix;

            void main() {
                v_tex_coords = tex_coords;
                gl_Position = matrix * vec4(position, 0.0, 1.0);
            }
        "#;

        let fragment_shader_src = r#"
            #version 430
            buffer layout(packed);

            in vec2 v_tex_coords;

            uniform sampler2D tex;
            uniform float cur_frame_offset;
            uniform float frame_count;
            uniform float transparency;

            out vec4 color;

            void main() {
                color = texture(tex, vec2(v_tex_coords.x, (v_tex_coords.y - cur_frame_offset) / frame_count));
                color.a *= transparency;
            }
        "#;

        let program = glium::Program::from_source(display, vertex_shader_src, fragment_shader_src, None).unwrap();

        let params = glium::DrawParameters {
            blend: glium::Blend::alpha_blending(),
            .. Default::default()
        };

        AnimGif {
            texture: texture,
            vertex_buffer: vertex_buffer,
            index_buffer: index_buffer,
            program: program,
            params: params,
            frame_count: frame_count,
            height: size.1,
        }
    }
    pub fn draw<T: Surface>(&mut self, target: &mut T, pos: Vector2<f64>, mut size: Vector2<f64>, angle: f32, transparency: f32, time: f32) {
        let resolution = target.get_dimensions();
        let resolution = (resolution.0 as f32, resolution.1 as f32);

        let (w, h) = target.get_dimensions();
        let (w, h) = (w as f32, h as f32);
        let tx = (pos.x as f32 / w - 0.5) * 2.0;
        let ty = (1.0 - pos.y as f32 / h - 0.5) * 2.0;
        if size == Vector2::new(0., 0.) {
            size = Vector2::new(self.texture.get_width() as f64, self.height as f64);
        }
        let sx = size.x as f32 / w * 2.0;
        let sy = size.y as f32 / h * 2.0;

        let tr_to_center = Matrix4::from_translation(Vector3::new(-0.5, 0.5, 0.));
        let tr_to_topleft = tr_to_center.invert().unwrap();
        let translation = Matrix4::from_translation(Vector3::new(tx, ty, 0.));
        let scale = Matrix4::from_nonuniform_scale(sx, sy, 1.);
        let rotation = Matrix4::from(Quaternion::from_angle_z(Rad::new(angle)));

        let matrix = translation * scale * tr_to_topleft * rotation * tr_to_center;

        let uniforms = uniform! {
            matrix: array4x4(matrix),
            tex: &self.texture,
            cur_frame_offset: (time / 0.100 /* frame time */).floor(),
            frame_count: self.frame_count as f32,
            transparency: transparency,
        };
        target.draw(&self.vertex_buffer, &self.index_buffer, &self.program, &uniforms, &self.params).unwrap();
    }
    pub fn size(&self) -> Vector2<f64> {
        Vector2::new(self.texture.get_width() as f64, self.height as f64)
    }
}

It iterates over all the frames and expands them to the same size, then concatenates them into one vertical texture atlas. cur_frame_offset is used to index that texture during rendering to get the current frame of the animation.
As you can see it assumes that the frame delay is always 10 because I was only dealing with those kind of GIFs but it could easily be generalized. The frame delay would have to be stored for each frame, and accumulated and then used for the cur_frame_offset uniform during rendering.
Also there are potentials for optimizations/preallocations..
But this is just a start to get the discussion going.
The animated GIF support in this crate shouldn't be specific to glium / opengl but should be designed with that in mind, so that rendering the animated GIFs as textures is easy.
Also it would be useful to be able to save an image sequence as an animated GIF with given frame delay.
What do you think?

As you noticed, this library does in fact support the loading of animated images since all frames are accessible. Furthermore it also allows to output animated images (with delay) as it is illustrated in the example code in the readme file.
Unfortunately the support is quite rough as it did not have any users. I'm very interested to get input for this topic. What exactly are you missing, what should be added?
Imho storing information about the current frames' timely offset doesn't make much sense because this information is deeply tied to the implementation of the presenter. If you would imagine an implementation which just sleeps for delay ms you would not need this information.

Does #33 cover your intention?

Right, it does support it but people who don't know about the specifics of the GIF format (e. g. that frames can have different sizes) and just want to load animated GIFs as an image sequence will take a long time to figure out how to load them like this.
I think the code that loads all the frames as RGBA image buffers of the same size will be part of every animated GIF loading system in user code so it would make sense to include this functionality in this crate.
re: frame delay, I meant that the output shouldn't just contain a Vec of image buffers but also each frame's relative delay to the frame before (so the user code can choose to integrate the frame delays or sleep etc.)
Also to be able to save a sequence of image buffers (with associated frame delays)  as animated GIF would be useful. (The inverse operation of the loading, where each frame is cropped to the bounding box of its non transparent pixels).

I totally agree to you on the image buffer thing. I’m currently reworking the existing image buffer from image in order to move it into it’s own crate such that it can be used in the decoder libs as well. I’m currently a bit stuck on how to handle color models properly.
Since the delay specifies the time until the next image is displayed I do not see how storing the time to the previous image would help.
I am still not convinced how equally sized buffers would always help, you could for example just blit the next frame onto the existing image/background color and you’re fine. On the other hand, the fact that your code ignores the disposal method convinces me that there should be a convenience method in addition to the "low level" interface.
Unfortunately it is not beneficial to implement the iterator trait such that a Vec of images can be provided via Iterator::collect since iterators cannot fail (i.e. use Result).

I think this issue can simply be solve by expanding the documentation.
@nwin

Furthermore it also allows to output animated images (with delay) as it is illustrated in the example code in the readme file.

Unfortunately, the doc does not give an example on how to make a multi frame gif with delays and disposal set for each frame. Maybe this is where the confusion of users stem from.
The from_rgba/from_rgb APIs are already good high level APIs for creating animated GIF with custom delays for each frame. It just needs an example code.

Thanks, I didn't even know I have to care about the disposal method.
I thought the frames would already be decoded to account for it...
Looking into it, it seems like it's easy to get the disposal wrong, (Netscape got it wrong).
So it would be useful to have an interface so that client code doesn't have to implement that but can just get the frames such that when they are rendered on a cleared background they look like the GIF.

@boscop Unfortunately nobody gets animated gifs right. Frames with a delay of zero are rendered incorrect in all browsers I know of.

I'm writing GIF converter and for it I need both raw frames with palettes, as well as RGBA rendering of all of it together.
Some sort of abstraction for gif's concept of "screen" would be very useful:
while let Some(frame) = reader.read_next_frame()? {
    screen.blit(frame);
    screen.rgba(); // -> &[RGBA]
}

In case anybody needs it, I've implemented it:
// Licensed under Apache 2.0
// (c) 2017 Kornel Lesiński
extern crate gif;
extern crate rgb; // rgb = "0.5.2"

use rgb::*;
use std::io;
use std::mem;
use std::error::Error;
use std::slice;

pub struct Screen {
    pub pixels: Vec<RGBA8>,
    previus_pixels: Option<Vec<RGBA8>>,
    pub width: usize,
    pub height: usize,
    pal: Option<Vec<RGBA8>>,
    bg_color: RGBA8,
    dispose: gif::DisposalMethod,
}

impl Screen {
    pub fn new<T: io::Read>(reader: &gif::Reader<T>) -> Self {
        let pal = reader.global_palette().map(|pal| {
            as_rgb(pal).iter().map(|c| c.alpha(255)).collect()
        });

        let pixels = reader.width() as usize * reader.height() as usize;
        let bg_color = if let (Some(bg_index), Some(pal)) = (reader.bg_color(), pal.as_ref()) {
            pal[bg_index]
        } else {
            RGBA8::new(0,0,0,0)
        };

        Screen {
            pixels: vec![bg_color; pixels],
            previus_pixels: None,
            width: reader.width() as usize,
            height: reader.height() as usize,
            pal: pal,
            bg_color: bg_color,
            dispose: gif::DisposalMethod::Keep,
        }
    }

    pub fn blit<'a>(&mut self, frame: &gif::Frame<'a>) -> Result<(), Box<Error>> {
        let local_pal : Option<Vec<_>> = frame.palette.as_ref().map(|pal| {
            as_rgb(pal).iter().map(|c| c.alpha(255)).collect()
        });
        let pal = local_pal.as_ref().or(self.pal.as_ref()).ok_or("the frame must have _some_ palette")?;

        use gif::DisposalMethod::*;
        match self.dispose {
            Background => for c in self.pixels.iter_mut() { *c = self.bg_color; },
            Previous => self.pixels = self.previus_pixels.take().ok_or("impossible disposal")?,
            Keep | Any => {},
        }

        self.dispose = frame.dispose;
        match frame.dispose {
            Previous => self.previus_pixels = Some(self.pixels.clone()),
            _ => {},
        }

        for src_row in 0 .. frame.height as usize {
            let dst_row = src_row + frame.top as usize;
            let src_width = frame.width as usize;

            let src_start = src_row * src_width;
            let dst_start = self.width * dst_row + frame.left as usize;

            let line_iter = self.pixels[dst_start .. dst_start + src_width].iter_mut().zip(frame.buffer[src_start .. src_start + src_width].iter());
            for (dst, &src) in line_iter {
                if let Some(transparent) = frame.transparent {
                    if src == transparent {
                        continue;
                    }
                }
                *dst = pal[src as usize];
            }
        }

        Ok(())
    }
}

fn as_rgb(pal: &[u8]) -> &[RGB8] {
    unsafe {
        slice::from_raw_parts(pal.as_ptr() as *const _, pal.len()/mem::size_of::<RGB8>())
    }
}

Usage:
    let mut screen = Screen::new(&reader);
    while let Some(frame) = reader.read_next_frame()? {
        screen.blit(&frame)?;
        // screen.pixels, screen.width, screen.height
    }

Thank you, but the third to last line is the reason why it is still is, as it is. It is really not trivial to create an ergonomic but safe abstraction.

Oh, that unsafe line was just a microoptimization. It was quite unnecessary, so I've removed it. Now it's 100% safe pure Rust.

That is not what I meant. It get’s quite tricky if you only want to define a shim over the underlying slice of primitives. Meaning not copying the data, which is what your code did before.
Something like color_model/mod.rs#L54 is really difficult to avoid, because you cannot abstract over ownership, mutability or integer numbers.

Sorry, I completely don't understand what you're saying.

Previous frame disposal more requires copying. I don't see any reasonable way around it, because by design of GIF, the screen is an accumulated mutable state. There are some optimizations possible (e.g. save and restore only frame area not the whole screen, maybe resize previous vec instead of reallocating), but in general it has to copy.
the frame has palette as [u8]. It could be used as-is by doing bytewise copy or R, G, B components. I only copy it for my convenience, and the copy is insignificantly tiny.

All I'm saying is, that I'm completely with you but it takes time to implement because I it is harder to create a wrapper than i thought.

Is there something I can help with?
I think the disposal code should live in the gif crate. What are your requirements for including it?

Any updates on this?


Question on installer script

Hi
Maybe this part:
https://github.com/Open-CMSIS-Pack/devtools/tree/main/tools/buildmgr/cbuildgen/installer
is deprecated, replaced by
https://github.com/Open-CMSIS-Pack/devtools/tree/main/tools/toolbox/installer
?
About default_path setting, maybe it could help user if script can detect  local settings:
ex:     compiler6_default_path=$(dirname "$(which armclang)")

I reviewed the current install script and found it a bit overwhelming. As background: we should work towards installers that are domain specific, for example https://github.com/microsoft/vcpkg
As we don't know today, how exactly this foundation tools will get integrated into third-party offerings, I would suggest a more pragmatic way for the setup:

provide ZIP files for Windows, Linux, Mac   (maybe there is a more clever way)
explain for each foundation tool document:

requirements (assumptions to the operating system).  Most tools are stand-alone, but some may require others i.e. Python
environment variables used (or other means of communication with the Host OS, i.e. registry)
usage: command-line parameters

I believe that the compiler path for example is only relevant for CMake, but not for cbuildgen or any other tool.

I just want to point out, that you can already today simply extract the content into a folder by running:
$ cmsis-toolbox.sh -x ./dumpdir

Note help: ./cmsis-toolbox.sh -h
But I do agree that we need to document the setup in all detail.
You are correct that the compiler path is only relevant when running CMake -> etc/AC<IP_ADDRESS>.cmake

cool - exactly what I wanted.


Search result highlight is yellow on green

could you please provide some information how you got that highlight? Like what type of search you used, how exactly I can reproduce this? I have styled most highlights already, so I assume it must be one that I have missed.


How to find out if all child node of parent node are selected in jstree ?

I am working on a jstree. Here is my sample code
var data1 = [{
"id":1,
"text":"C",
"size":"",
"date":"02/19/2010",
"children":[{
"id":2,
"text":"Program Files",
"size":"120 MB",
"date":"03/20/2010",
"children":[{
"id":21,
"text":"Java",
"size":"",
"date":"01/13/2010",
"state":"closed",
"children":[{
"id":211,
"text":"java.exe",
"size":"142 KB",
"date":"01/13/2010"
},{
"id":212,
"text":"jawt.dll",
"size":"5 KB",
"date":"01/13/2010"
}]
},{
"id":22,
"text":"MySQL",
"size":"",
"date":"01/13/2010",
"state":"closed",
"children":[{
"id":221,
"text":"my.ini",
"size":"10 KB",
"date":"02/26/2009"
},{
"id":222,
"text":"my-huge.ini",
"size":"5 KB",
"date":"02/26/2009"
},{
"id":223,
"text":"my-large.ini",
"size":"5 KB",
"date":"02/26/2009"
}]
}]
},{
"id":3,
"text":"eclipse",
"size":"",
"date":"01/20/2010",
"children":[{
"id":31,
"text":"eclipse.exe",
"size":"56 KB",
"date":"05/19/2009"
},{
"id":32,
"text":"eclipse.ini",
"size":"1 KB",
"date":"04/20/2010"
},{
"id":33,
"text":"notice.html",
"size":"7 KB",
"date":"03/17/2005"
}]
}]
},{
"id":4,
"text":"Grails",
"size":"",
"date":"02/19/2010",
"children":[{
"id":5,
"text":"Program Files",
"size":"120 MB",
"date":"03/20/2010",
"children":[{
"id":51,
"text":"groovy",
"size":"",
"date":"01/13/2010",
"state":"closed",
"children":[{
"id":511,
"text":"java.exe",
"size":"142 KB",
"date":"01/13/2010"
},{
"id":512,
"text":"jawt.dll",
"size":"5 KB",
"date":"01/13/2010"
}]
},{
"id":52,
"text":"MySQL",
"size":"",
"date":"01/13/2010",
"state":"closed",
"children":[{
"id":521,
"text":"my.ini",
"size":"10 KB",
"date":"02/26/2009"
},{
"id":522,
"text":"my-huge.ini",
"size":"5 KB",
"date":"02/26/2009"
},{
"id":523,
"text":"my-large.ini",
"size":"5 KB",
"date":"02/26/2009"
}]
}]
},{
"id":6,
"text":"eclipse",
"size":"",
"date":"01/20/2010",
"children":[{
"id":61,
"text":"eclipse.exe",
"size":"56 KB",
"date":"05/19/2009"
},{
"id":62,
"text":"eclipse.ini",
"size":"1 KB",
"date":"04/20/2010"
},{
"id":63,
"text":"notice.html",
"size":"7 KB",
"date":"03/17/2005"
}]
}]
}]
$('#data').jstree({
core: {
data: data1,
check_callback: false
},
checkbox: {
  whole_node : false,
  tie_selection : false
},
plugins: ['checkbox','search']

})
Now I want to find out that if all child node of a parent node is selected or not .
I am using this event.
$("#data").on('check_node.jstree.jstree', function(e, data) {   //some logic here });

@sunny-srivastava selected or checked? (these are two different things, both possible)

checked.

See example: http://jsfiddle.net/2kwkh2uL/4540/

This solution works fine when you are using 'changed.jstree' not when you are using 'check_node.jstree'.
As I have whole_node and tie_selection property set to false So I am performing some logic based on 'check_node.jstree.jstree' event. So, in that case, how should I checked that whether a child node os parent node is checked or not. Is it possible ?

I am performing some logic based on 'check_node.jstree.jstree' event.

I'm unaware of such an event in the JSTree official Documentation API:
https://www.jstree.com/api/

@sunny-srivastava the event to listen to is your choice - it depends on your needs, but remove the double .jstree event namespace. As for the task - you can use the get_node() method, and loop through the children array for that node and check if each of those node IDs is checked / selected.


Handle CentOS7 SELinux in enforcing mode

To avoid errors on non-centos systems this role now collects facts using
the setup module after the user name is known.
Also includes improvements using Ansible 2.x features:

Block removes a bunch of duplicated code (yay!)
"default(omit)" in the adding/removing of users removes more duplicated lines
(thanks for the tip Johan)
Remove old '>' syntax from some tasks

Ooh blocks! Ooh omits!
Is that package installed already on other redhat family level 7 distributions? If not I'd like to change that to ansible_os_family instead.

Good suggestion. Changed.

Thanks for the PR!
The travis testing produces identical passwd and group files after this change.


[Metal] [MacOS] [NativeAOT] [x64] Metal backend is unstable on macOS x64 NativeAOT trimmed build

Disclaimer
I know that metal backend is not stable, experimental, and not production ready. I don't require any fix for this.
Describe the bug
We've recently moved to NativeAOT. Almost all things are perfect except receiving tons of feedback from our users that app is hanging after 30-60 seconds of work on macOS x64 machines.
Debugging this was a nightmare, because we did not have x64 mac, and debugging should be performed only after nativeAOT publish.
After some days of work we know for 95% accuracy - disabling metal backend resolves the issue.
Analyzing callstacks on hang actually did not provide us any useful information. Founding that metal is the issue - was pure luck, because previously it worked awesome in the all scenarios for our app.
To Reproduce
Steps to reproduce the behavior:
Publish nativeAOT app into osx-x64 arch with metal backend enabled and run it on it for some time.
Temporary fix
Disable metal backend for x64 arch on macOS only

So, it cannot be reproduced on silicon m1 macOS with nativeAOT and metal? Just to confirm that it's not a trimming issue, since we use some reflection (that should be safe) to call some APIs.

Since we are multitargeting .NET 8 now, we can probably use UnsafeAccessor instead of that reflection piece when targeting net8.0+

But I doubt that it's a trimming issue, since the app works for 30 seconds before freezing

After deep user testing we've found that issue is not caused by metal. Looks like it's an nativeAOT related issue only on x64 macos build. Not a trimming issue, because all works without nativeAOT and with trimming enabled.


Get clarity around who is doing log management, us or OIT

Even if a view of the logs is not MVP, we should determine soon who will manage the logging. ie, will Mediaflux logs be searchable on datadog? Who will configure that, if so?

Log management on the Mediaflux servers should, in my view, be handled by OIT/Research Computing. If we would like to add or revise a particular log, or make a particular log searchable via our tools of choice, then I recommend we frame that as a request to our colleagues who handle the day-to-day operation of the systems.

Out of scope for RDSS.


Newest peft update breaks load_from_checkpoint

https://github.com/huggingface/peft/issues/285
Still trying to sort out how to proceed on my own branch, but I figured I'd bring it up here too, since it'll invalidate the codebase, and maybe more eyes will help.

Ref issue as both are related to same core cause. Frankly, this peft/transformer breakage in the last 2-7 days has been a disaster for llama adopters. The entire chain of the llama code/training process in all projects is either broken or no longer forward/cross compatible with the forthcoming stable 4.28 transformer release.
https://github.com/tloen/alpaca-lora/issues/298


Add STATE_AUTO support to generic_thermostat

Description:
I reeeaaally don't know if this is the right way to do this. And I've never ever developed anything with python. But it solved my issue.. 😅
If this is totally wrong pls close this pr right away.. :D
Siri will put the state to AUTO if you say "turn on my ac", but the generic thermostat doesn't support STATE_AUTO, so it will take the command and switch to STATE_HEAT or STATE_COOL (ac mode).
Related issue (if applicable): fixes #
Pull request in home-assistant.github.io with documentation (if applicable): home-assistant/home-assistant.github.io#5916
Example entry for configuration.yaml (if applicable):
sensor:
  - platform: rest
    resource: http://<IP_ADDRESS>/api/xxxxxxxxxxxxxxxxxxxxxx/sensors/10
    value_template: '{{ value_json.state.temperature | float / 100 }}'
    unit_of_measurement: °C
    name: 'Living Room Temperature'

switch:
  - platform: broadlink
    host: !secret ip_broadlink
    mac: !secret mac_broadlink
    timeout: 2
    switches:
      ac:
        friendly_name: "Klimaanlage"
        command_on: 'JgBIAAABKJMUEBETFBARNxETExERNxETFBARExMREjYRNxEUExARExM2ExASEhMRExESExMQETcTNRM2EzUTEBITFBAREhMSEwANBQ=='
        command_off: 'JgBIAAABL5UWEBYRFhAWMxgQFhEWNBQTFhAWERYRFTUWNBYQFhEWERY0FBIWERYRFRIVNRQSFhEWNBUSFTQWNRYQFRIVNRYQFQANBQ=='

climate:
  - platform: generic_thermostat
    name: Klimaanlage
    heater: switch.ac
    target_sensor: sensor.living_room_temperature
    min_temp: 18
    max_temp: 27
    ac_mode: True
    away_temp: 29

homekit:
  filter:
    include_domains:
      - climate

Checklist:

[X] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass

If user exposed functionality or configuration variables are added/changed:

[x] Documentation added/updated in home-assistant.github.io

I don't think we should add "fake" modes to allow better 3rd party service integration.
We should decide what we mean with STATE_AUTO. Does it mean that the device uses a sensor to switch between heating and cooling on its own? Or does it mean that the device is either heating or cooling depending on another fixed setting? I think we should use the former definition.
So in my opinion this PR breaks both of those terms. A better solution would be to add a real auto mode. I don't know how feasable that would be for the generic thermostat.
The climate component is under review. These things will hopefully be more clear once that review and redesign is done.
https://github.com/home-assistant/architecture/issues/22

You should change the title to "Add STATE_AUTO support to generic_thermostat". Nothing related with Siri.
I would say as long as you have a concrete definition of what STATE_AUTO means to generic_thermostat platform, and document it well, it is fine to add it.

I mean

Documentation added/updated in home-assistant.github.io

You're completely right. I read over 'support'.. Sorry
I opened the PR for the documentation: https://github.com/home-assistant/home-assistant.io/pull/5898

Why did we merge? There was no consensus among members yet.

@MartinHjelmare I opened a revert PR, feel free to merge it if you still have concern about this PR.

I think we should revert it.
As @MartinHjelmare said, if we add state auto it should be real auto mode, and not just a hack to make another component work.

Reverted.

I don’t want to defend me or something.. It’s your project :D
But what would an auto mode do? The component decides automatically between heat/cool and idle based on the target temperature and the sensor in STATE_HEAT/STATE_COOL already so what would be the point in an extra auto mode?
And this isn’t only for „one“ other component. It can be used in automations, the Alexa component works, the HomeKit component works and others, too I think :)

The current platform never switches between heat and cool mode on its own.
For the moment a platform should only expose the modes it can actually support. When the review of the climate component is done, we might take a second look.

This PR still has a documentation PR open.
Since it was revered, may I assume the documentation PR can be closed? Or is it getting back in a different way?

Since the current definition of STATE_AUTO can not physically do justice with the generic_thermostat, I think that will not come back

Thanks, @niklaswa 👍


Night CI 2023-07-24: Failed

action url: https://github.com/spidernet-io/egressgateway/actions/runs/5632470396

rerun to debug


create brew-services extension

Description
Adds an extension to manage brew services.
redo of #68

[x] view brew services
[x] start, stop, restart, and run a brew service
[x] show in finder/copy plist file path
[x] show when a brew service doesn't run successfully
[x] automatically detects brew installation location (can choose a custom location in preferences)
[ ] run services that require sudo
[x] has a good icon
[x] shows error when there are no services
[x] shows error when brew is not installed

Type of change

New extension

Screencast
https://user-images.githubusercontent.com/72744903/137605006-c87de13e-46d8-4c71-a44d-11c75a63c9cb.mp4
Checklist

[x] I read the documentation about publishing

Added the brew icon. Taken from the brew repo

I'd like for some more people to test this extension before it gets merged. I'm not sure that it will always work.

After doing some testing by myself, I think it is works fine. Ready to merge! @mattisssa


feat: trace https proxy request

Signed-off-by: Jim Ma<EMAIL_ADDRESS>
Description
Trace https proxy request
Related Issue

Motivation and Context

Screenshots (if appropriate):
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Documentation Update (if none of the other choices apply)

Checklist:

[ ] Code compiles correctly.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document.
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Codecov Report

Merging #996 (e82bd4e) into main (3afbbd0) will decrease coverage by 0.02%.
The diff coverage is 60.86%.

@@            Coverage Diff             @@
##             main     #996      +/-   ##
==========================================
- Coverage   46.05%   46.02%   -0.03%
==========================================
  Files         130      130
  Lines        9074     9092      +18
==========================================
+ Hits         4179     4185       +6
- Misses       4433     4440       +7
- Partials      462      467       +5

Flag
Coverage Δ

Object-compatibility-e2etests
?

e2etests
?

unittests
46.02% <60.86%> (-0.03%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

client/daemon/proxy/proxy.go
9.77% <0.00%> (-0.04%)
:arrow_down:

client/daemon/peer/peertask_conductor.go
57.09% <52.94%> (-0.13%)
:arrow_down:

client/daemon/peer/peertask_manager.go
41.89% <100.00%> (+0.79%)
:arrow_up:

client/daemon/transport/transport.go
59.48% <100.00%> (+0.71%)
:arrow_up:

pkg/sync/kmutex.go
83.33% <0.00%> (-16.67%)
:arrow_down:

pkg/sync/krwmutex.go
81.81% <0.00%> (-4.55%)
:arrow_down:

client/daemon/peer/piece_broker.go
81.48% <0.00%> (-3.71%)
:arrow_down:


Rename msbot export and clone commands

Current
Proposed

msbot export
msbot export services

msbot clone
msbot import services

I think import doesn't seem right, as it implies it will pull it into existing resource group/services, where clone was a bout creating all new resources.
What about
msbot provision services
msbot create services
??

Let's do msbot export services and msbot clone services instead.


Add resync period for agent watches

Type of change

Bugfix

Description
This adds periodic resync intervals to agent watches similar to what
exists for other controller processes.
On watch error, abort current request and reconnect.
Issue #3542
Checklist

[ ] Update/write design documentation in ./documentation/design
[ ] Write tests and make sure they pass
[ ] Update documentation
[ ] Check RBAC rights for Kubernetes / OpenShift roles
[ ] Try your changes from Pod inside your Kubernetes and OpenShift cluster, not just locally
[ ] Reference relevant issue(s) and close them after merging
[ ] Update CHANGELOG.md

@enmasse-ci run tests profile=smoke

:heavy_exclamation_mark: Build Failed :heavy_exclamation_mark:

@enmasse-ci run tests profile=shared

:heavy_check_mark: Test Summary :heavy_check_mark:
TEST_PROFILE: shared
TEST_CASE:
TOTAL: 140
PASS: 128
FAIL: 0
SKIP: 12

@enmasse-ci run tests profile=isolated

:heavy_check_mark: Test Summary :heavy_check_mark:
TEST_PROFILE: isolated
TEST_CASE:
TOTAL: 92
PASS: 86
FAIL: 0
SKIP: 6


Add notification during bundle builds

Wiring up a simple notification via Slack integration webhook to keep the team abreast of the builds.

Related Issue

#211

Signed-off-by: Peter Nied<EMAIL_ADDRESS>Check List

[X] Commits are signed per the DCO using --signoff

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Can this notification include the branch/version that was built?


fix: nuxtServerInit not working with nuxt-vite

Hi, it looks like nuxtServerInit ain't working when nuxt-vite and nuxt-typed-vuex are both in buildModules.
Here's a simple reproduction https://github.com/mirabledictu/test-vuex-vite
I have a simple console log there
export const actions = {
    nuxtServerInit(_context) {
        // This will not log if nuxt-typed-vuex is added to buildModules
        console.log('works')
    }
}

and in my nuxt.config.js
  buildModules: [
    // https://go.nuxtjs.dev/typescript
    '@nuxt/typescript-build',
    'nuxt-vite',
    'nuxt-typed-vuex',
  ],

  vite: {
    ssr: true
  }
}

When you try to run it, you will not get any logs from server.
Try to remove nuxt-vite or nuxt-typed-vuex in buildModules and it will work.

How odd. Note that there are known issues with ssr in nuxt-vite.

How odd. Note that there are known issues with ssr in nuxt-vite.

Noted on that

not only ssr mode ,but also csr mode . Not work with vite


Remove code duplication TODO in OnchainPrivacyPrecompiledContract

Remove code duplication TODO in OnchainPrivacyPrecompiledContract
Search for any others and remove.

Hey, I'm a beginner. Can you please tell me how to get started with these?

hi @anipaul2 - are you still interested in picking this one up?

Hi @anipaul2 sorry I missed your comment here. There is some info on this wiki page about how to get started https://wiki.hyperledger.org/display/BESU/First+contribution - and then join the conversation over in Besu chat if you get stuck https://chat.hyperledger.org/channel/besu :)

Yeah I'm interested

Hi @anipaul2 sorry I missed your comment here. There is some info on this wiki page about how to get started https://wiki.hyperledger.org/display/BESU/First+contribution - and then join the conversation over in Besu chat if you get stuck https://chat.hyperledger.org/channel/besu :)

Thanks @macfarla I'll look into it.


Balance shows only one Company

Describe the bug
On the Balance table a currency is shown to have only one Company also if it has records on different companies.
To Reproduce
n/a
Expected behavior
When a currency has an amount on multiple Companies, the Companies table must show all the Companies.
Screenshots

Connected to BE task https://github.com/alex-piccione/portfolio-API-AWS/issues/68

Solved correcting the BE.
It inrtroduced another issue: 504 (Gateway timeout).


fix: Fix coercion of i64 keys in map

This adds coercion for map keys when initializing a struct (for thrift-server).
Previously thrift files which defined a struct containing a map who's keys are i64s would generate invalid typescript.  The args would contain a map with keys of type number | thrift.Int64, and would attempt to set values on a Map<thrift.Int64, {valueType}>.
Having object keys in maps for a scalar type is not ideal, but I think this fix is a good interim solution.  In the long run it would be awesome if i64s could be represented as BigInts now that they are supported in an LTS version of node.

Thanks @hayes these are much appreciated. We definitely have BigInts in our future plans.

@hayes Both of your PRs are released in 3.0.2

thanks!


Only one email per processing complete message

Share a queue bound to the "processing.complete" topic among all instances so that only one instance takes the message and sends emails about it. Otherwise, we send as many copies of the email as there are instances!
Pivotal story

Great. LGTM.


koordlet: revise cgroup update err when unsupported or path not exist

Ⅰ. Describe what this PR does

Revise the error handling when the cgroup resource update fails because the cgroup is unsupported or the file does not exist.

Ⅱ. Does this pull request fix one issue?

Ⅲ. Describe how to verify it
Ⅳ. Special notes for reviews
V. Checklist

[x] I have written necessary docs and comments
[x] I have added necessary unit tests and integration tests
[x] All checks passed in make test

/lgtm
/approve


chore(deps): update cas client version to 3.5.0

Checklist

[x] the individual contributor license agreement is signed
[x] commit message follows commit guidelines

Description of change

Once we merge this PR, we should look at removing the RequestParameterPolicyEnforcementFilter.

Heads up -- I'm no longer sure that the RequestParameterPolicyEnforcementFilter is the cause of the issue with deep-linking.  We should merge this PR, then continue to investigate.  @jonathanmtran


fix switching types from strings to others

Codecov Report

Merging #17 into master will increase coverage by 0.19%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master      #17      +/-   ##
==========================================
+ Coverage   76.12%   76.32%   +0.19%
==========================================
  Files           4        4
  Lines         976      980       +4
==========================================
+ Hits          743      748       +5
+ Misses        233      232       -1

Impacted Files
Coverage Δ

src/TableReader.jl
90% <100%> (+0.52%)
:arrow_up:

Continue to review full report at Codecov.

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


[WIP][SPARK-20029][ML] ML LinearRegression supports bound constrained optimization.

What changes were proposed in this pull request?
MLlib LinearRegression should support bound constrained optimization. Users can add bound constraints to coefficients to make the solver produce solution in the specified range.
Under the hood, we call breeze L-BFGS-B as the solver for bound constrained optimization. And we only support L2 regularization currently.
How was this patch tested?
Unit tests.

Test build #74876 has started for PR 17360 at commit aa7e768.

Test build #74876 has finished for PR 17360 at commit aa7e768.

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

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/SparkPullRequestBuilder/74876/
Test PASSed.

I don't think this is the best approach. We're further confounding the algorithm API with parameters of the optimizer used to fit the algorithm.
I strongly prefer to put more effort into getting this right via SPARK-17136. For what it's worth, I have an initial PR basically ready that provides an API that makes adding this functionality trivial.

Test build #74979 has started for PR 17360 at commit 5af16cb.

Test build #74979 has finished for PR 17360 at commit 5af16cb.

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

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

Merged build finished. Test PASSed.

@sethah I left some questions on SPARK-17136. I think the main question we should figure out is whether we still expose the optimizer params as the estimator params after SPARK-17136. I'm more prefer to keep these params in estimators, make the optimizer layer as an internal API, and users can register their own optimizer implementation such as the data source support. Since I found this is more aligned with the original ML pipeline design which stores params outside a pipeline component.
So I think this PR is not conflict with SPARK-17136 and can work parallel. I'm also open to hear your thoughts. Thanks!

@yanboliang Thanks for your feedback! The design of the optimizer interface, or even whether it should be included at all, is definitely open for discussion and your suggestions are much appreciated. If SPARK-17136 proceeds as you suggest (internal optimization API that allows users to register optimizers) then it is possible that this PR does not conflict with that JIRA (though I don't know about the details of that, so even that I'm not sure of). However, that matter is far from settled. If we end up deciding to provide the external optimizer API as is currently suggested in that JIRA, then these two do conflict. If we add the ability to specify parameter bounds on the estimator, then add an optimizer API, we have added yet more optimizer parameters to the estimator that can conflict with parameters of the optimizer provided to the estimator.
My point is that I think these are two competing approaches and we should settle on one over the other before we make API changes that cannot be undone. I'm open to potentially changing the design of SPARK-17136, but we need to decide on something first.

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/testing-k8s-prb-make-spark-distribution-unified/4225/
Test PASSed.

Test build #97747 has started for PR 17360 at commit 5af16cb.

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/testing-k8s-prb-make-spark-distribution-unified/4251/
Test PASSed.

Test build #97754 has started for PR 17360 at commit 5af16cb.

Test build #97747 has finished for PR 17360 at commit 5af16cb.

This patch fails Spark unit tests.
This patch does not merge cleanly.
This patch adds no public classes.

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/SparkPullRequestBuilder/97747/
Test FAILed.

Test build #97754 has finished for PR 17360 at commit 5af16cb.

This patch fails Spark unit tests.
This patch does not merge cleanly.
This patch adds no public classes.

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/SparkPullRequestBuilder/97754/
Test FAILed.

Test build #97789 has started for PR 17360 at commit 5af16cb.

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/testing-k8s-prb-make-spark-distribution-unified/4268/
Test PASSed.

Test build #97789 has finished for PR 17360 at commit 5af16cb.

This patch fails build dependency tests.
This patch does not merge cleanly.
This patch adds no public classes.

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/SparkPullRequestBuilder/97789/
Test FAILed.

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/SparkPullRequestBuilder-K8s/15806/
Test PASSed.


[Feature] Sqoop component optimization

Is your feature request related to a problem? Please describe.
dev branch sqoop task need to enhancment.
optimization points:
Sqoop's data access and data export do not support Hadoop-level custom parameters, that is, -D level parameters
– MR task name
– MR map and reduce memory and quantity, etc.
• Split-by field is not supported. If -m is greater than 1, if the primary key of the relational database table is not self-increasing, Sqoop It may cause duplicate data imported into Hadoop. The general solution is to specify a split-by field. therefore, split-by needs support
• Cannot customize parameters, such as import mysql, some tables can add –direct to speed up the import speed
Describe the solution you'd like
ideas:
• The task name of Sqoop is universal, and it must be changed to the required parameter on the Sqoop page
• Add Hadoop custom parameter input box for setting MR parameter memory, etc.
• Add Sqoop task-level custom parameters, like –driect, –fetch-size and other parameters used in specific situations
• Add option button to choose, custom script or use template script, refer to the design of DataX node

The suggestion is very good. At present, the Sqoop node type does only support data import and export, and other Sqoop commands do not support it. But according to my understanding, the person in charge of the Sqoop class node may not want to open the function of custom parameters, because this is more difficult to verify.
The above is just my understanding. I hope @zixi0825 can give us your opinions. Thank you.

The solution is good. When I designed, I thought that the graphical interface can meet the needs of simple and fast use. It is better to use custom scripts to support custom parameters. Custom scripts I think can be implemented with shell scripts, so they are not added to the sqoop task type.

merge into dev, close


Unused markers in the scrollbar area are drawn over the arrows and not redrawn on resize

Unused markers are erroneously drawn over the full range of the scroll bar, including the up and down arrow:

Additionally, their range is not recomputed when resizing the window, so they end up being drawn completely at the wrong place. For example this is what I got when shrinking the above window:

Thanks for reporting the bug. I will have a look.


Last Update wrong on timed out / offline sensor

Home Assistant OS 5.12, core-2021.3.0.

ZNDMWG02LM, lumi.sen_ill.mgl01 GZCGQ01LM

Gateway online, lumi sensor offline for 2 hours.

Sensor Last Update (I'm right?) shows as on Gateway, but not sensor.

Component load last value from gate. Also load online state. But sensor don't send anything yet.

Sensor state on XG3 - OFFLINE. No data last 2 hours.
But in HA sensor state NOT Unavailable, and last state = 34 minutes.
Not match.

Checked Mi Home log for that sensor:
13:59 Light intensity is: 3 Lux <- sensor battery was removed
~ 16:05 - Mi Home show sensor as offline
? May be XG3 sent this information to HA, but status not updated, sensor in HA still ONLINE.
16:46 Light intensity is: 7 Lux <- battery inserted back
When screenshot taken - there is no data FROM sensor for 2+ hours.
Maybe gateway sent information ABOUT sensor status, but IMHO:

information ABOUT sensor (status?) not same as information FROM sensor.

IMHO.

Minor issue, no need to spend time on it. IMHO. Thank You for developing such a usefull add-on.


docs: increase contrast in home CTA and search

Addresses the issue #76
Changed contrast color for both CTA and search placeholder texts.

Before
After

Passes the lighthouse test:

I think this PR goes a bit too far.

To improve the contrast of the CTA, I'll tweak the shade of pink being used instead.
The search placeholder now no longer looks like a Placeholder.

Could you revert the CTA change, and choose a medium color for the placeholder?


Add attribute to allow client visible server name to be set separately from the VIP

Add attribute to allow client visible server name to be set separately from the VIP
https://github.com/chef/omnibus-pushy/issues/69
A push client needs to be able to reach the backend VIP to connect to the push jobs server. This
causes trouble in some network topologies. This is unlike any other part of chef server; everything
else goes through nginx on the front end nodes, but zeromq can't do that.
The server can advertise to clients a different name to use, but this was defaulted to the backend
VIP, which may not be routable from the clients. Making this independently settable lets the user
choose a name or ip that is routable, perhaps via a firewall rule.
This adds an default attribute ['pushy']['opscode-pushy-server']['server_name_for_client'] to allow
access to the server feature.

omg yes please.


Popup is empty after reload

Enable: Preserve on reload
Open the Group popup in Components screen and press Browser reload
Before:

After:

I'm not sure if you server doesn't send changes or if it's a client problem?

The menu expands if you close the "Gruppen" popup - why not before?

response is complete:

Did this always happen for you? I can't reproduce it

Yes, always


Refactor signature relatability

This PR is an attempt to remove duplicated code brought in by #6075.
It is still a work in progress, since there has been a small regression in error reporting.
@sandersn and @JsonFreeman, you two might want to take a look.

I tried reverting the order of source/target on parameters to recover the lost error elaborations. Unfortunately, that introduces a bug in which for the following:
function foo<T extends "foo">(f: (x: T) => T) {
    return f;
}

let f = foo((y: "foo" | "bar") => y === "foo" ? y : "foo")

We report
    let f = foo((y: "foo" | "bar") => y === "foo" ? y : "foo");
                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
!!! error TS2345: Argument of type '(y: "foo" | "bar") => string' is not assignable to parameter of type '(x: "foo") => "foo"'.
!!! error TS2345:   Type 'string' is not assignable to type '"foo"'.
!!! error TS2345:     Type '"foo" | "bar"' is not assignable to type '"foo"'.
!!! error TS2345:       Type '"bar"' is not assignable to type '"foo"'.

Which is

An elaboration of the source parameter type being unassignable to the target one (see the bottom two messages)
An elaboration on the source return type being unassignable to that of the target. This is because compareTypes succeeded in assignability of the target parameter type to the source parameter type, and we're still using the same elaboration stack.

I'd rather not introduce a callback to revert the elaboration stack between calls to compareTypes, so I think I'm going to try to find a way to make the current code work.

Hey @sandersn and @JsonFreeman any other feedback? I think I've improved error baselines by elaborating in most cases except for primitives. I've also simplified the code by eliminating that elaborateErrors variable.

Looks good to me. But as I said, I'm sick, so make sure @JsonFreeman or future-me (the not-sick one) okays it too.

Reviewed the error baselines in detail and it's a great improvement. I'm not as familiar with this part of the signature checking code so I'd defer to someone else on that front -- there was nothing obvious wrong about it, though.


Taking into account select option

Part of the options in tanstack query is the select property.
We were in the process of moving towards using query-key-factory, however we ran into typing issues since this property isn't being taken into account. Essentially, if select is defined, the ReturnType of select should be used instead of the return type of queryFn. We're using select in order to have cache hits even though data is transformed in different matters for differing use cases.
Example:
const items = createQueryKeys('items', {
    list: {
        queryFn: api.getListOfItems<ItemResponse>(),
        select: (response): MappedType => response.map(someThingThatChangesTheType),
    },
});

The expectation here would be that when using useQuery(items.list) the data property would be of type MappedType. Instead we found it's still `ItemResponse.
If I can get some pointers, I can also attempt a PR myself in order to clean up the types.

@ruudandriessen thanks for bringing this to my attention, I've release v1.3.2 that should block select and any other foreign keys from being added

@ruudandriessen thanks for bringing this to my attention, I've release v1.3.2 that should block select and any other foreign keys from being added

Great! Thanks for the quick response and clarifications @lukemorales 😄


mixer e2e TestRateLimit fails on postsubmit

Two consecutive e2e runs (for both rbac-auth and rbac-no_auth) failed for the same reason. Could be a flake, but suspecting this is a consistent test failure. The failed test was mixer's TestRateLimit, and the error message was like
I1213 04:55:35.403] --- FAIL: TestRateLimit (173.46s)
I1213 04:55:35.403] 	mixer_test.go:469: Establishing metrics baseline for test...
I1213 04:55:35.403] 	mixer_test.go:471: prometheus query: istio_request_count{destination_service="ratings.mixer-test-51660f11c07f4e9ba25d7c32ec.svc.cluster.local"}
I1213 04:55:35.403] 	mixer_test.go:479: error getting prior 429s, using 0 as value (msg: value not found for map[string]string{"response_code":"429"})
I1213 04:55:35.403] 	mixer_test.go:488: Baseline established: prior200s = 1.000000, prior429s = 0.000000
I1213 04:55:35.403] 	mixer_test.go:490: Sending traffic...
I1213 04:55:35.404] 	mixer_test.go:519: Fortio Summary: 600 reqs (9.964231 rps, 600.000000 200s (9.964231 rps), 0 400s)
I1213 04:55:35.404] 	mixer_test.go:531: Expected Totals: 200s: 60.000000 (0.996423 rps), 429s: 540.000000 (8.967808 rps)
I1213 04:55:35.404] 	mixer_test.go:542: prometheus query: istio_request_count{destination_service="ratings.mixer-test-51660f

(from https://k8s-gubernator.appspot.com/build/istio-prow/e2e-suite-rbac-no_auth/195/)
This started from https://github.com/istio/istio/commit/ebadf857d1b633744e5d17bde5fe5f5207691a42, and I am not sure if proxy update can cause errors like this.

I am working on the fix.  Hope this PR will fix it
https://github.com/istio/istio/pull/2117

Seems still broken after #2117. Is https://github.com/istio/istio/pull/2130 also necessary?

Yes.

Still failed even after #2130? (see https://k8s-gubernator.appspot.com/build/istio-prow/e2e-suite-rbac-auth/205/ and https://k8s-gubernator.appspot.com/build/istio-prow/e2e-suite-rbac-no_auth/205/)

Seems fixed now. Thank you!


[API Authorization][M2M][Improvement] Access token management if the API Authorization changes

Describe the issue:
Currently when can acquire access token to access Management/Organization APIs via M2M application API Authorization procedure. Once we acquire the access token, there can be changes in the API Authorization configuration.
If so, we need to think how we honor previously issued access token.

Mail: [API Access Mgt] Access token management on Application API Authorization and API resource modification/deletion


Update scala-reflect to 2.12.14

Updates org.scala-lang:scala-reflect from 2.12.12 to 2.12.14.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Files still referring to the old version number
The following files still refer to the old version number (2.12.12).
You might want to review and update them manually.
doc/docs/cli-overview.md

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "org.scala-lang", artifactId = "scala-reflect" } ]

labels: library-update, semver-patch, old-version-remains

Seems we're already on 2.12.17.


pip package of lightrag is out of date v0.10-beta.6 does not export LightRAG

I think you need to rerun the pypi packages, when I did a pip install lightrag-hkd I get an old package. Looking at your init.py up there I see:
__version__ = "0.1.0-beta.6"

And no exports, you might want to fix. I haven't tried the local usage, but nice to have pypi package :-)

Thank you very much for your attention! It seems the issue occurred because pip install lightrag-hkd was used instead of the correct lightrag-hku. There's also a deprecated project on PyPI called LightRAG, which might have caused further confusion.


Adding project link

please give the Gssoc label. I loved your repo.

mention the issue no?

closing the issue as it completed earlier #966


Trouble implementing oauth authorization via GET

This is my implementation of the Khan Academy Api. Acording to https://github.com/Khan/khan-api/tree/master/examples/php_test_client the signature needs to have no authorization url because Khan Academy skips that step.
(ns khan.api
  (:require [oauth.client :as oauth]
            [oauth.signature :as sig]
            [clj-http.client :as http]))

(def consumer-key "B9nyR6w6NbLRzbQr")
(def consumer-secret "pUQFGKGebZVhEuCA")

(def consumer (oauth/make-consumer consumer-key
                                   consumer-secret
                                   "https://www.khanacademy.org/api/auth/request_token"
                                   "https://www.khanacademy.org/api/auth/access_token"
                                   "https://www.khanacademy.org/api/auth/authorization"
                                   :hmac-sha1))

(def noauth   (oauth/make-consumer consumer-key
                                   consumer-secret
                                   "https://www.khanacademy.org/api/auth/request_token"
                                   ""
                                   "https://www.khanacademy.org/api/auth/authorization"
                                   :hmac-sha1))

(defn build-oauth-token-request
  "Used to build actual OAuth request."
  ([consumer uri unsigned-oauth-params]
   (let [signature (sig/sign consumer
                             (sig/base-string "GET" uri unsigned-oauth-params))
         oauth-params (assoc unsigned-oauth-params :oauth_signature signature)]
     (oauth/build-request oauth-params))))

(defn request-token
  "Fetch request token for the consumer."
  ([consumer noauth callback-uri]
   (let [unsigned-params (-> (sig/oauth-params consumer
                                               (sig/rand-str 30)
                                               (sig/msecs->secs (System/currentTimeMillis)))
                             (assoc :oauth_callback callback-uri))]
     {:status 200
      :headers {"Content-Type" "text/html"}
      :body (:body (http/get (:request-uri consumer)
                             (build-oauth-token-request noauth
                                                        (:request-uri consumer)
                                                        unsigned-params)))})))

And this is the server that hosts it. I'm having trouble with redirecting to the login callback, I have no idea why khan academy sends me to the default callback. My (probably incorrect) understanding is that upon successful authentication and having provided a callback, the khan academy server sends a GET or POST request to the callback server. I'm using compojure destructuring on "/login/:params" and I was expecting the webpage to print the query params of the GET request. I'm clueless right now.
(ns khan.web
  (:require [compojure.core :refer [defroutes GET PUT POST DELETE ANY]]
            [compojure.handler :refer [site]]
            [compojure.route :as route]
            [clojure.java.io :as io]
            [ring.adapter.jetty :as jetty]
            [environ.core :refer [env]]
            [khan.api :as khan]))

(defn khan-api []
  (khan/request-token khan/consumer khan/noauth "http://localhost:5000/login/"))

(defroutes app
  (GET "/" []
       (khan-api))
  (POST "/login/:params" [params]
       (str params))
  (ANY "*" []
       (route/not-found (slurp (io/resource "404.html")))))

(defn -main [& [port]]
  (let [port (Integer. (or port (env :port) 5000))]
    (jetty/run-jetty (site #'app) {:port port :join? false})))

Have you checked that the request map result from build-oauth-token-request contains the oauth_callback parameter? I see the Khan Academy documentation states they respect the auth_callback param, but I'd also recommend looking at whatever "developer profile" page they may have which may let you specify a default callback to use for your application. Twitter used to (still does?) do that.
I'm not sure why you need the noauth consumer without the access URI. That URI is only used when requesting the access token and doesn't affect other requests (e.g., obtaining a request token).

I removed the noauth consumer. They don't have a developer profile. I have a few ideas I'm going to study their php client, it has the :oauth_callback param but it's written in php and it's really ugly. Their python client is of no use because it requires you to copy the request-token manually from the url.
I cleaned up the request-token to return a ring response map that opens a new browser tab. But still no callback.
(defn request-token
  "Fetch request token for the consumer."
  ([consumer callback-uri]
   (let [unsigned-params (-> (sig/oauth-params consumer
                                               (sig/rand-str 30)
                                               (sig/msecs->secs (System/currentTimeMillis)))
                             (assoc :oauth_callback callback-uri))
         request (http/get (:request-uri consumer)
                           (build-oauth-token-request consumer
                                                      (:request-uri consumer)
                                                      unsigned-params))]
     {:status 200
      :content {"Content-Type" "text/html"}
      :body (str "Login")})))

This is from the ka_academy.php file:
/*
* Initial login handler (accessed by specifying login=1). Unlike most OAuth
* APIs, the KA API skips the "authorize" step, and instead guides the user
* through the login process directly from /api/auth/request_token . That
* endpoint redirects to a login page, which redirects back to a
* loginCallback of our choosing. Since this is a different flow from what
* the OAuth library expects, we need to have oauth-php sign the request
* without submitting it (since it's expecting to directly get a token
* back), then redirect the user to the resulting URL.
*/

I finally got it.
Here instead of creating an authorization header to issue a get request, I just used your sig/url-form-encode function.
(defn build-oauth-token-request
  "Used to build actual OAuth request."
  ([consumer uri unsigned-oauth-params]
   (let [signature (sig/sign consumer
                             (sig/base-string "GET" uri unsigned-oauth-params))
         oauth-params (assoc unsigned-oauth-params :oauth_signature signature)]
     (sig/url-form-encode oauth-params))))

And here I made a html link to the url constructed with the token params and lo an behold the server redirected me.
(defn request-token-handler
  "Fetch request token for the consumer."
  ([consumer callback-uri]
   (let [unsigned-params (-> (sig/oauth-params consumer
                                               (sig/rand-str 30)
                                               (sig/msecs->secs (System/currentTimeMillis)))
                             (assoc :oauth_callback callback-uri))
         request-params  (build-oauth-token-request consumer
                                                    (:request-uri consumer)
                                                    unsigned-params)]
     {:status 200
      :headers {"Content-Type" "text/html"}
      :body (str "Login")})))

Now it's just a matter of destructuring the query string, Compojure will take care of it. Thanks.


Enhance error message

When Remote PowerShell fails to connect due to credential error etc, currently, it shows error with internal PowerShell commands etc.  It confuses user.
This PR is to show some generic error message.

Codecov Report

Merging #730 into master will decrease coverage by 0.01%.
The diff coverage is 0%.

@@            Coverage Diff            @@
##           master    #730      +/-   ##
=========================================
- Coverage    9.67%   9.66%   -0.02%
=========================================
  Files         469     469
  Lines       11405   11420      +15
=========================================
  Hits         1104    1104
- Misses      10301   10316      +15

Impacted Files
Coverage Δ

...achDebuggerDialog/AttachDebuggerWindowViewModel.cs
0% <ø> (ø)
:arrow_up:

...udExtension.PowerShellUtils/RemoteToolInstaller.cs
0% <0%> (ø)
:arrow_up:

...erShellUtils/PowerShellFailedToConnectException.cs
0% <0%> (ø)

...ttachDebuggerDialog/AttachDebuggerSettingsStore.cs
0% <0%> (ø)
:arrow_up:

...AttachDebuggerDialog/AttachDebuggerFirewallPort.cs
0% <0%> (ø)
:arrow_up:

...uggerDialog/InstallStartRemoteToolStepViewModel.cs
0% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

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

PTAL.


to_past turned "going" to "goinged"

Awesome library! Messing around and found this one:
const nlp = require("nlp_compromise");
const s = nlp.statement('This is what is going on.').to_past().text();
console.log(s);

It logged "This was what was goinged on". I expected "This was what was going on."

Wouldn’t it be more correct to say This is what was going on.?

Good question; it's kind of ambiguous. I could be totally wrong here. I think it's pluperfect past, or maybe past perfect progressive? Could be totally wrong.
"This is what was going on" is a certain kind of past tense. "This was what was going on" is another. They both express different things, so... I'm not sure if we know which the user wants when they invoke to_past.

this is a great example. it's certainly a task that seems straightforward until you start doing it ;)
i'll take a look

hey david and Alfonso! just getting back to this issue. This stuff matured a bit in v7, and this example behaves properly now:
https://runkit.com/583f2a3dc534df0014136221/58c826c2adbd8f00147ac4f7
but lots of bugs to find in there yet! Keep em coming!
thanks


Changed dash migration warning text

i18n-check

The following components have not been translated
component.dialog-copy-entry.view (ru)component.dialog-copy-entry.view (en)

Wait for the reviewers to check your changes in Weblate and try running github action again.


added support for Permission Sets

Fix #70

Hi, Can You please increment the version for the provider in GNUMAKEFILE and examples? With every commit to main, we also need to publish a new version to the Terraform repo so it is essential that the versioning is also taken care of with every PR. Also, can You please comment if Data sources for permission sets are needed or Not?

Still in progress

Can You please also increment the version in GNUMAKEFILE? With every merge to the main branch, it is required that we also create a new release so it is essential that the versioning is also done with the changes. Please also comment if the data sources are not supported with permission sets or if they are supported and not required right now.

@mavericknavs we added the support for the Permission Set data source.
Regarding the version, we planned to release the new version of the provider which will include a set of changes and not only one. So when will be decided to release the new version we will update the version in relevant PR


Permission base contract

Three levels of permissions:

Admin - can give permissions to others. Only 1 admin.
Operator - for example, set prices in reserve manager. Can have multiple operators.
Alerter - for example, stop trade in token if he thinks something is wrong. Can have multiple alerter.

Requirements:

Admin is transferable. With acceptOwnership function.
Modifier for onlyAdmin, onlyOperator and onlyAlerter.
getOperators and getAlerters functions. Implement with naive array.

should we consider optional description strings per alerters and operators?

@ilanDoron we should also make a pure interface for this. To avoid multiple inheritance issues.
I.e., only the main contract should inherit from this contract, and the rest should inherent only from the interface.

what do you consider the main contract?


KAFKA-8245: Fix Flaky Test DeleteConsumerGroupsTest#testDeleteCmdAllGroups (#8032)

…roups (#8032)
Change unit tests to make sure the consumer group is in Stable state (i.e. consumers have completed joining the group)
(cherry picked from commit 413db69d41f22b10295782e38890cb0077d6e21c)
More detailed description of your change,
if necessary. The PR title and PR message become
the squashed commit message, so use a separate
comment to ping reviewers.
Summary of testing strategy (including rationale)
for the feature or bug fix. Unit and/or integration
tests are expected for any behaviour change and
system tests should be considered for larger changes.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

Any reason why we're not making this change in Apache Kafka?

It looks like the build failed previously but I can't see the results anymore, not sure what happened there?

Nevermind, it looks like a flaky Streams test. I'll submit a ticket for it

One test failure:
14:23:21  org.apache.kafka.streams.KafkaStreamsTest > testStateThreadClose FAILED
14:23:21      java.lang.AssertionError: Condition not met within timeout 10000. Thread never stopped.
14:23:21          at org.apache.kafka.test.TestUtils.waitForCondition(TestUtils.java:278)
14:23:21          at org.apache.kafka.streams.KafkaStreamsTest.testStateThreadClose(KafkaStreamsTest.java:204)

@ableegoldman is filing a ticket to track flakiness. However I need this PR to be in AK first. Going to move it there.

AK PR: https://github.com/apache/kafka/pull/8234
Exactly same change as this PR (actually copied the test file from this PR to AK)

We merged the change in AK. Closing.


Error trying to start my xampp after adding the sql driver v5.8 my php is version 7.47

the procedure entry point_zval_ptr_dtor could not be located in the dynamic link library

Hi @genyagbo it sounds like there may be an installation or configuration issue here.  What operating system are you using and how did you install the driver?

Any update, @genyagbo ?

Closing this due to inactivity. Please feel free to ask us to reopen this issue, @genyagbo.


test: External memory FD

Actually two apps. One app acts as exporter, exporting memory to an opaque fd containing data about its color render target, while the other app acts as importer. The exporter waits for the importer to connect via UNIX domain socket and then it sends the opaque fd. The importer connects to the exporter and retrieves the fd to use for importing memory.

CI gfxreconstruct build queued with queue ID 327801.

CI gfxreconstruct build queued with queue ID 327819.

CI gfxreconstruct build # 5614 failed.


Create a demo for DaskDeviceQuantileDMatrix

DaskDeviceQuantileDMatrix is a nice feature to ingest GPU Dask partitions without making any copy. We should have a demo.
I'd like to get the word out about the native Dask API of XGBoost, and DaskDeviceQuantileDMatrix is one of its best features.

I will do that today.

Now that I look at it, it's possible we can do it more efficiently and accurately by improving the initial construction of summary.

Can we put up a small demo first?

Yup.


[TUTORIAL] Using NERSC for DESC

Tutorial on Using NERSC for DESC
Overview and opportunity for more in-depth discussion about using NERSC resources for DESC work!
Please feel free to comment below and offer suggested topics we should focus on.
Contacts: Heather Kelly
Time: [Morning] 8a-9 PT / 5p-6 CET
Main communication channel: #desc-sprint-feb2024-nersc
GitHub repo: N/A
In-person/Virtual/Hybrid: Virtual
Zoom room (if applicable): DESC 1
Goals and deliverable
Goal is to provide a good starting place for getting started with NERSC and provide useful information particularly on using NERSC for DESC activities.
Resources and skills needed
No skills required.  Having a NERSC account is recommended.
Detailed description

Tutorial recording, link to recording is on the #desc-sprint-feb2024-nersc channel