Force DocumentParserInput type to be string

Somehow we are still getting None's passed to the pipeline trigger in production. This adds type coercion to the actual model.
Proposed version
Please select the option below that is most relevant from the list below. This
will be used to generate the next tag version name during auto-tagging.

[ ] Skip auto-tagging
[x] Patch
[ ] Minor version
[ ] Major version

Visit the Semver website to understand the
difference between MAJOR, MINOR, and PATCH versions.
Notes:

If none of these options are selected, auto-tagging will fail
Where multiple options are selected, the most senior option ticked will be
used -- e.g. Major > Minor > Patch
If you are selecting the version in the list above using the textbox, make
sure your selected option is marked [x] with no spaces in between the
brackets and the x

Type of change
Please select the option(s) below that are most relevant:

[ ] Bug fix
[ ] New feature
[ ] Breaking change
[ ] GitHub workflow update
[ ] Documentation update
[ ] Refactor legacy code
[ ] Dependency update

How Has This Been Tested?
Please describe the tests that you added to verify your changes.
Reviewer Checklist

[ ] The PR represents a single feature (small driveby fixes are also ok)
[ ] The PR includes tests that are sufficient for the level of risk
[ ] The code is sufficiently commented, particularly in hard-to-understand areas
[ ] Any required documentation updates have been made
[ ] Any TODOs added are captured in future tickets
[ ] No FIXMEs remain

At this point of the day though, this fix will get us going again so feel free to ignore.

Yeah, I'm for sure in favour of us consolidating our pydantic models, theres a lot of duplication between the sdk and backend. I'm also in favour of doing one thing at a time and that is whats winning in this instance 😛


python311Packages.platformdirs: 4.2.0 -> 4.2.1

Description of changes
Changelog: https://github.com/platformdirs/platformdirs/releases/tag/4.2.1
cc @fabaff

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Sorry, this would need to target staging.


parser: support window function grammar

This PR supports window function grammar. It comes from https://github.com/pingcap/tidb/pull/4928
PTAL @zz-jason @lzmhhh123 @winoros

LGTM


 As far as I can see, this could be easily fixed in this library by allowing other durations in the withDuration() method (for the builder).
public StyleableToast.Builder withDuration(int duration) {
    if(duration == 1 || duration == 0) {
        this.length = duration;
    }

    return this;
}

Its not possible to extend the life of a toast since it is a build in boolean flag. it can either be short or long.
A another idea would be to create a completely new Toast from scratch that has nothing to do with the Toast class itself in android. But this library builds on the existing Toast


Transfer state of genesis block

To be able to replay transactions from Ethereum testnets the genesis block state has to be transferred to the NEAR EVM.

See also https://github.com/aurora-is-near/aurora-engine/issues/1

Has been implemented, closing the issue.


Updated dependencies to GA versions of the CDK

/azp run net - provisioning - compute - ci

manually triggered ci job


[BUG] why is the vocab_size of MiniCPM-V-2_6 not the same as Qwen2-7B?

是否已有关于该错误的issue或讨论？ | Is there an existing issue / discussion for this?

[X] 我已经搜索过已有的issues和讨论 | I have searched the existing issues / discussions

该问题是否在FAQ中有解答？ | Is there an existing answer for this in FAQ?

[X] 我已经搜索过FAQ | I have searched FAQ

当前行为 | Current Behavior
vocab_size of MiniCPM-V-2_6: 151666
vocab_size of Qwen2-7B: 152064
期望行为 | Expected Behavior
No response
复现方法 | Steps To Reproduce
No response
运行环境 | Environment
- OS:
- Python:
- Transformers:
- PyTorch:
- CUDA (`python -c 'import torch; print(torch.version.cuda)'`):

备注 | Anything else?
No response

hello，the language model of MinicpmV2.6 is qwen2-7b

Vocab_size of Qwen2-7B in its config.json is wrong. Actual vocab_size of Qwen2-7B is 151646. MiniCPM-V-2_6 has 20 larger vocab_size 151666 which makes sense.


Disable flutter_service_worker.js file for web projects

Not all web projects require service worker. eg Chrome and Firefox extensions, electron apps etc.
In such situations it is best to disable the default flutter_service_worker.js file.
For example Chrome, Firefox extensions require their own specialized service worker like scripts called background scripts.
Such scripts currently can't be generated using the flutter build web command, so an option must be added to generate custom scripts that act as service worker scripts, I have opened a separate issue for this FR:
https://github.com/flutter/flutter/issues/74221
An option to disable flutter_service_worker.js to flutter build web will be great.

@p554157atch
jonahwilliams-macbookpro2% flutter build web -h
Build a web application bundle.

[...]

    --pwa-strategy                   The caching strategy to be used by the PWA service worker.
                                     offline-first will attempt to cache the app shell eagerly and then lazily cache all subsequent assets as they are loaded. When making a network request for an asset,
                                     the offline cache will be preferred.
                                     none will generate a service worker with no body. This is useful for local testing or in cases where the service worker caching functionality is not desirable
                                     [offline-first (default), none]

Run "flutter help" to see global options.

@p554157atch
jonahwilliams-macbookpro2% flutter build web -h
Build a web application bundle.

[...]

    --pwa-strategy                   The caching strategy to be used by the PWA service worker.
                                     offline-first will attempt to cache the app shell eagerly and then lazily cache all subsequent assets as they are loaded. When making a network request for an asset,
                                     the offline cache will be preferred.
                                     none will generate a service worker with no body. This is useful for local testing or in cases where the service worker caching functionality is not desirable
                                     [offline-first (default), none]

Run "flutter help" to see global options.

I ran following command:
flutter build web -t lib/main.dart --pwa-strategy=none

After that flutter_service_worker.js is created but this file has no content.
This is acceptable solution for me but I would still like to run rm flutter_service_worker.js.
Feel free to close this issue.

I ran following command:
flutter build web -t lib/main.dart --pwa-strategy=none

After that flutter_service_worker.js is created but this file has no content.
This is acceptable solution for me but I would still like to run rm flutter_service_worker.js.
Feel free to close this issue.


Feature/typescript async metadata

Issue #, if available:
Description of changes:
Add metadata.json file for TypeScript async sample.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Wait a second, this doesn't seem right - too many changes showing. I'm going to pull it down.


Menu option

this is a feature that shows the menu tool kit on the company goals page

#560 @abiona01


Chef-Browser support?

I don't know if you are aware of the Chef-Browser Project [1] but this is a very nice and simple web frontend for the official chef-server and thus should also work with goiardi. Maybe someone could do a quick test of this with goiardi and if it works some small documentation (mainly that it exists and that it is an alternative to the old official frontend) would be nice.
They also provide a docker container [2] which for sure would be easiest way to get everything running.
[1] https://github.com/3ofcoins/chef-browser
[2] https://quay.io/repository/3ofcoins/chef-browser

I was not aware, but I'll be taking a look at that this weekend. Thanks for the heads up; I imagine it would work fine with goiardi, certainly.

I just took it for a spin, and it most assuredly does work with goiardi (and looks pretty nice, too). I have to document some other stuff anyway, so I'll stick that in there as well. Thanks!

I've added a mention and link to chef-browser in the documentation in the branch that's going to be the next goiardi release pretty soon here. Thanks again for the heads up.


gitea dashboard show empty repositories

Gitea version (or commit ref): 1.14.2
Git version: git version 2.27.0
Operating system: CentOS Linux release 8.3.2011

Database (use [x]):

[ ] PostgreSQL
[x] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[x] No

Log gist:

Description

...
operation

create empty repositories  in dashboard
push project to repositories main branch through ssh
dashboard show that repositories code emtpy
confirm repositories actually is not emtpy in server(i can still clone through ssh)

Screenshots

dashbord warehouse web page show empty

i can still actually clone through ssh

Gitea's hook must not be running.
The usual reason for this is that you have your repositories on a noexec partition. That will not work.
The second most common reason is that you are pushing not using a gitea controlled SSH key. If you SSH to your gitea box using the key and username that you push with - you must not be able to get a shell. If you can you are not pushing with a gitea controlled key.
The third most common reason is that your hooks are out of date or can't communicate to gitea. There is an admin task to resynchronize hooks and you could show your app.ini here and full debug logs around the time of pushing.

This is an extremely common issue please review old closed issues regarding this.

i found it , it's because my app.ini file wrong config

i found it , it's because my app.ini file wrong config


Implement 2D vector graphics draw command

Closes https://github.com/godotengine/godot-proposals/issues/2924
Adds a draw_filled_curve method to CanvasItem, as well as a few methods used in its implementation. Supports cubic beziers, elliptical arcs, and, optionally, order-5 beziers (for easy C2 continuity).
Maintains smoothness at any level of zoom or curvature.

I support this as someone who assisted with adding thorvg vector graphics to godot engine.
Don't see anything obviously wrong, but didn't review.

The Bentley-Ottmann implementation here is still imperfect. Various mathematical invariants the algorithm depends on simply do not apply in floating point. I'm testing various ways to mitigate issues stemming from rounding errors. If I don't get a satisfactory result, I might test an implementation based on fixed point instead.

Remember godot has a 64.64 fixed point in the thirdparty misc folder

Okay, I achieved all that can be done using floating points. This implementation is guaranteed to execute in finite time with no assertion failures 100% of the time, and give a correct result 99.999% of the time. Short of using fixed point, and a whole bunch of tricks to handle every tiny edge case, this is the best that can be achieved.

Okay, I have a slight dilemma. After a lot of effort, I was able to make an implementation based on fixed point that's 100% fool-proof. But I'm hesitating to push it because it's noticeably slower. By an order of magnitude. There are a few points that could maybe be made faster. But it's not certain that the gap can be reasonably closed.
The question becomes: Is it better to have a solution that works 99% of the time and is fast, or should I make the effort to optimize the solution that works 100% of the time, but may not run as fast?

@clayjohn
Here's the visual issue in the old version. It stems from failing to find an intersection with an edge of the form (x, y+a)-(x+b, y) where a,b>0 and b/a is too small to be represented as float:
vector_visualbug.webm
Missing the intersection causes it to get the shape wrong. A "wrong" shape will still use the same original points, but have different triangles filled. There may be other set-ups that cause similar issues due to floating points being rounded in some direction, but this is the one that I could create consistently.
Here's the same shape in the new version. The same visual bug can't be created:
vector_no_visualbug.webm
Now for a performance comparison. Performance heavily depends on the complexity of the objects, so I used a few scenes for testing.
Here's the old version:
vector_performance_old.webm
And here's the new one after the first round of optimizations:
vector_performance_new.webm
There's still more room to optimize, but the new version will never be as fast or faster than the old one. At best, it will reach the point of a small slowdown.
Of course, my desktop PC might not be the best representation for performance. And I also didn't jump through the hoops of trying to build other exports to see how much performance is harmed on web or mobile (in which the low memory footprint of vector should give the most advantage over raster).
For the time being, I uploaded the fixed point version to a new fork, so anyone can test both versions:
https://github.com/SlugFiller/godot/tree/curve-2d-draw-fill-fixed-point
The easiest way to test this PR without needing to mess with code is using my SVG import plugin:
https://github.com/SlugFiller/godot-vector2d

Also, I'm noticing there's been a trivial conflict introduced since I pushed this PR. Should I rebase? Now that I've put the new version in a separate branch, I can rebase the old version more easily.

I'd lean towards the one that performs better but has 99% accuracy, from a practical standpoint. You could add code to draw_filled_curve that detects when the numerical error scenario occurs, and offsets the numbers slightly before passing to the shader to avoid it.  The performance drop looks really bad with the new version.
I have a question about p_types, how are you allowing it to define holes? Like using Z to separate subpaths in SVG. Or is that not coded at the moment?

I created a project to benchmark what I consider "typical usage" of vector graphics. It doesn't have tweening/skeleton, but the performance of those would be independent of the PR anyway. The important part is that it's game-like, and has a game-like object count and update rate:
CloverFever.zip
I've also made an improved version using fixed-point. It still has some areas that can be improved, but the optimization surface is dwindling. I clocked the various options on my (relatively powerful) machine, and got the following:

Bunny count
Floating point
Fixed point original
Fixed point optimized

0
60
60
60

10
60
60
60

20
60
57
59

30
60
40
40

40
60
28
30

50
60
25
24

60
56
20
20

70
48
17
17

80
40
15
15

90
36
13
13

100
33
12
12

110
30
11
11

120
27
10
10

130
25
9
9

140
24
8
8

150
21
8
8

160
20
8
7

170
20
7
7

180
18
7
6

190
17
6
6

200
15
6
6

210
15
5
6

220
15
5
6

230
15
5
5

240
14
4
5

250
13
4
5

260
12
4
5

270
12
4
4

280
12
4
4

290
11
4
4

300
10
3
4

I'll try to do a similar benchmark in HTML5, to see how a "professional implementation" compares. Setting aside how much slower the fixed point solution is, the fact that none of the options are able to handle more than a few dozen bunnies before facing a frame drop, even on a desktop computer, is somewhat alarming.
@Giwayume p_types is just a bitfield for choosing between beziers and arcs. It's used for making perfect arcs, e.g. for drawing a circle, ellipse, or rectangle with rounded corners.
To make a multi-path (Z or M) simply put multiple vector arrays in p_points. It's an array of point arrays. Each point array is a single closed shape. So you make one point array for the contour, one for the hole, and then put both of them in a single array of point arrays.
Note that since this draws a filled curve, each shape is assumed to be closed, i.e. there's no notion of an "open shape". Every M is also a Z.

the fact that none of the options are able to handle more than a few dozen bunnies before facing a frame drop, even on a desktop computer, is somewhat alarming

Hmm, I still think this effort is useful for things like path morphing, specifically because it can be mixed with other techniques that perform better for static assets.
I did have another question, any way you can think this could be combined with custom shaders, as opposed to just being able to render a raster texture? For example, COLOR would have the shape alpha already stored in its vec4 so you could use a vector path like a mask over drawing any effect you like. Without this, certain things like drawing radial gradients with sharp stops could look bad with a low res raster texture, whereas it could be implemented perfectly in shader code.

@Giwayume There's no issue putting a shader on a canvas item that uses draw_filled_curve. The actual drawing is done like any other 2D mesh. A fragment shader can be used to apply color effects to any pixel inside the shape. And anti-aliasing (e.g. MSAA) can be applied via global/viewport settings as well.
If you want to use it as a mask, setting "clip children" on the containing canvas item would do the trick.
You can look at the SVG import plugin I linked above, and import an SVG with gradients, to see how linear and radial gradients are implemented via a shader.

I finally managed to create a fixed point (well, big rational, technically) solution that outperforms the floating point one. It cleverly uses the added accuracy to reduce the edge cases, and cleanly resolve the remaining ones.
To simply the math and prevent overflow, the fixed point numbers used are 20 bits. The floating points are normalized to the largest exponent, in the canvas item's local space. So, while rounding errors may occur if the vector is far from the origin of the canvas item (the canvas item can be as far from the origin of the scene/camera as desired, however), from largest detail to smallest, it gives roughly the accuracy of a sprite that's about one million by one million pixels. Put differently, a full-screen sprite at 4k can be magnified 25,000% without being even a single pixel off.
I've also tested the performance of equivalent drawing using HTML5 canvas on Brave. While the canvas version is not perfectly minimal, I doubt sub-optimal JS is any more of a bottleneck than GDScript. The Brave version also ran at slightly lower, but roughly similar resolution, although it's impossible to tell if Brave subdivides to the same accuracy. Nevertheless, my version managed to outperform the browser, meaning it's as fast as would be standard for this sort of graphics.
Here are the final benchmark results:

Bunny count
Floating point
Brave
Final

0
60
60
60

10
60
60
60

20
60
60
60

30
60
60
60

40
60
58
60

50
60
45
60

60
56
40
60

70
48
35
54

80
40
30
46

90
36
28
42

100
33
25
38

110
30
23
33

120
27
21
31

130
25
19
29

140
24
17
26

150
21
16
24

160
20
15
23

170
20
14
22

180
18
14
20

190
17
13
19

200
15
13
18

210
15
11
17

220
15
11
16

230
15
11
16

240
14
10
15

250
13
10
15

260
12
9
13

270
12
9
13

280
12
9
13

290
11
8
12

300
10
8
12

Since the biggest bottleneck is CPU, and the algorithm is running on a single core, performance can be increased by using a worker pool to divide the work to multiple cores. However, this would potentially take away resources from other services (physics, navigation), so I'm leaving this as a possible future improvement.
At any rate, this PR is now merge-ready. It has reached perfect correctness without sacrificing performance.

Fixed comment formatting

Any update on this? Given the great, hard work that has been put on this, it would be a shame not to integrate it.

It's been rejected in a rendering meeting a few months ago. Here are a few reasons:

It's CPU-bound, which matches current browser capabilities, but doesn't match modern GPU-based techniques. Notably, it's only capable of rendering a handful of paths before performance drops. Compare with Pathfinder and Vello which use shader-based sorting and sum-of-prefixes, or Rive which uses stencil/PLS for winding count.
Godot does not currently support vector graphics first-party. Adding such support would create performance and long-term maintenance expectations among users who would expect it to work on-par with a dedicated vector graphics game engine.
It could be possible to implement this as a plugin if hooks are added to the 2D renderer, and/or if drawable textures are used for allowing generic shader math, and/or if stencil operations or PLS are made available for 2D meshes. A combination of the above could make for a much more performant solution.

So, there are currently no plans to merge this, and alternative features are mostly in long-term planning status.


Update LocationLayerPlugin README v0.5.0

Whoops @danesfeder. Made an equivalent pr, forgetting that you'd already opened this 😄

#452


ci: pin upgrade source commit

Fixes #N/A
Description
Pins the upgrade source commit to #6269. This removes the cloudwatch agent and fixes the upgrade suite when running on EKS 1.30.
How was this change tested?
N/A
Does this change impact docs?

[ ] Yes, PR includes docs updates
[ ] Yes, issue opened: #
[x] No

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.02%) to 82.565%

Totals

Change from base Build<PHONE_NUMBER>:
0.02%

Covered Lines:
5550

Relevant Lines:
6722

💛  - Coveralls


changed the bucket ACL from Bucket owner preferred to Bucket owner enforced

Fixes #
When a service account pushes the API schema, it controls the schema file and owner account can not read the file to merge the API.
So changing to owner enforced so the owner account will get the access to all the files written to bucket

You've also added 2 examples, which are not described in description. Is it intentional to example in the same MR?

You've also added 2 examples, which are not described in description. Is it intentional to example in the same MR?

Anybway to pick only src changes ?
Examples changes were for internal testing.


feat: enable using a directory as an ad-hoc TM repository

feat: enable using a directory as an ad-hoc TM repository
fix(fetch): search in all repositories when multiple remotes configured

closes #46

Nice work. LGTM.


Fixed #25073 -- The field "content_type" in model Permission has no translation

Please send your pull request against master. Also, why not also fix the other instances you mentioned in the ticket?


Could not set the layout when using ".$mount('#app')" in app.js

When using
new Vue({
  router,
  store,
  vuetify,
  render: h => h(App)
}).$mount('#app')

in the app.js file, it does not set the layout.

It looks like all you've done is to replace the i18n plugin with vuetify, as well as changing the way the App component is rendered.
Why not use the following instead?
new Vue({
  store,
  router,
  vuetify,
  ...App
})```

Note: Make sure you remove all other references to i18n, otherwise you'll cause errors elsewhere in the project.

If this doesn't help, posting more details like error messages, screenshots, etc would be helpful.

With this method, themes do not work. For example, "primary", etc.

The layouts supplied with this repo are "basic" and "default", and your code fragment from app.js is totally different to the one in the equivelent from this repo.  See: https://github.com/cretueusebiu/laravel-vue-spa/blob/5fffeee89d9e5aa78cd626f4e8ef7c4e2781d487/resources/js/app.js#L12
Are you sure we're talking about the same project?  If so, maybe a complete non-working code sample?

Sorry. I'am update vuetify 2.0.
In documentation vuetify 2.0:
new Vue({   router,   store,   vuetify,   render: h => h(App) }).$mount('#app')

The application does not have time to complete initialization and vue router does not know about setLayout functions.

This project does not use Vuetify.
Our setLayout function is part of the App component, and you've changed the way the app component is loaded/rendered with the change above.  I've never used Vuetify, but try the following:
new Vue({
  i18n,
  store,
  router,
  vuetify,
  ...App
})

Which is adding Vuetify to the code that we know works instead of replacing it with something completely different.  If you try that and you're having problems, I'd suggest you try Stack Overflow, or one of Vuetify's support resources.

I was having the same issue. You should keep using ...App, but had to add

This project does not use Vuetify.
Our setLayout function is part of the App component, and you've changed the way the app component is loaded/rendered with the change above. I've never used Vuetify, but try the following:
new Vue({
  i18n,
  store,
  router,
  vuetify,
  ...App
})

Which is adding Vuetify to the code that we know works instead of replacing it with something completely different. If you try that and you're having problems, I'd suggest you try Stack Overflow, or one of Vuetify's support resources.

Can confirm ...App does work as expected with Vuetify (both v1 and v2).


Add support for evcxr (Rust Jupyter kernel)

This requires implementing a method called evcxr_display which returns HTML.
See: https://github.com/google/evcxr/blob/master/evcxr_jupyter/README.md#custom-output

My guess is if we return an SVG and wrap it in a HTML file, that would work?

@zacps Also, would you please give me some instructions on how to use evcxr with Jupyter.
I just tried the page, it shows compile errors even with the sample on that page.

Could you paste the error?
What jupyter and rust toolchain version you're using would also be helpful..

use std::fmt::Debug;

pub struct Matrix<T> {pub values: Vec<T>, pub row_size: usize}

impl<T: Debug> Matrix<T> {

    pub fn evcxr_display(&self) {

        let mut html = String::new();

        html.push_str("
");

        for r in 0..(self.values.len() / self.row_size) {

            html.push_str("
");

            for c in 0..self.row_size {

                html.push_str("");

                html.push_str(&format!("{:?}", self.values[r * self.row_size + c]));

                html.push_str("	");

            }

            html.push_str("
");

        }

        html.push_str("
");

        println!("EVCXR_BEGIN_CONTENT text/html\n{}\nEVCXR_END_CONTENT", html);

    }

}

let m = Matrix {values: vec![1,2,3,4,5,6,7,8,9], row_size: 3};

m

Compilation failed, but no parsable errors were found. STDERR:
   Compiling user_code_1 v1.0.0 (/tmp/.tmpndVY1C/user_code_1)
error[E0308]: mismatched types
  --> src/lib.rs:21:60
   |
21 | evcxr_variable_store.put_variable::<String>(stringify!(m), m);
   |                                                            ^ expected struct `std::string::String`, found struct `user_code_0::Matrix`
   |
   = note: expected type `std::string::String`
              found type `user_code_0::Matrix<{integer}>`

error[E0277]: the trait bound `user_code_0::Matrix<{integer}>: std::marker::Copy` is not satisfied
  --> src/lib.rs:22:22
   |
22 | evcxr_variable_store.assert_copy_type(m);
   |                      ^^^^^^^^^^^^^^^^ the trait `std::marker::Copy` is not implemented for `user_code_0::Matrix<{integer}>`

error: aborting due to 2 previous errors

Some errors have detailed explanations: E0277, E0308.
For more information about an error, try `rustc --explain E0277`.
error: Could not compile `user_code_1`.

To learn more, run the command again with --verbose.

STDOUT:

The Rust version is
$ rustc --version
rustc 1.37.0-nightly (37d001e4d 2019-05-29)

I can reproduce, it seems to be broken on nightly.
Works for me on stable (rustup default stable).

:dep plotters = { git = "https://github.com/38/plotters", default_features = false, features = ["svg"] }
extern crate plotters;
use plotters::prelude::*;

let mut buffer = vec![];
{
    let root = SVGBackend::with_buffer(&mut buffer, (640,480)).into_drawing_area();

    root.fill(&White);
    let mut chart = ChartBuilder::on(&root)
        .caption("y=x^2", &("Arial", 50).into_font())
        .margin(5)
        .x_label_area_size(30)
        .y_label_area_size(30)
        .build_ranged(-1f32..1f32, -1f32..1f32).unwrap();

    chart.configure_mesh().draw();

    chart.draw_series(LineSeries::new(
        (-50..=50).map(|x| x as f32 / 50.0).map(|x| (x, x * x * x)),
        &Red,
    )).unwrap()
        .label("y = x^2")
        .legend(|(x,y)| Path::new(vec![(x,y), (x + 20,y)], &Red));

    chart.configure_series_labels()
        .background_style(&White.mix(0.8))
        .border_style(&Black)
        .draw();
}

pub struct ShowPlot(pub Vec<u8>);

impl ShowPlot {
    pub fn evcxr_display(&self) {
        let svg = String::from_utf8_lossy(self.0.as_slice());
        println!("EVCXR_BEGIN_CONTENT text/html\n<svg>{}</svg>\nEVCXR_END_CONTENT", svg);
    }
}

let a = ShowPlot(buffer);
a

You should be able to use this. But some work needs to be done to make it easier to write


Many Errors

Hi. i follow all your examples step by step and

First div is not reconized by React
Second. i quit div but it error show me undefined is not an object (evaluating 'window.navigator.userAgent.match')

Thanks in advance

I have just updated the latest version (@1.0.4)
Could you please try using it? Thanks!

Close this issue, which was probably fixed in version @1.0.4


move-spuser windows claims example needed

@tseward pointed out this comment could be applied, with some refinement:

If your site uses CLAIMS based authentication you MUST include the i:0#.w| when referencing usernames and enclose in quotes
Also - at least on our site - you CANNOT use -Identity "DOMAIN\USERNAME"
-Identity requires an SPUser object.
Here is the CORRECT method - again, at least what works for us:
$user = Get-SPUser -web siteurl "i:0#.w|domain\username"
Move-SPUser -Identity $user -NewAlias "i:0#.w|domain\username" -IgnoreSID

Thanks @tseward and @tomresing  for opening this issue and providing this feedback to make the docs better. @Techwriter40 - do you know who we could confirm to put this in as an example to the *-SPUser cmdlets?

Hi @kenwith, I forgot to mention that @tseward agreed to update and test the script and submit as a pull request.

That would be awesome! I will look for the pull request. For quick start guide be sure to check README. Thanks!

PR #222 submitted for this.

Closing as fixed with #222.


ENT-4288 Teach Tom to update dependency table

Thanks for submitting a PR! Maybe @olehermanse can review this?


Add sample for adding storage static website (with deployment script)

Contributing a Pull Request
If you haven't already, read the full contribution guide. The guide may have changed since the last time you read it, so please double-check.
Contributing to documentation

[ ] The contribution does not exist in any of the docs in either the root of the docs directory or the specs

Contributing an example

[X] I have checked that there is not an equivalent example already submitted
[X] I have resolved all warnings and errors shown by the Bicep VS Code extension
[X] I have checked that all tests are passing by running dotnet test
[X] I have consistent casing for all of my identifiers and am using camelCasing unless I have a justification to use another casing style

Contributing a feature

[ ] I have opened a new issue for the proposal, or commented on an existing one, and ensured that the bicep maintainers are good with the design of the feature being implemented
[ ] I have included "Fixes #{issue_number}" in the PR description, so GitHub can link to the issue and close it when the PR is merged
[ ] I have appropriate test coverage of my new feature

@alex-frankel It looks like the CLI build is failing because it's got a newer way of emitting the template than the CLI version I'm using (0.2.328 (a13b032755)).
How would you like to handle this?

I would get the nightly build of at least the CLI installed (https://github.com/Azure/bicep/blob/main/docs/installing-nightly.md) and then if you pull the latest from main in your bicep fork, you should be able to run dotnet test locally.

Codecov Report

Merging #1442 (9e84de3) into main (4fc0f23) will increase coverage by 0.35%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main    #1442      +/-   ##
==========================================
+ Coverage   94.77%   95.12%   +0.35%
==========================================
  Files         351      348       -3
  Lines       18398    18377      -21
  Branches       14        0      -14
==========================================
+ Hits        17436    17482      +46
+ Misses        962      895      -67

Flag
Coverage Δ

dotnet
95.12% <ø> (-0.15%)
:arrow_down:

typescript
?

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

Impacted Files
Coverage Δ

src/Bicep.Core/TypeSystem/Az/TenantScopeType.cs
60.00% <0.00%> (-20.00%)
:arrow_down:

.../Bicep.Core/TypeSystem/Az/SubscriptionScopeType.cs
80.00% <0.00%> (-20.00%)
:arrow_down:

...Bicep.Core/TypeSystem/Az/ResourceGroupScopeType.cs
80.00% <0.00%> (-20.00%)
:arrow_down:

...cep.Core/TypeSystem/Az/ManagementGroupScopeType.cs
80.00% <0.00%> (-20.00%)
:arrow_down:

.../Bicep.Core.UnitTests/Assertions/BaselineHelper.cs
63.63% <0.00%> (-15.91%)
:arrow_down:

src/Bicep.Core/TypeSystem/ModuleType.cs
87.50% <0.00%> (-12.50%)
:arrow_down:

src/Bicep.Core/TypeSystem/ResourceType.cs
90.00% <0.00%> (-10.00%)
:arrow_down:

src/Bicep.Core/Emit/ScopeHelper.cs
87.41% <0.00%> (-9.65%)
:arrow_down:

...cep.Core.UnitTests/FileSystem/FileResolverTests.cs
88.23% <0.00%> (-8.83%)
:arrow_down:

src/Bicep.Core/FileSystem/PathHelper.cs
96.15% <0.00%> (-3.85%)
:arrow_down:

... and 40 more


feat: add golangci-lint check

This pr introduces golangci-lint to detect problems with go source code.
And turns on 4 linters: gofmt goimports govet gosimple
(The first 3 linters are maintained by golang.org, gosimple is a linter enabled by golangci-lint default)

linters
describe
link

gofmt
Gofmt checks whether code was gofmt-ed. By default this tool runs with -s option to check for code simplification
https://golang.org/cmd/gofmt/

goimports
In addition to fixing imports, goimports also formats your code in the same style as gofmt.
https://godoc.org/golang.org/x/tools/cmd/goimports

govet
Vet examines Go source code and reports suspicious constructs, such as Printf calls whose arguments do not align with the format string
https://golang.org/cmd/vet/

gosimple
Linter for Go source code that specializes in simplifying code
https://github.com/dominikh/go-tools/tree/master/simple

See a list of supported linters and which linters are enabled/disabled in https://golangci-lint.run/usage/linters/.

Hi @Abirdcfly -
Thank you for the addition of the code simplification tools.  Unfortunately, golangci-lint package has been released under a GPL license, and is incompatible with the operator's Apache license requirement.
The golang.org linters are OK to enable.  Can we aim for extensions to the CI pipeline that focus on improvements to the golang linters, and make incremental updates to the areas of code that can be simplified?   (I do prefer many of the suggestions made by the gosimple linter - the code changes look pretty good.)

golangci-lint package has been released under a GPL license, and is incompatible with the operator's Apache license requirement.

Thank you very much for pointing out the license problem, to be honest, I'm not very clear about it, the reason why golangci-lint is used is because this tool is widely used by kubernetes(Apache License 2.0) and other projects in the kubernetes ecosystem.
Through some small research, I found that there are also many other Apache License 2.0 projects using golangci-lint tool directly, for example:

cloudflare/pint (Apache License 2.0) use in here
kubernetes/ingress-gce (Apache License 2.0) Their golangci configuration file is available here
aws/karpenter (Apache License 2.0) Their golangci configuration file is available here
IBM/ibm-spectrum-scale-csi (Apache License 2.0) Their golangci configuration file is available here

There are other projects that use golangci-lint-action (MIT License) Just like this pr does:

nginxinc/kubernetes-ingress (Apache License 2.0) Their golangci configuration file is available here
GoogleCloudPlatform/cloud-sql-proxy (Apache License 2.0) Their golangci configuration file is available here

Some libraries we depend on also use golangci-lint:

operator-framework/operator-lib, we used in here is Apache License 2.0 also use golangci-lint action in ci
docker/docker, we used in here is Apache License 2.0 also use golangci-lint in test

I investigated this issue because I also have a project that is Apache License 2.0 but uses golangci-lint to check the source code, and from the results above, this seems to be possible and widespread.

We may be OK to run a GPL code linter during the build pipeline, provided that the GPL libraries are not linked in to the binaries, runtime, libraries, or docker image generated by the build.


TypeScript basic app generator

I have incorporated TypeScript into the main app generator. Choosing it is optional (defaults to Yes). Most app source files have been heavily modified to fit the TypeScript coding style. All js files have been left untouched.

I'm closing the pull request. There is too much still to be done for the generator to be merged right now. Also, since I have made a lot of changes that are not reflected in the JavaScript side, the generator as-is would generate different patterns based on whether TS or JS was used. That is bad. Until the generator has been cleaned up, I'll continue development on the fork.


Add step output download button

Fixes #566
Download button is displayed only when you move mouse into log display element.
Download button will be available only when build step is finished (has end time)

/home/maddl/git/own/woodpecker/web/src/components/repo/build/BuildLog.vue
137:9  warning  Unexpected console statement  no-console
✖ 1 problem (0 errors, 1 warning)

web/src/components/repo/build/BuildLog.vue 137:9 warning Unexpected console statement no-console
heavy_multiplication_x 1 problem (0 errors, 1 warning)

Moved that out to common notification function so that it could be reused

lint issue :X

Uncaught (in promise) ReferenceError: notifyErr is not defined

Rebased and fixed


Error right after startup

After creating template project with  cargo and opening main.rs I'm getting this error.
error running command 'eval -client  'lsp-show-error ''Language server is not initialized, parking request'''': 1:1: 'eval' wrong argument count

Seems like that kak-lsp tries to enable lsp-diagnostic-lines but there's no server running yet

I think this is related to https://github.com/mawww/kakoune/issues/1872 as lsp-did-open is usually executed either on BufCreate (when using lsp-enable) or on WinSetOption (typical use of lsp-enable-window).
As the current solution, I'm going to remove lsp-did-open call from both commands. textDocument/didOpen request is anyway injected by kak-lsp server when it routes any other request and textDocument/didOpen was not sent yet.

Ah, we still need to send lsp-did-change-config in those hooks, which would lead to the same problem. Okay, then I'm going ignore empty client when sending the response. As far as I can see it should be harmless.


Allow using expression instead of print(expression);

or, create syntax like p expression

just one more branch in the dart parser.

done


Multiple contexts support

Hello!
Great library!
I have a quick question: does your library support multiple contexts?
Playing with your simple example, is there a way to make something like this work?
function Demo(str, max){
	this.str = str;
	this.max = max;
}
Demo.prototype.foo = function(){
	var ret, ix;
	for(ix=0;ix<this.max;ix++){
		ret = this.str.split(',').join('-');
	}
	return ret;
};
function Act(obj1,obj2){
  this.obj1 = obj1;
  this.obj2 = obj2;
}
Act.prototype.bar = function(){
   this.obj2.foo();
};

var myDemo1 = new Demo('aaa,bbb,ccc',7e5);
var myDemo2 = new Demo('123,456,789',5);

var myAct = new Act(myDemo1,myDemo2);

var param = {
	    fn: myAct.bar,
	    context: myAct
    };

vkthread.exec(param).then(
    function(data){
	    console.log(data);
    }
);

( Does not work like this, see fiddle )

as you want to run function foo(), you need to provide arguments. You want to provide them as a part of context, so they must exist in context, right? Another words your context should have this.str and this.max. Consider following code:

function Demo(str, max){
	this.str = str;
	this.max = max;
}

Demo.prototype.foo = function(){
	var ret, ix;

	for(ix=0;ix<this.max;ix++){
		ret = this.str.split(',').join('-');
	}
	return ret;
};

function Act(obj1,obj2){
	this.obj1 = obj1;
	this.obj2 = obj2;

	this.str = obj1.str;
	this.max = obj1.max;
}

Act.prototype.bar = Demo.prototype.foo;

function run_demo_in_thread_promise(){

	var myDemo = new Act(new Demo('a,b,c',7), new Demo('x,y,z',5)),
		param = {
			fn: myDemo.bar,
			context: myDemo
		};

	vkthread.exec(param).then(
		function(data){
			document.getElementById('demo_result_thread').innerHTML = data;
		}
	);
}

Thanks, I believe your example works, however this example was too simple, because object Act just encapsulates the object Demo. However I can also think of more complex Objects that do not allow for this trickery.
The problem/question remains.
I edited my code above such that it is not so trivial anymore.

re-define foo() as Demo's own property rather than prototype it. Though Act.prototype.bar works, in your case picture will be cleaner if you get rid of prototype and make bar() as Act's own property as well.
Good luck!
function run_demo_in_thread_promise(){

	function Demo(str, max){
		this.str = str;
		this.max = max;
		this.foo = function(){
			var ret, ix;
		        for(ix=0;ix<this.max;ix++){
			        ret = this.str.split(',').join('-');
		        }
		       return ret;
		}
	}

	var myDemo1 = new Demo('a,b,c',11);
	var myDemo2 = new Demo('1,4,7',33);

	function Act(obj1,obj2){
		this.obj1 = obj1;
		this.obj2 = obj2;
	  }

	Act.prototype.bar = function(){
		return String(this.obj1.max+this.obj1.max) +  String(this.obj2.foo()) +
                           String(this.obj1.foo());
	};

	var myDemo = new Act(myDemo1,myDemo2),
		param = {
			fn: myDemo.bar,
			context: myDemo
		};

	vkthread.exec(param).then(
		function(data){
			document.getElementById('demo_result_thread').innerHTML = data;
		}
	);

}

Thanks a lot for your advice! I will have a closer look at it.


Remove the default env variable to trust remote code by default

What does this PR do?
Remove the default env variable to trust remote code by default.
This is wrong to set the env variable by default in the code.
os.environ.setdefault("HF_DATASETS_TRUST_REMOTE_CODE", "true")

User should set this in their env if they trust remote dataset. User can do export HF_DATASETS_TRUST_REMOTE_CODE=true if they trust the remote dataset.
Before submitting

[ ] This PR fixes a typo or improves the docs (you can dismiss the other checks if that's the case).
[ ] Did you make sure to update the documentation with your changes?
[ ] Did you write any new necessary tests?

@regisss can you please check this. This env variable is set wrongly and should be removed from the code

@libinta can you add a label for this minor fix. I removed the HF_DATASETS_TRUST_REMOTE_CODE env variable to be true for all datasets

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.


Proposal: DateTimePicker Control

Proposal: DateTimePicker Control
Summary
A control that allows the user to select both a date and time.
Rationale

Simple data binding when working with both date and time
Easier developer workflow as they no longer need to combine the results of multiple controls to retrieve a combined date and time.
Easier transition from other operating systems (e.g. iOS and Android)

Just a quick mockup...

@mdtauk can you share the iOS and android versions and typically where they are used ?

Android Fluent Date and Time Picker

iOS Fluent Date and Time Pickers

iOS Default

Android Default

Pulling this concept into WinUI would be great. I've already had to make my own control for this. Some additional suggestions are:

Support a vertical orientation
Allow selecting a windows time zone (This is a must-have for me)

Side note, I know @mdtauk won't like the comboboxes -- always go with his mock-ups over mine 😁

I've noticed a lot of other platforms have an actual analog clock representation for time pickers. This is useful to set times faster in most cases. This control would benefit from that idea as well. It might also be necessary to split this out and, similar to CalendarDatePicker, have a ClockTimePicker control.


Fix for the 1.7.10 version

As the title says a lot of these fixes need to be in the 1.7.10 version ,and also it needs updated to the latest 1614 build of forge for 1.7.10 . Thanx man this would allow so many to update there mod packs .

Ill see about a final release for 1.7.10.
The only issue is that i don't have access to the server where the update notifications come from..


compress internal/lib/*.{so,dylib} files when embedded and uncompress when loading to disk

Those embedded files represent a real weight that is impacting the serverless agent (where every MiB impacts the latency of the serverless). This PR compresses the files (so that the embedded version is stored compressed in the binary), and uncompresses them in DumpEmbeddedWAF

Noice! I must admit this has been floating in the back of my mind for ever, so thank you for actually going on an doing it :)


Gateway API's GRPCRoute support

Is this the right place to submit this?

[X] This is not a security vulnerability or a crashing bug
[X] This is not a question about how to use Istio

Bug Description

This issue is a duplicate of https://github.com/istio/istio/issues/46976. However, I cannot reopen it and the proposed solution does not work. I am happy to close this issue if #46976 is re-opened.

In kuadrant, we are looking forward to providing traffic service protection for GRPC traffic using Gateway API GRPCRoute having Istio as the Gateway API provider.
I am afraid it does not work. I have tried plaintext gRPC and gRPC over TLS (the gateway is the TLS termination endpoint) without luck.
What I see
When running grpcurl targeting the gateway, I get kind of 404 Not Found.
$ grpcurl -vv -insecure -authority grpc.example.com $INGRESS_HOST:$INGRESS_PORT main.HelloWorld/Greeting
Error invoking method "main.HelloWorld/Greeting": failed to query for service descriptor "main.HelloWorld": server does not support the reflection API

The service is correctly deployed. When the grpcurl targets the service, the response is as expected
$ kubectl port-forward service/grpc-tls-echo -n grpc-tls-echo 8004
$ grpcurl -plaintext -authority grpc.example.com <IP_ADDRESS>:8004 main.HelloWorld/Greeting
{
  "hostname": "grpc-tls-echo-655f787889-dqlkl",
  "clientAddress": "<IP_ADDRESS>:52040"
}

There is attachedRoutes: 0 in Gateway and no status section in the GRPCRoute. The gateway status shows being accepted and programmed. Also, the listeners are accepted and programmed with no errors.
Besides, when the GRPCRoute is created, istiod does not log any notification about the newly created GRPCRoute nor pushing configuration to the gateway. I have tested the HTTPRoute and works as expected.
To me, it looks like the GRPCRoute is not being handled by istio.
How to reproduce
kind v0.20.0
kind create cluster --name grpc

Gateway API CRDs (v1.0.0 experimental to have GRPCRoute)
kustomize build github.com/kubernetes-sigs/gateway-api/config/crd/experimental?ref=v1.0.0 | kubectl apply -f -

metallb
kustomize build github.com/metallb/metallb/config/native?ref=v0.13.7 | kubectl apply -f -
kubectl -n metallb-system wait --for=condition=Available deployments controller --timeout=300s
kubectl -n metallb-system wait --for=condition=ready pod --selector=app=metallb --timeout=60s

Configure metallb
cat <<\METALLB | /bin/bash | kubectl apply -n metallb-system -f -
# Generates a MetalLB IpAddressPool for the given docker network.
# https://metallb.org/configuration/#defining-the-ips-to-assign-to-the-load-balancer-services
#
# Example:
# ./utils/docker-network-ipaddresspool.sh kind | kubectl apply -n metallb-system -f -

set -euo pipefail

## Parse kind network subnet
## Take only IPv4 subnets, exclude IPv6
SUBNET=$(docker network inspect kind --format '{{json .IPAM.Config }}' | \
    yq '.[] | select( .Subnet | test("^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.?\b){4}/\d+$")) | .Subnet')
if [[ -z "$SUBNET" ]]; then
   echo "Error: parsing IPv4 network address for 'kind' docker network"
   exit 1
fi

# shellcheck disable=SC2206
subnetParts=(${SUBNET//./ })
cidr="${subnetParts[0]}.${subnetParts[1]}.200.0/24"

cat <<EOF | ADDRESS=$cidr yq '(select(.kind == "IPAddressPool") | .spec.addresses[0]) = env(ADDRESS)'
---
apiVersion: metallb.io/v1beta1
kind: IPAddressPool
metadata:
  name: kuadrant-local
spec:
  addresses: [] # set by make target
---
apiVersion: metallb.io/v1beta1
kind: L2Advertisement
metadata:
  name: empty
EOF
METALLB

Istio v1.20.0
istioctl operator init

EDITED: Added PILOT_ENABLE_ALPHA_GATEWAY_API env var to the pilot
kubectl apply -f - <<EOF
---
apiVersion: install.istio.io/v1alpha1
kind: IstioOperator
metadata:
  namespace: istio-system
  name: istiocontrolplane
spec:
  profile: default
  namespace: istio-system
  components:
    base:
      enabled: true
    cni:
      enabled: false
    egressGateways:
      - enabled: false
        name: istio-egressgateway
    ingressGateways:
      - enabled: false
        name: istio-ingressgateway
    pilot:
      enabled: true
      k8s:
        env:
          - name: PILOT_ENABLE_ALPHA_GATEWAY_API
            value: "true"
        resources:
          requests:
            cpu: "0"
  values:
    pilot:
      autoscaleEnabled: false
    global:
      istioNamespace: istio-system
EOF

GRPC service deployment
kubectl create namespace grpc-tls-echo

kubectl apply -n grpc-tls-echo -f - <<EOF
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: grpc-tls-echo
  labels:
    app: grpc-tls-echo
spec:
  selector:
    matchLabels:
      app: grpc-tls-echo
  template:
    metadata:
      labels:
        app: grpc-tls-echo
    spec:
      containers:
        - name: grpc-tls-echo
          image: kalmhq/echoserver
          ports:
            - containerPort: 8004
              name: grpc
  replicas: 1
---
apiVersion: v1
kind: Service
metadata:
  name: grpc-tls-echo
spec:
  selector:
    app: grpc-tls-echo
  ports:
    - name: grpc
      port: 8004
      protocol: TCP
      targetPort: grpc
EOF

Gateway API Gateway
openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout grpc.example.com.key -out grpc.example.com.crt -subj "/CN=grpc.example.com"
kubectl create secret tls grpc-example-com-tls --key="grpc.example.com.key" --cert="grpc.example.com.crt" -n grpc-tls-echo

kubectl apply -n grpc-tls-echo -f - <<EOF
---
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  name: grpc-tls
spec:
  gatewayClassName: istio
  listeners:
  - allowedRoutes:
      namespaces:
        from: All
    hostname: http.example.com
    name: http
    port: 80
    protocol: HTTP
  - allowedRoutes:
      namespaces:
        from: All
    hostname: grpc.example.com
    name: https
    port: 443
    protocol: HTTPS
    tls:
      certificateRefs:
      - group: ""
        kind: Secret
        name: grpc-example-com-tls
      mode: Terminate
EOF

GRPCRoute
kubectl apply -n grpc-tls-echo -f - <<EOF
---
apiVersion: gateway.networking.k8s.io/v1alpha2
kind: GRPCRoute
metadata:
  name: grpc-tls-echo
spec:
  hostnames:
  - grpc.example.com
  parentRefs:
  - group: gateway.networking.k8s.io
    kind: Gateway
    name: grpc-tls
    namespace: grpc-tls-echo
    sectionName: https
  rules:
  - backendRefs:
    - group: ""
      kind: Service
      name: grpc-tls-echo
      port: 8004
      weight: 1
EOF

Test GRPCRoute
export INGRESS_HOST=$(kubectl get gtw grpc-tls -n grpc-tls-echo -o jsonpath='{.status.addresses[0].value}')
export INGRESS_PORT=$(kubectl get gtw grpc-tls -n grpc-tls-echo -o jsonpath='{.spec.listeners[?(@.name=="https")].port}')
grpcurl -vv -insecure -authority grpc.example.com $INGRESS_HOST:$INGRESS_PORT main.HelloWorld/Greeting

Version
$ istioctl version
client version: 1.20.0
control plane version: 1.20.0
data plane version: 1.20.0 (1 proxies)

$ kubectl version
Client Version: v1.28.4
Kustomize Version: v5.0.4-0.20230601165947-6ce0bf390ce3
Server Version: v1.27.3

Additional Information
No response

Thanks for the quick response. I appreciate it.
Setting PILOT_ENABLE_ALPHA_GATEWAY_API to true made some progress.
$ kubectl get deployment istiod -n istio-system -o jsonpath='{.spec.template.spec.containers[?(@.name=="discovery")].env[?(@.name=="PILOT_ENABLE_ALPHA_GATEWAY_API")]}' | yq e -P
name: PILOT_ENABLE_ALPHA_GATEWAY_API
value: "true"

When the GRPCRoute is being created, the discovery controller logs about it
2024-02-15T15:46:09.695025Z	info	ads	Push debounce stable[13] 1 for config GRPCRoute/grpc-tls-echo/grpc-tls-echo: 100.805649ms since last change, 100.805441ms since last push, full=true
2024-02-15T15:46:09.695174Z	info	ads	XDS: Pushing Services:7 ConnectedEndpoints:1 Version:2024-02-15T15:46:09Z/10
2024-02-15T15:46:09.695843Z	info	ads	CDS: PUSH for node:grpc-tls-istio-5974cdb459-kqflb.grpc-tls-echo resources:14 size:14.2kB cached:10/13
2024-02-15T15:46:09.695951Z	info	ads	EDS: PUSH for node:grpc-tls-istio-5974cdb459-kqflb.grpc-tls-echo resources:13 size:2.4kB empty:0 cached:13/13
2024-02-15T15:46:09.696192Z	info	ads	LDS: PUSH for node:grpc-tls-istio-5974cdb459-kqflb.grpc-tls-echo resources:2 size:4.5kB
2024-02-15T15:46:09.696219Z	warn	constructed http route config for route https.443.default.grpc-tls-istio-autogenerated-k8s-gateway-https.grpc-tls-echo on port 443 with no vhosts; Setting up a default 404 vhost
2024-02-15T15:46:09.696245Z	warn	constructed http route config for route http.80 on port 80 with no vhosts; Setting up a default 404 vhost
2024-02-15T15:46:09.696277Z	info	ads	RDS: PUSH for node:grpc-tls-istio-5974cdb459-kqflb.grpc-tls-echo resources:2 size:148B cached:0/0

Unfortunately, the GRPCRoute seems to have no effect. The grpcurl commands still returns 404.
I queried the "routes" config of the gateway pod (the envoy process) and no trace of the grpc route settings
$ istioctl proxy-config routes grpc-tls-istio-5974cdb459-kqflb -n grpc-tls-echo -o json | yq e -P
- name: http.80
  virtualHosts:
    - name: blackhole:80
      domains:
        - '*'
  validateClusters: false
  maxDirectResponseBodySizeBytes: 1048576
  ignorePortInHostMatching: true
- name: https.443.default.grpc-tls-istio-autogenerated-k8s-gateway-https.grpc-tls-echo
  virtualHosts:
    - name: blackhole:443
      domains:
        - '*'
  validateClusters: false
  maxDirectResponseBodySizeBytes: 1048576
  ignorePortInHostMatching: true
- virtualHosts:
    - name: backend
      domains:
        - '*'
      routes:
        - match:
            prefix: /stats/prometheus
          route:
            cluster: prometheus_stats
- virtualHosts:
    - name: backend
      domains:
        - '*'
      routes:
        - match:
            prefix: /healthz/ready
          route:
            cluster: agent

I would expect something there.
Maybe out of the scope, but do you happen to know how to deploy the gateway with logging level in debug ? Maybe it can be helpful to debug why the request is not routed.

Is the real listener hostname a wildcard host by any chance?

As you can see from the Gateway resource, the listener with the name https does not have any wildcard hostname. Just this one: hostname: grpc.example.com
I tried with wildcard hostnames in the Gateway with the same unsuccessful result.

Right I was just confirming that you weren't being affected by a different bug. If you kubectl get the Gateway and GRPCRoute, what do the statuses/conditions of the resources say?

The Gateway full resource

apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
  annotations:
    gateway.istio.io/controller-version: "5"
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"gateway.networking.k8s.io/v1","kind":"Gateway","metadata":{"annotations":{},"name":"grpc-tls","namespace":"grpc-tls-echo"},"spec":{"gatewayClassName":"istio","listeners":[{"allowedRoutes":{"namespaces":{"from":"All"}},"hostname":"http.example.com","name":"http","port":80,"protocol":"HTTP"},{"allowedRoutes":{"namespaces":{"from":"All"}},"hostname":"grpc.example.com","name":"https","port":443,"protocol":"HTTPS","tls":{"certificateRefs":[{"group":"","kind":"Secret","name":"grpc-example-com-tls"}],"mode":"Terminate"}}]}}
  creationTimestamp: "2024-02-16T23:30:02Z"
  generation: 1
  name: grpc-tls
  namespace: grpc-tls-echo
  resourceVersion: "922"
  uid: 30adcd0e-988e-4b58-b73e-d8e0569815a4
spec:
  gatewayClassName: istio
  listeners:
  - allowedRoutes:
      namespaces:
        from: All
    hostname: http.example.com
    name: http
    port: 80
    protocol: HTTP
  - allowedRoutes:
      namespaces:
        from: All
    hostname: grpc.example.com
    name: https
    port: 443
    protocol: HTTPS
    tls:
      certificateRefs:
      - group: ""
        kind: Secret
        name: grpc-example-com-tls
      mode: Terminate
status:
  addresses:
  - type: IPAddress
    value: <IP_ADDRESS>
  conditions:
  - lastTransitionTime: "2024-02-16T23:30:02Z"
    message: Resource accepted
    observedGeneration: 1
    reason: Accepted
    status: "True"
    type: Accepted
  - lastTransitionTime: "2024-02-16T23:30:07Z"
    message: Resource programmed, assigned to service(s) grpc-tls-istio.grpc-tls-echo.svc.cluster.local:443
      and grpc-tls-istio.grpc-tls-echo.svc.cluster.local:80
    observedGeneration: 1
    reason: Programmed
    status: "True"
    type: Programmed
  listeners:
  - attachedRoutes: 0
    conditions:
    - lastTransitionTime: "2024-02-16T23:30:02Z"
      message: No errors found
      observedGeneration: 1
      reason: Accepted
      status: "True"
      type: Accepted
    - lastTransitionTime: "2024-02-16T23:30:02Z"
      message: No errors found
      observedGeneration: 1
      reason: NoConflicts
      status: "False"
      type: Conflicted
    - lastTransitionTime: "2024-02-16T23:30:02Z"
      message: No errors found
      observedGeneration: 1
      reason: Programmed
      status: "True"
      type: Programmed
    - lastTransitionTime: "2024-02-16T23:30:02Z"
      message: No errors found
      observedGeneration: 1
      reason: ResolvedRefs
      status: "True"
      type: ResolvedRefs
    name: http
    supportedKinds:
    - group: gateway.networking.k8s.io
      kind: HTTPRoute
    - group: gateway.networking.k8s.io
      kind: GRPCRoute
  - attachedRoutes: 0
    conditions:
    - lastTransitionTime: "2024-02-16T23:30:02Z"
      message: No errors found
      observedGeneration: 1
      reason: Accepted
      status: "True"
      type: Accepted
    - lastTransitionTime: "2024-02-16T23:30:02Z"
      message: No errors found
      observedGeneration: 1
      reason: NoConflicts
      status: "False"
      type: Conflicted
    - lastTransitionTime: "2024-02-16T23:30:02Z"
      message: No errors found
      observedGeneration: 1
      reason: Programmed
      status: "True"
      type: Programmed
    - lastTransitionTime: "2024-02-16T23:30:02Z"
      message: No errors found
      observedGeneration: 1
      reason: ResolvedRefs
      status: "True"
      type: ResolvedRefs
    name: https
    supportedKinds:
    - group: gateway.networking.k8s.io
      kind: HTTPRoute
    - group: gateway.networking.k8s.io
      kind: GRPCRoute

The GRPCRoute full resource. Does not have status.

apiVersion: gateway.networking.k8s.io/v1alpha2
kind: GRPCRoute
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"gateway.networking.k8s.io/v1alpha2","kind":"GRPCRoute","metadata":{"annotations":{},"name":"grpc-tls-echo","namespace":"grpc-tls-echo"},"spec":{"hostnames":["grpc.example.com"],"parentRefs":[{"group":"gateway.networking.k8s.io","kind":"Gateway","name":"grpc-tls","namespace":"grpc-tls-echo","sectionName":"https"}],"rules":[{"backendRefs":[{"group":"","kind":"Service","name":"grpc-tls-echo","port":8004,"weight":1}]}]}}
  creationTimestamp: "2024-02-16T23:30:35Z"
  generation: 1
  name: grpc-tls-echo
  namespace: grpc-tls-echo
  resourceVersion: "1001"
  uid: fd278a33-6801-43bf-9ec2-f046cdf0ba7b
spec:
  hostnames:
  - grpc.example.com
  parentRefs:
  - group: gateway.networking.k8s.io
    kind: Gateway
    name: grpc-tls
    namespace: grpc-tls-echo
    sectionName: https
  rules:
  - backendRefs:
    - group: ""
      kind: Service
      name: grpc-tls-echo
      port: 8004
      weight: 1


Not parsing @Consumes and @Produces when using JAX-RS

In JAX-RS - @Consumes and @Produces can be defined both by having a String[] and a comma separated String:
@Consumes( {"application/json", "application/xml", "text/csv"} )
and
@Consumes( "application/json, application/xml, text/csv" )
Are both valid JAX-RS @Consume annotations. Swagger-core doesn't parse the String-version. Swagger-core sees the comma separated list as one MediaType (instead of 3 in the example above). This is very visible when displayed in Swagger-UI as the dropdown lists for Consumes/Produces is wrong

Same issue applies to the procuces (and also consumes?) property of the ApiOperation annotation:
I am using a comma-separated list of mime-types, and it gets displayed as comma-separated list in Swagger-UI.
I am not participating in development of Swagger, but looking at the fix above looks like just changing
modules/swagger-jaxrs/src/main/java/io/swagger/jaxrs/Reader.java to split the string for api.produces() and api.consumes():
if (!api.produces().isEmpty()) {
produces = new String[]{api.produces()};
}
Btw., I am just trying to use this property as I am not able to control the sort order of mime types. From Consumes JAX-RS annotation, sort order is not preserved  (most probably lost already in JAX-RS implementation...). Is there any other mechanism to define the sort order, or at least the default value of the "Response Content Type", as I don't like duplicating information?

Seems like this is valid @veitmichael.  Could you please open a new issue for this and we can get it fixed?

Done, see https://github.com/swagger-api/swagger-core/issues/1546


add displayxpub command

Such a command would invoke verification of an xpub at a keypath on the device.
This is an important feature, as setting up a multisig without comparing the cosigners xpubs on one device with the xpub shown on the other devices can be very dangerous.
I believe most commonly users verify the xpubs on the device (if they are shown at all and the user actually checks them) against xpubs shown on the host computer, which is useless, as the host computer can lie about them.
It is also critical to verify your backup of the xpubs against the xpub shown on the device. Again, creating the backup by copying the xpubs shown on the host computer can lead to loss of funds or ransom attacks.
As a bonus, since Electrum shows the cosigner xpubs in any of these formats:
xpub, ypub, zpub, tpub, vpub, upub, Ypub, Zpub, Upub, Vpub
the command could accept a --format arg to hint which format the device should show. This enables you to transmit the correct xpub safely to your cosigner who uses Electrum (even if you don't use Electrum yourself; otherwise you'd have to trust your or their computer to covert correctly to the desired format, let alone the UX problems of that).
Alternative api: getpxub could get a --display arg to show it on the display.
If you agree, I'll be happy to make a PR adding this feature.

I think this is a missing piece of infrasture for multisig setups.
Which devices currently support this?

trezor_1 and trezor_t do

BitBox02 supports it too.
@prusnak that is awesome, can you show me how to do it? I was looking for it everywhere but couldn't find it when I wrote this post.
I tried:
trezorctl btc get-public-node -n "m/48'/0'/0'/2'" --show-display
But that seems to show the pubkey only (03...), not the xpub (xpub...). How to do it?

trezorctl btc get-public-node -n "m/48'/0'/0'/2'" --show-display

This is correct. I changed the behaviour in the upcoming 2.3.5 and 1.9.4 firmwares to show xpub instead of the public key on the display.
If you send GetPublicNode.ignore_xpub_magic=true the device will show and return always xpub prefix. If you keep don't set (default=false), specialized prefixes will be used (ypub, etc).
This all works only for single-sig. If you want to use multisig, you use GetAddress call with multisig field set.

Can you give an example of what the new firmware will display wrt multisg addresses?
Ideally I'd be able to know "how" the multisig address was constructed, or "register" ones I expect.

@instagibbs it will show the multisig address and then you can cycle through the involved xpubs in the address (while Trezor is showing whether it's yours = coming from trezor, or from a cosigner)


Reactivity Transform prop alias not usable in template

Describe the bug
I'm using<EMAIL_ADDRESS>and @vue-macros/reactivity-transform to try to get my existing projects that used<EMAIL_ADDRESS>and reactivity transform to work.
When aliasing a prop when destructuring like so:
const {
  prop1: propAlias
} = defineProps(…);

it can't be used in the template and you get a warning:
Property "propAlias" was accessed during render but is not defined

I did some digging and @vue/compiler-sfc relies on bindingMetadata being filled with information from the script when compiling the template to resolve for example prop aliases.
In<EMAIL_ADDRESS>destructured prop aliases are now set here, with the new destructureProps feature.
Other pieces of bindingMetadata are also missing, but I'm not sure which effects those have. Some are set here. It looks like adding the __MACROS_mergeDefaults shim breaks detection of props in this case.
My current hack is not transforming the defineProps statement at all by removing this call and enabling propsDestructure in<EMAIL_ADDRESS>which will then basically just set the bindingMetadata and replace nothing else (apart from maybe handling destructure defaults), because all uses of props in script have already been replaced by vue-macros.
Doing this makes vue-macros rely on propsDestructure being enabled in vue, so I don't know if this is the ideal solution.
Using just<EMAIL_ADDRESS>with the deprecated reactivity transform results in the uses of the destructured props being transformed by the new props destructure feauture instead of the "old" reactivity transform, which makes them vulnerable to the drawbacks mentioned in the RFC https://github.com/vuejs/rfcs/discussions/502. Especially calling $$ on a destructured prop does nothing anymore in<EMAIL_ADDRESS>Reproduction
https://stackblitz.com/edit/vitejs-vite-v8ksvs?file=src%2Fcomponents%2FHelloWorld.vue
System Info
System:
    OS: Linux 6.3 Arch Linux
    CPU: (16) x64 AMD Ryzen 7 PRO 6850H with Radeon Graphics
    Memory: 13.89 GB / 30.62 GB
    Container: Yes
    Shell: 5.9 - /bin/zsh
  Binaries:
    Node: 20.3.0 - /usr/bin/node
    Yarn: 1.22.19 - /usr/bin/yarn
    npm: 8.19.2 - /usr/bin/npm
  Browsers:
    Chromium: 114.0.5735.133
    Firefox: 114.0.1

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guide.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A, please open a GitHub Discussion instead.
[X] The provided reproduction is a minimal reproducible of the bug.

Thanks for your detailed issue. Fixed and please the next release. ❤

Thanks for the fix, I just tested it with my project and it works! :heart:


Hide image upload when no Cloud Storage config.

We have developers run the sample without doing any configuration. It's
not a great experience if the app seems broken when they create a book
and try to include an image.
I only hide the element since the Create and Update servlets expect the
"file" property to be populated (even if it's empty string).
We should consider doing the same for the login button and "my books"
button if the client ID for OAuth2 is not set.

Build is broken. I need to fix import statements order.

Okay. I've made some checkstyle fixes. PTAL.

Very Cool -- LGTM


Info dialog broken

VSCode Version: 1.12.0-insider 6c5926309d821ce767743c8166ec225fbe9456ef
OS Version: Win 10 Version 1703

Maybe it's related to the Electron upgrade to 1.6?

Weird, I cannot reproduce with my windows version:

I wonder if this is a Windows Creators update issue.

@bpasero Found the issue here: https://github.com/Microsoft/vscode/blob/a64e90af53918e680e7aaddb245dcf13621b3cb1/i18n/deu/src/vs/code/electron-main/menus.i18n.json#L158
There is \\n instead of \n in the German translations.

@levrik awesome findings!
@dbaeumer @michelkaporin a regression from transifex maybe?

@bpasero Yes, seems to be a regression from Transifex. I am looking into it.
@levrik thanks for reporting this!

It appears that it is a bug related to the old translation memory recycling to Transifex, where it was not done properly with respect to \n characters. I've emailed our translation team to sort it out.

Translation fix of de, fr, it pushed to vscode GitHub project. Will continue other languages.

@bpasero @levrik @michelkaporin
Translation fixes of all languages are in now. I am closing this issue.
Thank you for reporting and guiding on the fix!

Maybe this should be 6 separate strings so \n isn't part of the translated text?


Tabs refresh page

How can we reproduce this bug?
Make some tabs like this

Tab 1

Tab 2

Notice it has the option data-autoFocus="true".
What did you expect to happen?
After clicking Tab 2 and refresh the page, it should stay on Tab 2
What happened instead?
Tab 1 was active
What i did to get the desired behaviour
Edit foundation.tabs.js, in function _handleTabChange add something like
    if(history.pushState) {
        history.pushState(null, null, hash);
    }
    else {
        window.location.hash = hash;
    }

taken from
http://stackoverflow.com/questions/3870057/how-can-i-update-window-location-hash-without-jumping-the-document
and where i use the tabs
if(window.location.hash){
    $('a[role=tab]').each(function(){
        var hash = '#' + $(this).attr('href').split('#')[1];
        if(hash == window.location.hash){
            $(this).click();
        }
    });
}

taken from ##3692 @dimaip
Not pretty..

This reminds me of https://github.com/zurb/foundation-sites/issues/7606#issuecomment-166391947, and how all components with anchors (like tabs) should have an option to expose the hash change (instead of preventDefault()) so that apps can leverage them.

Note: @anothergituser any multiaple words property should be separated by hyphen -,so the property you mentioned should be written like this data-auto-focus, but not data-autoFocus.
According to the documentation, the purpose of this property data-auto-focus is

Allows the window to scroll to content of active pane on load if set to true.

So putting that property on a Tabs component means that the window will scroll to the active pane, and I tested that and it works well.
Test case
http://codepen.io/abdullahsalem/pen/reoRXB
Therefore, I think this issue shouldn't be labeled neither as a feature nor a bug.
@andycochran you're right, enabling that option is importing in another cases, in particular the Deep linking feature #7652  that should be implemented next release.


helm pull errors are not logged

Holos Version: 0.98.1
When I add a helm component with a version that does not exist, like this:
package holos

// Produce a helm chart build plan.
holos: HelmChart.BuildPlan

HelmChart: #Helm & {
	Name: "podinfo"
	Chart: {
		version: "0.0.0"
		repository: {
			name: "podinfo"
			url:  "https://stefanprodan.github.io/podinfo"
		}
	}
}

holos fails (as expected) but doesnt tell me where it failed:
> holos render platform ./platform

could not run: could not run helm pull: exit status 1 at builder/v1alpha5/builder.go:517
could not run: could not render component: exit status 1 at builder/v1alpha5/builder.go:136

increasing the log level to debug doesnt add much info either (but imho this is something that should not require debug logging anyways):
> holos render platform ./platform --log-level debug

finalized config from flags
cue: discriminating platform instance
discriminated v1alpha5 Platform
render component
running: holos
could not run: could not run helm pull: exit status 1 at builder/v1alpha5/builder.go:517
could not run: could not render component: exit status 1 at builder/v1alpha5/builder.go:136

holos should log the helm error to stderr for clear visibility.  This is a bug because it doesn't.

Thanks @msteinhoff I'm going to focus this issue on helm pull, if you run into other places where errors aren't sufficiently logged please report them as separate issues.

@msteinhoff FYI fixed in v0.99.1 thanks again for the report.


sim-all: Allow running the simulator without it writing on disk

It is rather annoying to run the simulator and having to delete the output files when we are doing testing/dev. This allows us to do so without the file being created.
I've approached this by making the simulator to write the results to "/dev/null" to minimized the code diff, but I'm happy to change the approach if this feels to hacky (it is worth to keep in mind this is for dev only).

Could we override print_batch_size parameter to signal no csv output? If a user doesn't specify the flag, we don't print csv results by default

Do you mean using zero as a special case? That could work but it may also introduce potential foot shots. Using a special, non documented, flag means that you need to be pretty aware of what you're doing.
This makes me wonder though, what would happen currently if we set that to zero?

Do you mean using zero as a special case? That could work but it may also introduce potential foot shots. Using a special, non documented, flag means that you need to be pretty aware of what you're doing.
This makes me wonder though, what would happen currently if we set that to zero?

I looked at this and zero means no flushing, meaning that the data will only be written to disk when the simulation ends. Should we discourage that? It feels like we should not allow data to pile in memory.
@okjodom @carlaKC

I looked at this and zero means no flushing, meaning that the data will only be written to disk when the simulation ends. Should we discourage that?

yeah we could restrict min value to 1 for the flag

Do you mean using zero as a special case? That could work but it may also introduce potential foot shots. Using a special, non documented, flag means that you need to be pretty aware of what you're doing.
This makes me wonder though, what would happen currently if we set that to zero?

I mean if the flag is not set, we don't start the report writer process. If the flag is set to any value including zero, we start the report writer

Well that's not really how it should be, should it? If the flag is not set, we default to whatever we consider to be a reasonable batch size, which currently is 500. The flag only signals whether we want to be less disk I/O intensive.
Zero, on the other side, could mean do not write to disk, but I think that has risky side-effects as previously mentioned.

yeah we could restrict min value to 1 for the flag

Agreed

I've added the print_batch_size > 0 to https://github.com/bitcoin-dev-project/sim-ln/pull/145, and done some default refactoring for better help report.

Well that's not really how it should be, should it? If the flag is not set, we default to whatever we consider to be a reasonable batch size, which currently is 500. The flag only signals whether we want to be less disk I/O intensive.

Ack. okay with me if we don't overload print_batch_size flag

Rebased and squashed

Fixed nits


Remix IDE should have the base contracts loaded in

We need to fork the Remix IDE container and drop our contracts into it.
Also, we were using solidity-browser, which became Remix.I changed the refs, but I'm not sure if everything will actually work.

@swpnit82 I did this, but I also swapped out the Remix IDE version we're using for remix-project -- can you just make sure that's still working, and the contracts show up in the browser?


[bug] The bug of resizing the window in the javascript API

Describe the bug
First, it was normal in v1.0.0.
In v1.0.1
When I resize the window height it always gets 20px more.

before

after

so. Is this a feature or a bug?
Reproduction
No response
Expected behavior
No response
Platform and versions
Operating System - Windows, version 10.0.18362 X64
Webview2 - 103.0.1264.37
Visual Studio Build Tools - Not installed

Node.js environment
  Node.js - 14.18.0
  @tauri-apps/cli - 1.0.0-beta.10 (outdated, latest: 1.0.1)
  @tauri-apps/api - 1.0.1

Global packages
  npm - 6.14.15
  pnpm - 7.3.0
  yarn - 1.22.10

Rust environment
  rustc - 1.61.0
  cargo - 1.61.0

Rust environment
  rustup - 1.24.3
  rustc - 1.61.0
  cargo - 1.61.0
  toolchain - stable-x86_64-pc-windows-msvc (environment override by RUSTUP_TOOLCHAIN)

App directory structure
/.git
/.vscode
/dist
/node_modules
/public
/src
/src-tauri

App
  tauri.rs - 1.0.2
`tauri.conf.json` error on ``: Additional property '$schema' is not allowed
`tauri.conf.json` error on `tauri > bundle > macOS`: Additional property 'providerShortName' is not allowed

Stack trace
No response
Additional context
No response

Looks like https://github.com/tauri-apps/tao/issues/194 is back 👀

update cli.
Environment
  › OS: Windows 10.0.18362 X64
  › Webview2: 103.0.1264.37
  › MSVC:
      - Visual Studio ���ɹ��� 2019
  › Node.js: 14.18.0
  › npm: 6.14.15
  › pnpm: 7.3.0
  › yarn: 1.22.10
  › rustup: 1.24.3
  › rustc: 1.61.0
  › cargo: 1.61.0
  › Rust toolchain: stable-x86_64-pc-windows-msvc

Packages
  › @tauri-apps/cli [NPM]: 1.0.2
  › @tauri-apps/api [NPM]: 1.0.1
  › tauri [RUST]: 1.0.2,
  › tauri-build [RUST]: 1.0.2,
  › tao [RUST]: 0.12.0,
  › wry [RUST]: 0.19.0,

App
  › build-type: bundle
  › CSP: unset
  › distDir: ../dist
  › devPath: http://localhost:3000/
  › framework: Vue.js

App directory structure
  ├─ .git
  ├─ .vscode
  ├─ dist
  ├─ node_modules
  ├─ public
  ├─ src
  └─ src-tauri

I can't reproduce this at all. Please open the devtools console, and check window.innerWidth and window.innerHeight

I changed to another computer, but it's win11 system.
Create new project.

What would you want other?
Environment
  › OS: Windows 10.0.22000 X64
  › Webview2: 100.0.1185.29
  › MSVC:
      - Visual Studio ���ɹ��� 2019
  › Node.js: 17.4.0
  › npm: 8.3.1
  › pnpm: 7.4.0
  › yarn: 1.22.4
  › rustup: 1.24.3
  › rustc: 1.62.0
  › cargo: 1.62.0
  › Rust toolchain: stable-x86_64-pc-windows-msvc

Packages
  › @tauri-apps/cli [NPM]: 1.0.2
  › @tauri-apps/api [NPM]: 1.0.1
  › tauri [RUST]: 1.0.2,
  › tauri-build [RUST]: 1.0.2,
  › tao [RUST]: 0.12.1,
  › wry [RUST]: 0.19.0,

App
  › build-type: bundle
  › CSP: unset
  › distDir: ../dist
  › devPath: http://localhost:3000/
  › framework: Vue.js

App directory structure
  ├─ .vscode
  ├─ dist
  ├─ node_modules
  ├─ public
  ├─ src
  └─ src-tauri

Are you using custom scaling?

Are you using custom scaling?

Do you mean windows custom scaling？ The setting is 100%

I can definitely reproduce this with Tauri and tauri only. It works fine in tao, it works fine in wry but not in tauri.
tao uses AdjustWindowRectEx here to determine how big the window and I logged the rect returned by it.
Initially set the size in tauri.conf.json to 800,60 and AdjustWindowRect will return
[D:\dev\tao\src\platform_impl\windows\util.rs:116] &rect = RECT {
    left: -8, // left border
    top: -31, // titlebar height + top border which is 8
    right: 808, // window inner width + right border which is 8
    bottom: 68, // window inner height + bottom border which is 8
}

Then we try to set the window size through the API to 800,60 (same size as before) and here is what I don't understand
[D:\dev\tao\src\platform_impl\windows\util.rs:116] &rect = RECT {
    left: -8, // left border -> same as above
    top: -51, // titlebar height + top border -> NOT THE SAME !!!!
    right: 808, // window inner width + right border -> same as above
    bottom: 68, // window inner height + bottom border -> same as above
}

you can see that the titlebar height has increased, hello Windows? why?
Anyhow, you'd expect if you try to set the size again, the titlebar size will increase even more but NO, the titlebar height stays as -51 and for the entirety of the window life span, setSize will actually work as expected, So the bug is only in the first invocation but I have no idea what is going on.

I think I found the issue, it was this commit https://github.com/tauri-apps/tauri/commit/5105b428c4726b2179cd4b3244350d1a1ee73734 which adds an empty menu bar on Windows, and AdjustWindowRect will account for its size.
It doesn't happen initially because the menu is added after the window has been created so the first call to AdjustWindowRect it won't add the menu bar size but subsequent calls which happens after the empty menubar has been added, will add the menu bar size.
I will push the fix soon but for your current project, you need to add the menu on macOS only, use Menu::os_default for all paltforms, not just macOS or remove the menu bar altogether.

when https://github.com/tauri-apps/tauri/pull/4570 is merged, you can just remove the .menu() call from your main.rs

thanks.
It is indeed caused by this default menu.
The previous scaffolding did not have this menu.


python312Packages.imagehash: 4.3.1 -> 4.3.2

Diff: https://github.com/JohannesBuchner/imagehash/compare/refs/tags/v4.3.1...v4.3.2
Changelog: https://github.com/JohannesBuchner/imagehash/releases/tag/v4.3.2

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

nixpkgs-review result
Generated using nixpkgs-review.
Command: nixpkgs-review pr 352313

x86_64-linux

:white_check_mark: 21 packages built:

ghunt
ghunt.dist
paperless-ngx
python311Packages.cleanlab
python311Packages.cleanlab.dist
python311Packages.cleanvision
python311Packages.cleanvision.dist
python311Packages.imagehash
python311Packages.imagehash.dist
python311Packages.visions
python311Packages.visions.dist
python311Packages.ydata-profiling
python311Packages.ydata-profiling.dist
python312Packages.cleanvision
python312Packages.cleanvision.dist
python312Packages.imagehash
python312Packages.imagehash.dist
python312Packages.visions
python312Packages.visions.dist
python312Packages.ydata-profiling
python312Packages.ydata-profiling.dist


Solve "Unable to set User-Agent with client.SetHeaders"

Solves https://github.com/olivere/elastic/issues/1438

This has hopefully been fixed in 7.0.24.


Why do I see discrepancies between the load chart and the load profile?

I have created a testing ground with only one technology, an electric vehicle, connected. I assigned a profile to it and was expecting the load chart to look exactly the same as this profile. However, they look very different and there is also negative load that I hadn't expected.
Do you know why this is happening, @antw?
Load chart

Load profile

I think I understand what's going on here. The negatives are almost certainly a bug which I'm still checking out, but I have a question first: in this example, what do you think is the total storage capacity of the vehicle?

in this example, what do you think is the total storage capacity of the vehicle

I think the volume (in kWh) for EV is 25kWh as specified in https://github.com/quintel/etdataset/issues/597#issuecomment-98846395.

I think the volume (in kWh) for EV is 25kWh as specified in quintel/etdataset#597 (comment).

Correct, but I don't think this is relevant for the above profiles, since I used the load profiles for an electric vehicle and not the availability profiles (which are net on Ivy).

I used the load profiles for an electric vehicle and not the availability profiles (which are not yet on Ivy).

Good point @jorisberkhout. Thanks for clarifying!

I'm still looking into the negatives. The "spikes" in the EV load are, I think, more easily explained.

capacity is currently not a supported attribute of storage technologies. It will be soon – presumably mapping to input_capacity – but at moment the behaviour of storage when you set this attribute is "undefined" (i.e. probably broken). If you set a capacity, I think you'll trigger the use of a capacity-scaled curve instead of using the raw curve.
Until input_capacity is added for storage technologies, it is assumed to be infinite (if there is sufficient excess in the network, the storage can charge to its full capacity in one time-step).

Storage technologies require a storage attribute which defines their volume. The new front-end form does not provide this attribute.

ev_profile_11_3.3_kW.csv appears to contain raw kW values. That contradicts this post which suggests they would contain the minimum percentage (or fraction) of the battery which should be charged at each point in time.

positive: The EV is connected to an outlet and needs to be partially charged to make the imminent next trip. The positive value indicates the minimal percentage of the battery that needs to be charged in order to have enough charge to make the next trip (I assumed a battery volume of 25 kWh)

I thought these were going to be "availability" curves, so a a value of 0 means the battery can be empty, 0.5 means it must be 50% full, and so on. Have I misunderstood?

Good points, @antw .

I thought these were going to be "availability" curves, so a a value of 0 means the battery can be empty, 0.5 means it must be 50% full, and so on. Have I misunderstood?

We currently have two sets of profiles for electric vehicles:

The load profiles that we created a while ago. These profiles describe the load that electric vehicles add to the network and contain raw kW values
The new set of availability profiles that are described in https://github.com/quintel/etdataset/issues/597#issuecomment-97725610. These indeed describe the minimum percentage of the battery that should be charged.

So far only the load profiles are on Ivy.

since I used the load profiles for an electric vehicle

It sounds a lot like you're treating the EV as a normal technology (with a capacity and load profile) and not a storage technology. Change the car technology "type" to generic and you'll see a load curve which matches the profile exactly.
But, if you do that, the car won't store any excess production from within the network.

It sounds a lot like you're treating the EV as a normal technology (with a capacity and load profile) and not a storage technology. Change the car technology "type" to generic and you'll see a load curve which matches the profile exactly.

Thanks for clarifying that @antw, I wasn't aware of this. @ChaelKruip pointed out that at some point he wants the user to be able to toggle between a storage / demand shifting mode and a mode without these features.
I will upload the availability profiles to Ivy and test again with these profiles.
Closing this issue.


boost ver requirement?

Python bindings do not require Boost 1.63 anymore (since we use NumPy C bindings instead of the Boost.NumPy).
Should we relax the requirement in cmake/findDependencies.cmake?
(I remember that there was something requireing a recent version in the C++ vinecopulib code, but I don't remember what it was and what the version was)
Finally, if 1.63 is not required, perhaps we can skip the Ubuntu update in travis?

Concerning relaxing the requirement: Thomas suggested the same at some point. However, when he tried to change the requirement and compile the library with an older version (and without the Python bindings), it didn't work, so we stuck with 1.63. Any way you could check which version is required and update this?

Concerning skiping the Ubuntu update: it 1.63 is not required, sure!

There was a bug in the minimum spanning tree until boost 1.54. Anything after that should work (although I thought that I had 1.55 when I found the bug, so we may need to try a few version).

I checked this now, 1.55 is not working but everything since 1.56 does. If The python bindings don't require a particular version, I suggest we lower the requirements 1.56.

I changed it in c802b15bd451ba45d2f2b31c86e8ad845fbea4c7. Unfortunately, Ubuntu trusty does not distribute versions larger than 1.54, so I didn't change the travis setup.


Hello World

https://pbdays.github.io/post/hello-world?code=4c6d5264fd38877fb5ca
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the ...

测试


feat: add possibility to disable resources creation

what

add possibility to disable resources creation

why

useful for multi-workspaces terraform projects

@osterman would be nice to get code review

/rebuild-readme

@SweetOps Can you resolve these conflicts? Thanks man.

@Gowiem fixed
btw, I've several open PR's in others repos which are stuck... would be to merge them also
https://github.com/cloudposse/terraform-aws-route53-cluster-zone/pull/27
https://github.com/cloudposse/terraform-aws-ec2-instance-group/pull/10
https://github.com/cloudposse/terraform-aws-dynamic-subnets/pull/87

/test all

/terraform-fmt

/test all

@SweetOps Thanks for the contribution! Released as 0.14.0.

@SweetOps Regarding your other PRs, we'll get to em as fast as we can 😄


Problem with Jenkins installation

Expected Behaviour
the init container should work correctly after arkade install jenkins
Current Behaviour
If i try to install Jenkins with 'arkade install jenkins' the init container fails to start with the error message in the init container log:
exec user process caused “exec format error”
Are you a GitHub Sponsor (Yes/No?)
no
Check at https://github.com/sponsors/alexellis

[ ] Yes
[X] No

Possible Solution
After some research is saw that the jenkins install with arkade doesnt support ARM. It was also stated in the following issues descreption:
https://github.com/alexellis/arkade/pull/90
it would be nice to add some hint in the readme for this. Best would be a way to install jenkins via arkade also on ARM Architecture
Steps to Reproduce (for bugs)

Install Arkade via git bash on windows maschine
create a cluster with k3sup on a linux node
try to install jenkins via arkade install jenkins
check init container logs

Context
I want to use jenkins in my cluster
Your Environment

What Kubernetes distribution are you using?

Client Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.0", GitCommit:"af46c47ce925f4c4ad5cc8d1fca46c7b77d13b38", GitTreeState:"clean", BuildDate:"2020-12-08T17:59:43Z", GoVersion:"go1.15.5", Compiler:"gc", Platform:"windows/amd64"}
Server Version: version.Info{Major:"1", Minor:"19", GitVersion:"v1.19.12+k3s1", GitCommit:"559d0c4729493b62e4cda02f85ea3c3a5c3d7428", GitTreeState:"clean", BuildDate:"2021-06-21T20:31:37Z", GoVersion:"go1.15.12", Compiler:"gc", Platform:"linux/arm"}

Operating System and version (e.g. Linux, Windows, MacOS):

See in "steps to reproduce" and:
Windows 10 (Arkade installed):
MINGW64_NT-10.0-19042 DESKTOP-40KGGHO 3.1.7-340.x86_64 2020-10-23 13:08 UTC x86_64 Msys
Linux Node:
PRETTY_NAME="Raspbian GNU/Linux 10 (buster)"
NAME="Raspbian GNU/Linux"

What arkade version is this?

0.7.22

AFAIK Jenkins is not supported on Raspberry Pi.
@developer-guy or @nitishkumar71 or @dirien could one of you please ensure that there's an if guard to prevent installation on aarchv7?
Thanks

Ok, thank you for your time. So i need to find another solution.

Hi @GinjiJizai , there are two ways to get this fly:
using the set in arkade to change all the imags to jenkins4eval type eg ->https://hub.docker.com/r/jenkins4eval/jenkins/tags?page=1&ordering=last_updated
--set controller.image: "jenkins4eval/jenkins"
--set controller.tag: "2.291-slim"
--set contoller. numExecutors:  4 (or how much executors you want)

According to the offical roadmap of jenkins (https://www.jenkins.io/project/roadmap/) ARM support is anounced for near term

@dirien could you add an if statement to block installation? So the reverse of this: https://github.com/alexellis/arkade/commit/50d374dec9579a874c6e1e0cb118b994c35bcd4a
Is there an image for ARM64, but not ARM32?
Alex

Hi @dirien
it worked with this image, thank you :)

@alexellis: done


Missing Properties like ContentLenght, ContentType

Who will add properties here like ContentLenght, ContentType.. etc

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

@StingyJack  - Are you saying I every time write negative comments/feedback?

No, you asked a question and I gave examples of answers to that question. No more, no less.

@StingyJack - You are writing poetic response. Still not able to understand. Even I asked the same question on English language learners forums
https://ell.stackexchange.com/questions/183397/meaning-of-like-a-heartbeat-keepalive-or-other-static-monitoring-system?noredirect=1#comment363693_183397

If a program named "Program1" is very important and must be executing all the time, sometimes a different program named "Program2" is created to inquire " Program1 every 5 minutes and report back to a user if Program1 is not running.
Every time Program2 makes this request to Program1, the message it sends is "Are you alive?".   That message is always the same length.

Who will add properties here like ContentLenght, ... [to the DefaultRequestHeaders]?

Program2 will, as its a static monitoring system.

Hi, @arvindrajachourasiya. Thanks for filing this issue, and my apologies for the extremely long delay in responding.
I've read the thread, and it looks like there's no action items for the documentation itself. I'll go ahead and close the issue, but please reopen it (or, better, create a new one) with details about what changes need to be made to the documentation.
Thanks again!
Steve


Presets.json reverts back

if I change something in presets.json and reboot the container, my changes are reverted back... is this by design?
I have it automated with watchfolders and need it to pick up multiple languages for audio.

It should not... did you mapped the /config folder properly?

yes. it's mapped. If I create a new file, then the file stays.
I found that if I load a quality profile, then change some settings in gui, and then save it with a custom name, the profile is added to presets.json and it survives a reboot of the container.
so it appears that changes to the default profiles are overwritten.

From the UI, it's clear that once you modify an "official" preset, you need to save it has a new one.
However, I tried to manually change some official preset settings in presets.json (/config/ghb/presets.json) and the changes survived a container restart...

Once imported, are your presets saved in /config/ghb/presets.json?

Yes, but it looks to have resolved itself now...

I'm running into this issue now. I was able to add some custom presets into the presets.json file and it survived the container restarting. Now though, every time I restart it, the presets revert back to the default and my watch folders break since the presets they are setup to use are not there.

How are you adding presets to the file ?