updateAccountPermissions fail Failed to sign transaction: Invalid transaction provided

    async AccountPermissionUpdate(){

        try {

              let ownerPermission = { type: 0, permission_name: 'owner' };
            ownerPermission.threshold = 2;
            ownerPermission.keys  = [];

            let activePermission = { type: 2, permission_name: 'active0' };
            activePermission.threshold = 2;
            activePermission.operations = '7fff1fc0037e0000000000000000000000000000000000000000000000000000';
            activePermission.keys = [];
            console.log('account:',this.value); //this.value is the default address

            ownerPermission.keys.push({ address: this.value, weight: 1 });
            ownerPermission.keys.push({ address: 'TKPQvfHQnPyEhqfebfqaUrz9FaJ2Zsnty8', weight: 1 });
            activePermission.keys.push({ address: this.value, weight: 1 });
            activePermission.keys.push({ address: 'TKPQvfHQnPyEhqfebfqaUrz9FaJ2Zsnty8', weight: 1 });

            let tx = await tronWeb.transactionBuilder.updateAccountPermissions(this.value, ownerPermission, null, [activePermission]);

            let signedTxx = await tronWeb.trx.sign(tx);

            let broastTx = await tronWeb.trx.sendRawTransaction(signedTxx);

        } catch (error) {
          console.log(error);
        }

    }

catch error Failed to sign transaction: Invalid transaction provided

Tronlink does not support updateAccountPermissions transaction by now. You can instantiate your own tronweb instance and sign.

Please check the operation string: '7fff1fc0037e0000000000000000000000000000000000000000000000000000', it seems like it's not valid.

address parameter in permission.keys should be in hex format.
-   ownerPermission.keys.push({ address: this.value, weight: 1 });
-   ownerPermission.keys.push({ address: 'TKPQvfHQnPyEhqfebfqaUrz9FaJ2Zsnty8', weight: 1 });
-   activePermission.keys.push({ address: this.value, weight: 1 });
-   activePermission.keys.push({ address: 'TKPQvfHQnPyEhqfebfqaUrz9FaJ2Zsnty8', weight: 1 });
+   ownerPermission.keys.push({ address: tronWeb.address.toHex(this.value), weight: 1 });
+   ownerPermission.keys.push({ address: tronWeb.address.toHex('TKPQvfHQnPyEhqfebfqaUrz9FaJ2Zsnty8'), weight: 1 });
+   activePermission.keys.push({ address: tronWeb.address.toHex(this.value), weight: 1 });
+   activePermission.keys.push({ address: tronWeb.address.toHex('TKPQvfHQnPyEhqfebfqaUrz9FaJ2Zsnty8'), weight: 1 });

Sorry for any inconvenience . We will update our documentation.

Only hexstring is supported for the address, not in base58 format.


Very slow when using a boat (at least half speed, maybe slower)

Minecraft Version: 1.16.3
Forge Version:
Mod Version: 1.16.3-1.0.5
Single Player or Server: Single Player
Describe problem (what you were doing; what happened; what should have happened):
When using a boat, the player moves very slowly. At least half the speed of what you get if you just hold down the W key to move forward. (Moving forward using the W key like normal works at normal speed, it's only when using the hot key for this mod that it moves so slowly.)
Log file link:
Video/images/gifs (direct upload or link):

Fixed in 1.16 here. Also new config file exists https://www.curseforge.com/minecraft/mc-mods/auto-sprint/files/3183048

Fixed in 1.16 here. Also new config file exists https://www.curseforge.com/minecraft/mc-mods/auto-sprint/files/3183048


chore: preallocate a list of addresses

What type of PR is this?

What this PR does / why we need it:
We can always compute how many items gwAddresses will get.
No reason not to preallocate it for a better performance then.
Which issue(s) this PR fixes:

Fixes #

/retest


sort list

How can i sort the list of the event by the name and not by the time?

There is a built in function that sorts all events by date and not by name. In order to change this you have to edit the source code. Below is a link to the section of source code you would have to change in order to sort the events.
Source Code:
https://github.com/Serhioromano/bootstrap-calendar/blob/master/js/calendar.js#L991-L998


types - polka.use not compatible with express.RequestHandler

polka().use(compression({ threshold: 0 }) gives me a red squiggly in VS Code. You can see it by opening up SvelteKit's packages/adapter-node/src/server.js in VS Code. compression returns a express.RequestHandler.

The types will never line up. That's okay. Use as Middleware or ts-ignore it.
They're different libraries with different amount of signatures and type hints.

The types lined up with the types from DefinitelyTyped on an older version of Polka, so I thought it should be possible


file compilation doesn't work for chez

Emacs shows "Wrong type argument" if I try "Compile and load current buffer" with chez.
I fixed this problem
https://github.com/maruks/geiser/commit/23bc15197dfed3773283b2cacbda47678635f22a

I sent you pull request

fixed by #241, closing


[Feature]Support for Ray 1.12.0 ?

[Feature]Support for Ray 1.12.0 since it is officially released ?

It seems like 1.12.0 has not finalized. We'll see if we can support it with the latest patch. Thanks

@kira-lin 1.12.0 is now finalized . would you please officially support it ?

Hi @tianlinzx , we'll soon release 0.4.2 to support it. The PR is ready.

We have released 0.4.2, please reopen it if you still have issues.


Make client members protected, not private

This is cool -- would be great if anyone could extend a Client and add their own functions and that would be a part of the generated client

my thoughts exactly!


Failed to compile an int4 model

What happened?
With #14488 landing, #14481 was fixed, we got expected results for the int4 unit test and a single layer example. But now getting a iree compilation error for the whole vicuna model. I extracted the dispatch which causes the error.
https://gist.github.com/jinchen62/575746e509ffb9e7d628953796295a88

error: 'memref.alloca' op expected no unbounded stack allocations

Could you please take a look? @MaheshRavishankar @hanhanW @benvanik
CC: @qedawkins @powderluv
Steps to reproduce your issue
iree-compile --iree-hal-target-backends=llvm-cpu dispatch_4.mlir
What component(s) does this issue relate to?
No response
Version information
No response
Additional context
No response

Also get errors for these dispatches.
https://gist.github.com/jinchen62/ef9d09696b5261562ed29e3be6cc1192

error: failed to legalize operation 'memref.subview' that was explicitly marked illegal

https://gist.github.com/jinchen62/962283dd39c892b212228dad3c2a2ecd

error: failed to legalize operation 'memref.subview' that was explicitly marked illegal

https://gist.github.com/jinchen62/ebc15c9bf28985f2544a2f539c4a5f10

error: 'memref.alloca' op expected no unbounded stack allocations

Hi @hanhanW, I would love to take a stab at it, would be nice if you could give me some guidance.

Isn't there a flag to disable the unbounded stack alloc check ?

Yes, but this is an error. My guess is that the bounds check is failing to find the static size. I haven't looked at the IR after each pass, but it's all a single generic op. It's probably a missing folding cause there is no fusion that might trigger a stack allocation

Adding --iree-llvmcpu-fail-on-out-of-bounds-stack-allocation=false does skip the memref.alloca error, but think it still needs a proper fix. For the memref.subview error, I tried adding it as a legal op in the EmulateNarrowTypePass and got

error: failed to legalize unresolved materialization from 'memref<64x64xi4, strided<[128, 1], offset: ?>>' to 'memref<64x64xi8, strided<[128, 1], offset: ?>>' that remained live after conversion

I will take a look at it today, and will post what I found to the issue. Thanks for helping it!

We can probably fix the issue, but the dispatch looks weird to me. IMO, it's better to fix it before dispatch formation.
So this is a gather case on filled tensor. The value in %8 is always true, and what the computation does is extracting a value from %8 (which is always a constant scalar true value). I think this kind of input should be tuned before dispatch formation. What it wants is just creating a dense<1.0> constants with dynamic shape (i.e., tensor<?x?xf32>).
      func.func @first_vicuna_forward_dispatch_4_generic_DxD_f32() {
        %c0 = arith.constant 0 : index
        %true = arith.constant true
        %0 = hal.interface.constant.load[0] : i32
        %1 = hal.interface.constant.load[1] : i32
        %2 = arith.index_castui %0 : i32 to index
        %3 = arith.index_castui %1 : i32 to index
        %4 = flow.dispatch.workload.ordinal %3, 0 : index
        %5 = hal.interface.binding.subspan set(0) binding(0) type(storage_buffer) alignment(64) offset(%2) : !flow.dispatch.tensor<writeonly:tensor<?x?xf32>>{%4, %4}
        %6 = tensor.empty(%4, %4) : tensor<?x?xf32>
        %7 = tensor.empty(%4) : tensor<1x1x1x?xi1>
        %8 = linalg.fill ins(%true : i1) outs(%7 : tensor<1x1x1x?xi1>) -> tensor<1x1x1x?xi1>
        %9 = linalg.generic {indexing_maps = [affine_map<(d0, d1) -> (d0, d1)>], iterator_types = ["parallel", "parallel"]} outs(%6 : tensor<?x?xf32>) {
        ^bb0(%out: f32):
          %10 = linalg.index 1 : index
          %extracted = tensor.extract %8[%c0, %c0, %c0, %10] : tensor<1x1x1x?xi1>
          %11 = arith.uitofp %extracted : i1 to f32
          linalg.yield %11 : f32
        } -> tensor<?x?xf32>
        flow.dispatch.tensor.store %9, %5, offsets = [0, 0], sizes = [%4, %4], strides = [1, 1] : tensor<?x?xf32> -> !flow.dispatch.tensor<writeonly:tensor<?x?xf32>>{%4, %4}
        return

I know that we are not able to create a dynamic constant. My point is that this should at least be lowered like something below?
%cst = arith.constant 1.0 : f32
%6 = tensor.empty(%4, %4) : tensor<?x?xf32>
%fill = linalg.fill ins(%cst: f32) outs(%7 : tensor<?x?xf32>) -> tensor<?x?xf32>

@jinchen could you help check how we get these ops generated on frontend side?
(I can put in more context if we want to fix it on codegen side.)

heh yeah that's just a dynamic splat - I think it'd be useful to look at what's consuming it - this should never be materialized in memory (unless it's being returned from the program or something).

We can probably fix the issue, but the dispatch looks weird to me. IMO, it's better to fix it before dispatch formation.
So this is a gather case on filled tensor. The value in %8 is always true, and what the computation does is extracting a value from %8 (which is always a constant scalar true value). I think this kind of input should be tuned before dispatch formation. What it wants is just creating a dense<1.0> constants with dynamic shape (i.e., tensor<?x?xf32>).
      func.func @first_vicuna_forward_dispatch_4_generic_DxD_f32() {
        %c0 = arith.constant 0 : index
        %true = arith.constant true
        %0 = hal.interface.constant.load[0] : i32
        %1 = hal.interface.constant.load[1] : i32
        %2 = arith.index_castui %0 : i32 to index
        %3 = arith.index_castui %1 : i32 to index
        %4 = flow.dispatch.workload.ordinal %3, 0 : index
        %5 = hal.interface.binding.subspan set(0) binding(0) type(storage_buffer) alignment(64) offset(%2) : !flow.dispatch.tensor<writeonly:tensor<?x?xf32>>{%4, %4}
        %6 = tensor.empty(%4, %4) : tensor<?x?xf32>
        %7 = tensor.empty(%4) : tensor<1x1x1x?xi1>
        %8 = linalg.fill ins(%true : i1) outs(%7 : tensor<1x1x1x?xi1>) -> tensor<1x1x1x?xi1>
        %9 = linalg.generic {indexing_maps = [affine_map<(d0, d1) -> (d0, d1)>], iterator_types = ["parallel", "parallel"]} outs(%6 : tensor<?x?xf32>) {
        ^bb0(%out: f32):
          %10 = linalg.index 1 : index
          %extracted = tensor.extract %8[%c0, %c0, %c0, %10] : tensor<1x1x1x?xi1>
          %11 = arith.uitofp %extracted : i1 to f32
          linalg.yield %11 : f32
        } -> tensor<?x?xf32>
        flow.dispatch.tensor.store %9, %5, offsets = [0, 0], sizes = [%4, %4], strides = [1, 1] : tensor<?x?xf32> -> !flow.dispatch.tensor<writeonly:tensor<?x?xf32>>{%4, %4}
        return

Good catch!

@hanhanW I wonder which error you are referring to.
When I compared with int8 case I got same memref.alloca error if I compile it without any flag, but actually shark compile it with --iree-vm-target-truncate-unsupported-floats --iree-codegen-check-ir-before-llvm-conversion=false --iree-vm-bytecode-module-output-format=flatbuffer-binary and int8 works well. With those flags I don't get that error for int4, so I think the memref.alloca one is fine.
And I believe the memref.subview error is coming from the EmulateNarrowTypePass.

I'm referring to dispatch_4, and the error is error: 'memref.alloca' op expected no unbounded stack allocations. I can look into other failures tomorrow. It would be good if we can file the issues separately, so the comments won't be interleaved. For this issue, let's scope it to dispatch_4 error. What do you think?

Actually I think we don't need to worry about the memref.alloca error now, I tested and it won't be a matter for the compilation through shark. Could you please take a look at the other error? I will open a new issue.

We might be missing a fold of the memref.subview... @jinchen62 since you have the context here easiest way to triage is to post IR before and after the pass that fails.

Is this fixed ? Can we close it if we have landed the fix ?

I think we can close this since the stack allocations is not an issue and #14567 is open.


Make patch releases: 1.1.20 and 1.2.1.

We've accumulated a few important bugfixes since the releases of 1.1.19 and 1.2.0. I just finished propagating those bugfixes to release/1.1.x and release/1.2.x branches. At this point, all we need to do to make the new releases is described in PROCEDURES.md.
@SteveDiamond could you please try to make the release of 1.1.19? If that goes well then you can go ahead and do 1.2.1 as well. If you run into issues then we can discuss them here. I think it's valuable for more than one project maintainer to have hands-on experience with the release procedures.

Success! The new process is very simple/clean!!

Thanks again to @phschiele for doing a great job setting up CI and deployment infrastructure!


Explosions occasionally don't respect claims

Sometimes, when a mob explodes or an untrusted player sets off TNT in/around your claim, the explosion is allowed despite the explosion and explosion surface flags being set to false in the claim. The effect is very noticeable if a player creates a large ball of TNT outside your claim and sets it off.
I'm running SF 1.12.2-2705-7.1.0-BETA-3361 and GP 1.12.2-<IP_ADDRESS>3.

I created a wall of logs at the edge of a claim and a dense ball of TNT which I lit off. Most of the logs weren't affected, but a large chunk at the bottom of the wall was.
https://griefprevention.github.io/debug/?vVexqVJu4B
I still need to test this having an untrusted non-admin player set off the TNT, though.

Please retest with GP 677+ and latest SF.

Unable to reproduce with GP 677+ and latest SF.

Thanks for testing this!


Service doesn’t recognize renamed file

Chrome saves files by adding the extension .crdownload to the file and renaming it to the original filename after finishing the download.
The service doesn’t recognize this file.

just a heads up:
will probably resolve this "issue" this weekend. maybe earlier, depending on my time & mood ;)

also: i wouldn't necessarily call this a bug. Detecting files works, detecting files that have been renamed in that directory is a new feature imo

also: i wouldn't necessarily call this a bug. Detecting files works, detecting files that have been renamed in that directory is a new feature imo

In my opinion it depends on the point of view.
From a developers point of view – yes, this is a feature.
From customer’s point of view – the customer is saving a file from the web and the service doesn’t recognizes it. So the customer would call it a bug.

yeah you're right about this one, let's just call it a bughancement 🌚


Move github.com/grafana/loki/pkg/util.WriteJSONResponse here

Used by loki and enterprise-metrics (formerly backend-enterprise)

tracking in https://github.com/grafana/backend-enterprise/issues/2488


OAK-10803 -- compress/uncompress property

I believe the main concern is that we don't know yet exactly why we are doing this. IMHO it would be better to first collect data on the size of the properties.

looks like the original intention was that properties shouldn't or wouldn't be used as keys in hash maps... if that's the case then it should be fine..

WRT to this PR we should just ensure that compression does not affect how MongoDS currently behaves.

Why is this a MongoDB specific aspect? For MongoDB we know it is not supported (see this skip here) - but for RDB it is supported. So shouldn't this PR keep the support for RDB?

Why is this a MongoDB specific aspect? For MongoDB we know it is not supported (see this skip here) - but for RDB it is supported. So shouldn't this PR keep the support for RDB?

I believe we should come up with consistent behaviour for all types of persistences. My preference would be to disallow Strings with broken UTF-8 serializations, but that would be a change for segment persistence, and that's why I faced resistence when I proposed that back then.
For this PR, it will have to handle what the current system allows.

With the default set to disable compression, in theory this PR shouldn't do no harm and could be merged, as changing the default is a conscious decision that could be done based on the requirement of the system and which DocumentStore is used.
Having said that, I think the current state of testInterestingStrings isn't ideal, as it lists a broken surrogate in a test string, but then doesn't test it. So I'd say either it uses that broken surrogate in a test, or then shouldn't list it at all. Except, I think now that this problem with broken surrogate was identified, we need to address it, so we probably should have it in the test indeed.
What we might do is have the test use different DocumentStore fixtures and test on memory, mongo and rdb with the broken surrogate property and verify that the behavior with or without compression is the same.
That could mean that for mongo the fact that compression doesn't support broken surrogates turns out as a non-issue as mongo already doesn't support it. It would just be good to have a test that verifies that.
For RDB it could be different: it could mean that if you want to use compression for RDB you'd have to accept that broken surrogates are not supported (unless we find a fast way to support it in compression).

@reschke @reschke I created methods to check the behavior with broken surrogate before and after introducing compression. After compression the test failed.

bq. For RDB it could be different: it could mean that if you want to use compression for RDB you'd have to accept that broken surrogates are not supported (unless we find a fast way to support it in compression).
The elephant in the room is segment persistence, which IMHO allows any Java string. I don't believe discussing the differences of document store backends is helpful here; we should come to an agreement what the expections for Oak in general are. Having document store and segment store behave differently IMHO is a problem we should solve (by fixing segment store, would be my preference).

Turns out that it might look slightly different altogether:
In the latest test from @ionutzpi where it passes a broken surrogate through NodeBuilder (except it shouldn't also go via DocumentPropertyState there), it can be seen that when it applies a property to the commit, as part of persist / compareAgainstBaseState, it does go through JsonSerializer, which handles broken surrogates properly.
So in short : DocumentNodeStore does actually handle broken surrogates in property values fine.
What I think happened in that original testInterestingStrings, is that it the DocumentStore API directly - instead of the DocumentNodeStore API...
Wrt this PR I think there are a few things still open though :

beautify the newly introduced tests - they have a few issue, namely :

getBrokenSurrogateAndInitializeDifferentStores calls createPropAndCheckValue 3 times dependent on the DocumentStore used, except there's no difference between the 3 calls, can do that in 1 call.
the way it uses the fixture is different from how it is classically done through a parameterized test. either I'd suggest to consider a parameterized test (where it would dispose the fixture at the end) or make sure to dispose the store/documentNodeStore created. The way it is done now leaves the DocumentNodeStore undisposed, which means follow-up tests hit an active lease and wait for lease expiration, which extends the test unnecessarily
createPropAndCheckValue as mentioned should go via DocumentPropertyState when setting the property value. that is not how it happens in existing code. DocumentPropertyState is only used for reading. Writing happens via builder which uses things like ModifiedDocumentNodeState, goes via jcr ValueImpl, StringPropertyState etc.

additionally though I believe there is a bigger issue : also based on the new test, when debugging through compression/decompression it can be seen that immediately after a DocumentPropertyState is created and with compression the value is compressed, it goes ahead and wants to put it into the cache and for that wants to know its size, so it goes an calls parsed() - several times - as part of which it calls decompression - several times. I think this highlights a bigger problem, that we should see if/how compression is performant. It seems the way it is now would add a lot of decompression overhead. This needs further improvement in my view.

wdyt?


split integration and unit tests

Well, the title says all. This splits the tests into unit tests (run on every build) and integration tests.
This should allow us to develop and run basic unit tests without the need for a meilisearch instance.
i'm not yet satisfied with that solution, maybe remove the test Classpaths.
/discuss

Hello @niemannd !
I'm not sure I understand something, when you say

This should allow us to develop and run basic unit tests without the need for a meilisearch instance

do you plan to use a mock server response for testing?
In the rest of SDKs development, we often use a MeiliSearch running instance for testing, and there's no separation between unit tests and integration tests, they are all the same. I think the process is fast and quite simple. I personally prefer to use a docker image for testing and the process is quite simple. When I'm doing a PR, I'm quite sure tests will succeed, as I did run the same tests locally just before.
So I'd be really happy to read what this approach will add for development / contribution from your point of view :)

do you plan to use a mock server response for testing?

I plan to mock class dependencies in unit tests.
This way we dont write classes that only work with a specific implementation of a dependency and rather just need a specific behaviour.
Example: We want to test the Documents class. This class uses the MeiliSearchHttpRequest class. In our unit test we dont want to test the MeiliSearchHttpRequest class, just the behaviour. This behaviour is "method get(...) returns the response body as string".
This way the mock would just need to return a string we define, nothing more. Makes testing specific cases much easier.
Unit tests basically describe what behaviour we expect from our class dependencies. I dont need to rely on 100% bug-free implementations of class dependencies. I dont need to rely on a live instance of meilisearch. Integration tests exist to test that our defined behaviour matches the real behaviour.
A side effect of mocking most class dependencies is that your code becomes more modular because you have to design your classes to allow mocking. Look at the Documents class for example. To unit test this class, i would have to mock the MeiliSearchHttpRequest class. The way the class is written this is currently not possible.

Thanks for the explanation @niemannd !
This would be really interesting, as you point out, for making tests more atomic and independent, and can make development easier, even if at the same time it introduces more work as the mocked behaviors sometimes need to be maintained/updated.
It is really important, though, that we have a reliable integration set to check that everything is running smoothly for the whole SDK on the CI at integration time.
Great! :)

I'm working on an integration tests PR https://github.com/meilisearch/meilisearch-java/pull/32, running docker on the CI. I'll try to merge it very soon, is it ok if you rebase your branch on it and split the tests?

sure

Regarding my last commit: I reworked the integration test setup a little bit, now using Tag Annotations provided by JUnit to seperate integration tests from the unit tests. This way we dont need a second SourceSet.
I also learned that i shouldn't use the at symbol in commit messages. Sorry Tom :)


Support multiple signatures in identity branch commits

To handle projects with multiple delegates, commits on the identity branch should support multiple gpgsig headers.
We have to be able to:

Encode/decode the ssh armored signature format
Add signature to a commit, before writing it to the ODB
Verify histories with multiple signatures

Related to #126

This is done, right? Or what are we missing?

Yes, I think so... They are trailer signatures though, correct?

Oh you're right. I'll take this on then and switch over to using git-commit :) I'll also fix up that issue we had in git-commit not checking the parent Oids

Oh wait, you're assigned 😅

Aggregating commits over the blobs means we should be able to add the signatures to the commit, right? Otherwise, we'd have a chicken and egg problem where we would need the commit but can't add the signatures :)

Ah but the thing is, gpgsig headers are supposed to be signatures over the commit hash, not the blob..

It is a subset :), It's the commit object minus any gpgsig header that is signed.

Ok, so I guess the question then is, do we want to keep using trailers and sign the blobs or do we want to redesign signatures to figure out if we can use the gpgsigs instead? :)

I'd say trailers is fine... we have the code and it works. Unless you can think of a straightforward way of using headers..

Ya, I'd agree and nothing that comes to mind immediately. It might be possible since we're gathering signatures out-of-band anyway so we could probably predict the commit object.
Should we kick this out of the 1.0 milestone?

Yup!

Actually, we should close it no? It's mainly about multisignatures, not so much where those signatures are stored.

Ya sounds good! Closed via https://github.com/radicle-dev/heartwood/pull/192


Make it clearer in Get started that Nunjucks isn't required

What
We had feedback from a user who thought that the Setup guide for production makes it sound like you'll need to use Nunjucks to use the Design System
Here are some sections of that page we could try to improve:
1. Lists under installation instructions
Both Option 1 and Option 2 include the phrase

use the component Nunjucks templates

I wonder if we could consider doing something like

use the component Nunjucks templates (optional)

to try to clarify this?
2. 'Using Nunjucks macros' section
We also have quite a lot about Nunjucks further down the same page in Using Nunjucks macros. It feels like this section could do with a bit of context to explain that Nunjucks is optional.
Why
We don't want our users to think that they will need use the Nunjucks macros to use the Design System.
Who needs to know about this
Mark

To clarify, I was that user.
I was fully aware that using Nunjucks in production was optional, but I was really struggling to reconcile your guidance that js should only be used for progressive enhancement whilst also suggesting that Nunjucks could/should be used in production.
There's no reference in any of the design system docs of how to reconcile those opposing suggestions, or that the Nunjucks templates are really only intended for prototypes and that production systems are expected to re-implement the html themselves.

Hi @mgladdish - you can use Nunjucks in production whilst still following the guidance to use JavaScript as a progressive enhancement.
For example, the GOV.UK Pay team does this in their service frontend app (https://github.com/alphagov/pay-frontend), compiling Nunjucks on the server before sending the HTML to the client.

We also have quite a lot about Nunjucks further down the same page in Using Nunjucks macros. It does feel like this section could do with a bit of context to explain that Nunjucks is optional.

Both Option 1 and Option 2 include the phrase

use the component Nunjucks templates

I wonder if we could consider doing something like

use the component Nunjucks templates (optional)

to try to clarify this?

All of the things in the list are optional, so I'm not sure this makes sense.
However, it's not true that if you install using npm you will be able to use the Nunjucks templates – that's only true if your environment supports it.
What if we added something like this (I've also changed 'templates' to 'macros' to be consistent):

Using this option, you will be able to:

selectively include the CSS or JavaScript for individual components
build your own styles or components based on the palette or typography and spacing mixins
customise the build (for example, overriding colours or enabling global styles)
use the component Nunjucks macros, if your environment supports it

We also have quite a lot about Nunjucks further down the same page in Using Nunjucks macros. It feels like this section could do with a bit of context to explain that Nunjucks is optional.

I think this is there to explain what the 'Nunjucks' tab in the code examples is for. Could we move (and improve!) the setup instructions to the Frontend docs, and then simplify it?

Using Nunjucks macros
Nunjucks macros generate HTML based on the options that you pass it, taking care of things like linking form labels to their controls. Using macros make it easier to keep your application up to date, as when you update GOV.UK Frontend the macros will automatically use the latest markup.
You can use Nunjucks macros as long as your application is written in JavaScript and any frameworks that you are using support it.
You can also use Nunjucks macros in the Prototype Kit.
Read more about configuring Nunjucks to work with GOV.UK Frontend macros.

If we want to keep the scope of this work a bit smaller, we could link to the Nunjucks documentation that's currently buried in the page template guidance.

@36degrees Thanks for looking at this.

use the component Nunjucks macros, if your environment supports it

This sounds good to me.

Using Nunjucks macros
Nunjucks macros generate HTML based on the options that you pass it, taking care of things like linking form labels to their controls. Using macros make it easier to keep your application up to date, as when you update GOV.UK Frontend the macros will automatically use the latest markup.
You can use Nunjucks macros as long as your application is written in JavaScript and any frameworks that you are using support it.
You can also use Nunjucks macros in the Prototype Kit.
Read more about configuring Nunjucks to work with GOV.UK Frontend macros.

This sounds good as well. I think what is missing for me (and which might be beyond what we can do here) is a section for HTML:

Using HTML
You can use the HTML versions of GOV.UK Frontend styles and components in any development environment.
You need to manually update the HTML when there is a breaking release to GOV.UK Frontend - the release notes will detail any changes you will have to make to your HTML.

Guidance updates are ready for review! There are 2 PRs but I can't link one of them so here they are:

https://github.com/alphagov/govuk-frontend-docs/pull/67 (Frontend docs)
https://github.com/alphagov/govuk-design-system/pull/1311 (Design System)


Extension doesn't disable/update VSCode's built-in TS language features for TSConfig intellisense

Given a sample simplified TSConfig:
{
    "compilerOptions": {
        "lib": [
            "ES2024.Collection"
        ]
    }
}

I am given a warning from the built-in "TypeScript and JavaScript Language Features" (Confirmed by running VSCode under "Reload with all extensions disabled") intellisense:
Value is not accepted. Valid values: "ES5", "ES6", "ES2015", "ES2015.Collection", "ES2015.Core", "ES2015.Generator", "ES2015.Iterable", "ES2015.Promise", "ES2015.Proxy", "ES2015.Reflect", "ES2015.Symbol.WellKnown", "ES2015.Symbol", "ES2016", "ES2016.Array.Include", "ES2017", "ES2017.Intl", "ES2017.Object", "ES2017.SharedMemory", "ES2017.String", "ES2017.TypedArrays", "ES2018", "ES2018.AsyncGenerator", "ES2018.AsyncIterable", "ES2018.Intl", "ES2018.Promise", "ES2018.Regexp", "ES2019", "ES2019.Array", "ES2019.Intl", "ES2019.Object", "ES2019.String", "ES2019.Symbol", "ES2020", "ES2020.BigInt", "ES2020.Promise", "ES2020.String", "ES2020.Symbol.WellKnown", "ESNext", "ESNext.Array", "ESNext.AsyncIterable", "ESNext.BigInt", "ESNext.Collection", "ESNext.Intl", "ESNext.Object", "ESNext.Promise", "ESNext.Regexp", "ESNext.String", "ESNext.Symbol", "DOM", "DOM.AsyncIterable", "DOM.Iterable", "ScriptHost", "WebWorker", "WebWorker.AsyncIterable", "WebWorker.ImportScripts", "Webworker.Iterable", "ES7", "ES2021", "ES2020.SharedMemory", "ES2020.Intl", "ES2020.Date", "ES2020.Number", "ES2021.Promise", "ES2021.String", "ES2021.WeakRef", "ESNext.WeakRef", "ES2021.Intl", "ES2022", "ES2022.Array", "ES2022.Error", "ES2022.Intl", "ES2022.Object", "ES2022.String", "ES2022.SharedMemory", "ES2022.RegExp", "ES2023", "ES2023.Array", "Decorators", "Decorators.Legacy", "ES2017.Date", "ES2023.Collection", "ESNext.Decorators", "ESNext.Disposable".(1)

Things to note: No ES2024.* options listed.
However by running npx tsc --noEmit --lib invalid in a project with typescript@next (v5.7.0-dev.20241021) installed, it yields:
error TS6046: Argument for '--lib' option must be: 'es5', 'es6', 'es2015', 'es7', 'es2016', 'es2017', 'es2018', 'es2019', 'es2020', 'es2021', 'es2022', 'es2023', 'es2024', 'esnext', 'dom', 'dom.iterable', 'dom.asynciterable', 'webworker', 'webworker.importscripts', 'webworker.iterable', 'webworker.asynciterable', 'scripthost', 'es2015.core', 'es2015.collection', 'es2015.generator', 'es2015.iterable', 'es2015.promise', 'es2015.proxy', 'es2015.reflect', 'es2015.symbol', 'es2015.symbol.wellknown', 'es2016.array.include', 'es2016.intl', 'es2017.arraybuffer', 'es2017.date', 'es2017.object', 'es2017.sharedmemory', 'es2017.string', 'es2017.intl', 'es2017.typedarrays', 'es2018.asyncgenerator', 'es2018.asynciterable', 'es2018.intl', 'es2018.promise', 'es2018.regexp', 'es2019.array', 'es2019.object', 'es2019.string', 'es2019.symbol', 'es2019.intl', 'es2020.bigint', 'es2020.date', 'es2020.promise', 'es2020.sharedmemory', 'es2020.string', 'es2020.symbol.wellknown', 'es2020.intl', 'es2020.number', 'es2021.promise', 'es2021.string', 'es2021.weakref', 'es2021.intl', 'es2022.array', 'es2022.error', 'es2022.intl', 'es2022.object', 'es2022.string', 'es2022.regexp', 'es2023.array', 'es2023.collection', 'es2023.intl', 'es2024.arraybuffer', 'es2024.collection', 'es2024.object', 'es2024.promise', 'es2024.regexp', 'es2024.sharedmemory', 'es2024.string', 'esnext.array', 'esnext.collection', 'esnext.symbol', 'esnext.asynciterable', 'esnext.intl', 'esnext.disposable', 'esnext.bigint', 'esnext.string', 'esnext.promise', 'esnext.weakref', 'esnext.decorators', 'esnext.object', 'esnext.regexp', 'esnext.iterator', 'decorators', 'decorators.legacy'.

Things to note: ES2024.* options exist, including ES2024.Collection (casing irrelevant)
The ES2024.Collection lib, as linked, adds Map.groupBy, which I can verify that despite the built-in extension's warning, is successfully added in a .ts file in the project, and removed should I heed the warning and remove the lib entry.
Additionally, if I provide an actually invalid lib entry in the tsconfig, I get an actual error (instead of warning) from this extension, with the same proper message as the npx tsc command above, in accordance to the nightly TS settings.
Expected behavior: Suppress the warnings from the non-nightly built-in features if this extension is providing its own proper equivalents.
Environment
VSCode:
Version: 1.94.2 (user setup)
Commit: 384ff7382de624fb94dbaf6da11977bba1ecd427
Date: 2024-10-09T16:08:44.566Z
Electron: 30.5.1
ElectronBuildId: 10262041
Chromium: 124.0.6367.243
Node.js: 20.16.0
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.19045
typescript@next Extension:
Version: 5.7.2024.10.20
TypeScript: Select TypeScript Version command:
Selected: "Use VSCode Version (5.7.0-dev.20241020)"
There is no typescript package globally npm installed so there is no possible interference from such

The json gets validated using https://github.com/SchemaStore/schemastore/blob/master/src/schemas/json/jsconfig.json
We typically only update this when the TypeScript release is stabilized. Until then you can ignore the error and the value still should be respected
Moving to TS to see if they want to change this process based on this feedback

Ignoring the error is definitely possible and it will still work fine as I've tested yes, personally I opted for using ESNext.Collection, instead as a way to trick it (being aware it has a few extra things but that's fine to me) but it's still a subpar experience for typescript@next users.
I suppose with this new information this becomes a kind of feature request, for the addition of a "tsconfig-next.json" variant of the JSON schema that IDEs like VSCode could then pick accordingly based on the TS version in use?

This is the first feedback we've gotten on this and it doesn't seem like a blocker. It's fine to send a PR to SchemaStore early if you'd like though

Without version distinction in the SchemaStore (as far as I can see) would that not simply create the reverse issue, where non-next users will see in their dropdowns the option for values they can not yet use, erroring later in the CLI? I suppose that sounds less annoying than an irremovable false-error, but neither seems desirable?


Confirm Dialog: Text wrapping

Description
The confirm dialog should wrap text on its default width to avoid:

If you create a confirm dialog with very long text it will scroll vertically.
Type of Issue

✅ Bug

Is it in a plugin with additional/missing css?
this is what I am getting within confirm dialog when I paste something very long:

I use firefox, might be a browser difference.

Closed as unable to reproduce.


Bumped deptry to 0.12.0 and updated configuration (PACMAN-650)

Checklist
See https://github.com/fpgmaas/deptry/releases/tag/0.12.0

Summary
Please describe your proposed PR and what it contains.
Impact
Please describe impact of your PR and it's function.
Related links
Please provide links to related issue, PRs etc.

@fpgmaas Thank you so much for the update!
it's on the main branch now: https://github.com/espressif/idf-component-manager/commit/66dd9a872eff3f8076afd50f7a535275f9effa0f
I had to rebase it to remove an extra newline our internal CI complained about.


New collective NavBar migration strategy

The new navbar has some breaking changes in the way we store sections. To deploy the feature without hassle, we should:

Deploy a flexible code that displays the new navbar when using new sections format (settings.collectivePage.useNewSections) or the old navbar otherwise, without looking at the NEW_COLLECTIVE_NAVBAR feature flag. We may want to entirely remove NEW_COLLECTIVE_NAVBAR at this stage.
Wait for ~1day to make sure "everyone" is running this new code
Migrate all sections to new format from the API
Remove all code related to legacy sections format
Check spacing between sections in the collective page

Sounds good to me 👍

Let's chat tomorrow morning and see how close we are to this @Betree

1 & 2 are done. We will iterate on 3 + 4 once we're sure that no rollback is needed. We can already start 5.

1 & 2 are done. We will iterate on 3 + 4 once we're sure that no rollback is needed. We can already start 5.

3 is done. 4 & 5 are now tracked in https://github.com/opencollective/opencollective/projects/42

3 is done. 4 & 5 are now tracked in https://github.com/opencollective/opencollective/projects/42


Changes Reflecting BAG3 Open Sourcing Updates

Changes have been made to reflect updates used in June 2022 and December 2022 tapeouts. This update is compatible with the newly released BAG3++, which is has a completely publicly available codebase.

The copyright headers should be fixed now, please let me know if there are other issues.

Sorry for the slow turnaround. I fixed:

the README to include the old content
mangled copyright headers
Duplicated # -*- coding: utf-8 -*-  lines
missing copyright headers (I think I hit all of them, but if you catch more missing ones, please let me know)

@FeliciaG - I have merged this pull request but there are a couple of issues I identified, see

#9
#10
#11


Make it possible to use the LSP to talk to Jedi

For https://github.com/microsoft/vscode-python/issues/11995
This is the beginning of the work to switch to the Jedi LSP. It installs a fork of  https://github.com/pappasam/jedi-language-server and sets up an experiment to control whether or not to use it.
Still left to do:

Get the tests to pass. About half of the language server tests fail when using the LSP. It's things like positions being off, markdown not matching, and signatures coming out different.
Remove pylint minimal checkers (see #13321)

The goal here is to submit this and then split up the work of fixing the bugs in our fork and then push the changes the original pappasam main fork.
I forked it here: https://github.com/vscode-python/jedi-language-server

Codecov Report

Merging #13855 into main will decrease coverage by 0.24%.
The diff coverage is 29.41%.

@@            Coverage Diff             @@
##             main   #13855      +/-   ##
==========================================
- Coverage   60.01%   59.76%   -0.25%
==========================================
  Files         685      693       +8
  Lines       38086    38393     +307
  Branches     5487     5517      +30
==========================================
+ Hits        22858    22947      +89
- Misses      14045    14262     +217
- Partials     1183     1184       +1

Impacted Files
Coverage Δ

src/client/activation/jedi/cancellationUtils.ts
13.95% <13.95%> (ø)

...rc/client/activation/jedi/multiplexingActivator.ts
17.74% <17.74%> (ø)

src/client/activation/jedi/languageServerProxy.ts
27.27% <27.27%> (ø)

src/client/activation/jedi/manager.ts
30.30% <30.30%> (ø)

...rc/client/activation/jedi/languageClientFactory.ts
40.00% <40.00%> (ø)

src/client/activation/serviceRegistry.ts
76.66% <46.15%> (-5.62%)
:arrow_down:

...nt/activation/jedi/languageServerPackageService.ts
54.54% <54.54%> (ø)

src/client/activation/jedi/activator.ts
70.00% <70.00%> (ø)

src/client/activation/jedi/analysisOptions.ts
71.42% <71.42%> (ø)

src/client/common/experiments/groups.ts
100.00% <100.00%> (ø)

... and 11 more

Continue to review full report at Codecov.

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

@karthiknadig can you take a look when you get the chance? Thanks


Add --when-visible (focus|swap) option to the summon-workspace command

First, let me say AeroSpace is really cool! I've been trying to relive my XMonad memories on Mac for years and am excited about the possibilities with AeroSpace.
This PR implements the swapping behavior discussed in https://github.com/nikitabobko/AeroSpace/issues/603.
I could be misunderstanding the AeroSpace internals, but it doesn't seem like this feature is blocking on workspace renaming. I've tested it locally with multiple monitors and tiling / accordion layouts and it seemed to work as intended. (Note: I have not attempted to wire up any automated tests, though would be happy to do so if you'd like me to.)
Even though in that issue you said you wanted swap to be the default behavior, in the PR I have focus as the default for backwards compatibility.
Finally, I live and work in Oud-West, so if you would prefer to discuss in person --- beverages are on me =D

I've been driving this today and have noticed a bug: I have
on-focus-changed = ['move-mouse window-lazy-center']
on-focused-monitor-changed = ['move-mouse monitor-lazy-center']

enabled and when I summon a workspace the mouse jumps to the other monitor. I'll investigate and see if I can push up a fix.

@lynaghk: I also implemented a similar summon workspace feature - https://github.com/nikitabobko/AeroSpace/pull/606 - see the discussion for some of the nuances to keep in mind. the reference to renaming workspaces was for a separate feature idea: xmonad supports swap workspaces on monitors.
your other PR (https://github.com/nikitabobko/AeroSpace/pull/682) is similar to another PR i implemented (https://github.com/nikitabobko/AeroSpace/pull/605), so it looks like we have been thinking similarly 😄

Thanks for the pointers @raisjn! I didn't see your PR referenced from #603 so I totally missed it. I agree with you that:

"when using workspace switching, it should never move the mouse off the current monitor".

I'll update this PR once I understand more what's happening and can resolve.

fwiw, the code in my PR maintains the "should never move the mouse off the current monitor" maxim and correctly works with pinned workspaces (forceAssignedMonitor). i'm not sure if you are using pinned workspaces, but consider the case: if you summon a pinned workspace, you don't want to move the mouse to that monitor.
also consider this case: [U, 0*] - summon U -> [U, 0*] (nothing happens because 0 is pinned) and what the behavior should be.


Drop the assertion around the netrc under dnixd

As it stands, determinate + magic-nix-cache seems universally disabled, because the netrc path is being specified. After #102 not sure where this leaves it.
Not sure the implications of this, but let's try this.

So, the issue is that we /still use/ the user specified netrc path to read the FH password. And if they tell us the wrong path, we won't be able to load the right password and init the flakehub cache anyway.
So after just telling you this is fine, I think it's not fine, and I think the best solution is to make magic-nix-cache read your new auth token you just merged, and remove this netrc parsing entirely. And something step-wisey to get there?


Change filterFunction parameter from cellValue to Cell

Necessity: in the old version, the filterFunction function receive the cell that was being filtered as parameter, making it possible to execute more complex filters. As of version 3.1.0 this has been removed.
It would be interesting in this function to pass the cell instead of the value.
from:
export type ColumnFilterFunction = (value: any, searchString: string) => boolean;
to:
export type ColumnFilterFunction = (cell: Cell, searchString: string) => boolean;
or add a new parameter to get the cell:
export type ColumnFilterFunction = (value: any, searchString: string, cell: Cell) => boolean;

looking for change I found it in #117 . As an additional point, the cell variable contains the current value of the cell, the row datasource and access to other information for creating a composite filter

One of the reasons why it was removed is, because it opened the door wide open for misuse scenarios in which the filter is not working properly.
Composite filters are one of those misuse cases.
The filterFunction is for implementing the column filter, and actually the column filter only.
For the column filter you don't need anything else than the cell value. If you are using any other information, you are already implementing a different kind of filter.
The "correct" way of implementing a composite filter would be to add this as a function to your extension of the DataSource class.
For example if you want a global filter that filters every row that contains some keyword in any of it's columns, you would implement this mechanism directly in the data source and only give the data to the table that matches the global filter. This data could then (afterwards) be filtered by the column filters of the table.
Another example would be combining the filters via logical or instead of logical and. There were ideas in previous versions of the smart table, but those failed miserably and had various sorts of bugs.

It makes sense.
One question about valuePrepareFunction: does it prepare the raw value? I mean, if a number is returned, the sorting will continue to work?

The default compare function is implemented in the local.sorter.ts.
It tries to be as smart as possible to detect if your column consists of numerical values and then sort them accordingly.
On the other hand, the purpose of the valuePrepareFunction is to convert any value to a string value. It shall not return a value of any other type than string.
The reason is, that the value returned by the valuePrepareFunction is used in the HTML to present the table. And that MUST be a string. For presentation this is not as important as for editing, because when you bind a value to an HTML input, it MUST be a string.
Not so many developers know this about Angular, and so the original developers of the smart table did not know.
The effect was, that when you bind a number to an inline editor of the smart table, and then confirm the new value, it will be automatically converted to a string.
Suppose you have a row with three number columns. When you start editing them with the inline editor, but only change one of them, the changed value will have type string and the other will still have type number, causing the type confusion from hell (see also #115 ).
This is the reason why the valuePrepareFunction shall translate the value of the data object to a presentable string for the use in HTML, and, more recently, the valueStoreFunction is supposed to do the exact opposite and translate the string entered by the user back to the value of the correct type in the data model.

One of the reasons why it was removed is, because it opened the door wide open for misuse scenarios in which the filter is not working properly.
Composite filters are one of those misuse cases.
The filterFunction is for implementing the column filter, and actually the column filter only.
For the column filter you don't need anything else than the cell value. If you are using any other information, you are already implementing a different kind of filter.
The "correct" way of implementing a composite filter would be to add this as a function to your extension of the DataSource class.
For example if you want a global filter that filters every row that contains some keyword in any of it's columns, you would implement this mechanism directly in the data source and only give the data to the table that matches the global filter. This data could then (afterwards) be filtered by the column filters of the table.
Another example would be combining the filters via logical or instead of logical and. There were ideas in previous versions of the smart table, but those failed miserably and had various sorts of bugs.

Okay, but what about a situation when we have an object within an object? Now, we used valuePrepareFunction to prepare and select a value from an object. So, if we want filters for this column, we have to also set filterFunction, because SmartTable doesn't know that we used a combined value from an object within an object.
For now, in the newest version, it cannot be done (no data about row/cell in filterFunction), but maybe I'm wrong, and there is a new way to set filters. 😋

I don't know if I really get what you are doing. But it sounds like you are not filtering on the value displayed in the cell and instead of the underlying data? That would be misuse of the column filter.
The intention of the column filter is that you enter a text and get only the rows where the cell text contains what you have entered in the filter.
For example, let's say your object contains data about a book with title and ISBN and your valuePrepareFunction only returns the title. But when you use the filter, you want to also match the ISBN. I can understand the idea, but that is not what the column filter is supposed to be doing. It shall only filter what you can actually see in the cell.

The effect was, that when you bind a number to an inline editor of the smart table, and then confirm the new value, it will be automatically converted to a string.

Now thats make sense,
I recently re-implemented it making the necessary corrections and now it is in agreement, however the valueStoreFunction function should help with some workarounds carried out to correct the text conversion behavior!

@uap-universe, I arrived in a scenario where the value is a date '2024-05-22' however the valuePrepareFunction is used to prepare the value for '22/05/2024', when the filter is performed the raw value is passed (2024-05-22) and not the one prepared by valuePrepareFunction
Wouldn't it be correct to use the value rendered in the filter function?

In a matter of speaking, yes. You should use the "value" that is displayed to the user for filtering. But the input for the filter function is not necessarily exactly the string that is prepared for the HTML of the cell.
For example you could use 'html' instead of 'text' in your column and your valuePrepareFunction adds some fancy formatting, for example making some part of the text appear bold or underlined.
You would not want those HTML tags to match any of your filter queries.
A good solution in your case would be to define the function that converts your raw value to a string and call that function from both the valuePrepareFunction as well as the filterFunction.
In the scenario where you want to add some HTML formatting, you would post-process the value from your convert-function in the valuePrepareFunction to add the formatting, but don't invoke it in the filterFunction.

good thats solve the problem!


(GH-1379) Show all aliases for a target in inventory show --detail

This commit fixes a bug where inventory show --detail only showed the
rightmost alias for a target. Now, all aliases for a given target will
be displayed in the output.

CLA signed by all contributors.

CLA signed by all contributors.


Is session supported?

Is session supported?

You should handle that in your application, there's no support, or intention to add support for, cookie jar type functionality


README: deprecation warning

Deprecation warning

I would replace the entire README.md with:
## This repository is now archived

These examples are for dagger v0.1 and no longer supported.

Please refer to the latest [documentation](https://docs.dagger.io/).


[distribution] Publish snapshots with sonatype-oss-release profile

https://github.com/javalin/javalin/issues/1570#issuecomment-1182271412

Thanks!


defineModel is triggering update event, even if its value didn't actually change

Vue version
3.4.27
Link to minimal reproduction
Minimal reproduction link
Steps to reproduce
Here, when I click on the button Apply value to model, I can see that the counter increases, even if the value is exactly the same.
What is expected?
I expected the same behavior as the one we had when the feature was still experimental : Only triggering an update when the value is actually different, not only when its assigned with any value
What is actually happening?
Setting a value always triggers the update:modelValue event, even if it didn't actually changed, which leads to useless reactivy, and even worse, duplicated API calls, etc...
System Info
System:
    OS: Linux 5.15 Ubuntu 22.04.4 LTS 22.04.4 LTS (Jammy Jellyfish)
    CPU: (24) x64 AMD Ryzen 9 3900X 12-Core Processor
    Memory: 11.37 GB / 15.57 GB
    Container: Yes
    Shell: 5.1.16 - /bin/bash
  Binaries:
    Node: 20.14.0 - /usr/bin/node
    npm: 10.7.0 - /usr/bin/npm
    pnpm: 9.0.6 - /usr/bin/pnpm
  npmPackages:
    vue: ^3.4.27 => 3.4.27

Any additional comments?
We actually updated our Vue version and removed all occurences of { local: true } because we had to fix some Vue bugs which were corrected in more mature versions.
Quick note: I'm aware that I could replace all occurrences of @update:something with a watch like
in this exemple. But the pain point is when your app is already having a lot of @update:something :).

Workaround: use https://vueuse.org/core/useVModel/#usevmodel (see the shouldEmit option)

Actually, we migrated from useVModel to defineModel. But this is the same issue as the one I mentionned before : In our app, it means a huge refacto of our code. As I am not sure that this is the desired behaviour of defineModel, I think it's safer to open a ticket to challenge this implementation which changed from when it still was an experimental feature.

@yangxiuxiu1115 : Hey there !
Thank you for your pull request opening :). Just wondering : Did you fix it because it wasn't the desired behavior ?

Yes, a lot of these optimizations exist within vue, and I think maybe DefineModel shouldn't be special


How to change language?

It is difficult to understand the options in it.

It isn't internationalized yet. I will work on this in the future.

The new version 3.2.1 containing the i18n to English has been sent to the Chrome Web Store and should be available soon.
Enjoy and consider reviewing our extension on the Web Store: https://chrome.google.com/webstore/detail/whatsapp-toolbox-features/fockmbfncdacmjbmieenodfeblmneaii
:)


Add DAG Renderer for run command

Description
What is the current behavior?
Currently, if a user wants to run a DAG, we first must generate that DAG in a hidden folder and then run the DAG file.
closes: #ISSUE
What is the new behavior?
To explore multiple options, we will also create a DAG "render" option that does not generate any files, but instead creates a DAG object and runs that object. In the coming weeks we will compare the two solutions.
Does this introduce a breaking change?
No
Checklist

[ ] Created tests which fail without the change (if possible)
[ ] Extended the README / documentation, if necessary

Hi @feluelle that's a really good point. I've modified the PR. Now both options will "generate" a DAG file that users can easily deploy, one just has the tasks pre-generated and one generates the tasks at runtime based on the directory. Please take a look when you have a chance

@feluelle that was a really great call! Really reduces the code footprint. Now it's as simple as picking one of two rendering options.

Please only add some more tests to improve coverage, when done, feel free to merge.

@feluelle that's weird codecov was passing when I merged, not sure what happened there. regarding the other issues I've created a PR here https://github.com/astronomer/astro-sdk/pull/1231/files


Add scaffold for manual post serialization with example

This needs to stay in draft as my "last tests" before release discovered that all of these changes caused "Unresolved External Symbol" linker errors when used in C++ instead of blueprints in projects. We still want to do this, but not right now.


Toy example tracing (python -m trace --T file.py) throws an _remove AttrbuteError exception due to NoneType

Description
Tried tracing calls for:
from jax.numpy import array
from jax.nn import softmax

p = array([0.50, 0.60, 0.70, 0.30, 0.25])
s = softmax(p)

print(s)

with:
python -m tracę -T file.py

Jax throws an ignored exception:
Running trace for JAX softmax
Exception ignored in: <function WeakSet.__init__.<locals>._remove at 0x104d7f920>
Traceback (most recent call last):
  File "/Users/mikolajboronski/miniconda3/envs/jax/lib/python3.11/_weakrefset.py", line 39, in _remove
    def _remove(item, selfref=ref(self)):

  File "/Users/mikolajboronski/miniconda3/envs/jax/lib/python3.11/trace.py", line 516, in globaltrace_trackcallers
    parent_func = self.file_module_function_of(frame.f_back)
                  ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/mikolajboronski/miniconda3/envs/jax/lib/python3.11/trace.py", line 468, in file_module_function_of
    code = frame.f_code
           ^^^^^^^^^^^^
AttributeError: 'NoneType' object has no attribute 'f_code'

This does not interrupt the behavior and does not change any results compared to running it without tracing.
System info (python version, jaxlib version, accelerator, etc.)
jax:    0.4.23
jaxlib: 0.4.23.dev20240124
numpy:  1.26.4
python: 3.11.8 (main, Feb 26 2024, 15:36:12) [Clang 14.0.6 ]
jax.devices (1 total, 1 local): [CpuDevice(id=0)]
process_count: 1

Agreed with @selamw1 regarding jax-specific tracing, but still it's strange that python -m trace fails ungracefully here. Looking at the traceback, it seems to have something to do with objects which have no parent frame, and to me that sounds like it may be some object defined in compiled code (jax primarily uses nanobind for such things).
I'll leave this marked as a bug, but I don't think it's particularly a priority to solve this unless it affects more typical JAX usage.


Add optional element type to remaining range predicates

Continuation of #8819 and #8842 for isBidirectionalRange and isRandomAccessRange. Also adds missing docs for isForwardRange.
cc @atilaneves

Added a changelog entry that covers both this PR and the changes from #8842, since both will be released in 2.107.0.


Allow TS 1.5 definitions

Angular2 is written in TS 1.5 and so our generated .d.ts file is naturally in 1.5 (destructuring parameters for example).
I see there is a 1.5 branch on DT - what is the plan for allowing definitions to use 1.5 language syntax? Can you just update your build+test to use TS 1.5 beta? IIUC existing typings should not be broken by that upgrade.
I have a doc with all our issues generating our typings file: https://docs.google.com/document/d/1nNebWTiLzz5ePcit_bjZPtaiSIFU4EsQKUlX7LX0c0A/edit

+1 can't add my definitions because they are all the 1.5 syntax.

I found it quite easy to downgrade them to 1.4 (mostly introduce an
interface for destructured args)
On Sat, Jun 20, 2015, 1:42 AM Andrew Ross<EMAIL_ADDRESS>wrote:

+1 can't add my definitions because they are all the 1.5 syntax.
—
Reply to this email directly or view it on GitHub
https://github.com/borisyankov/DefinitelyTyped/issues/4564#issuecomment-113712895
.

Unfortunately when you're dealing with 2000 lines of definition files that's not really a feasible option.

We may write a transformer as part of the angular build, if this issue
stays unresolved.
On Sat, Jun 20, 2015, 8:00 AM Andrew Ross<EMAIL_ADDRESS>wrote:

Unfortunately when you're dealing with 2000 lines of definition files
that's not really a feasible option.
—
Reply to this email directly or view it on GitHub
https://github.com/borisyankov/DefinitelyTyped/issues/4564#issuecomment-113751089
.

In general, DefinitelyTyped accepts definitions using features in the latest officially (non-beta) released version of TypeScript.  I have a feeling 1.5 should be officially released in the next week or two, so this should become moot presently.  https://github.com/Microsoft/TypeScript/milestones

1.5 is GA
What needs to be done?

oh, sorry. DT is already use 1.5.3! https://github.com/borisyankov/DefinitelyTyped/blob/master/package.json#L39


position of "poster" doesn't fit

If I use the module with config option interface=poster, the picture is somewhere on the Screen.
No matter what position I set. Set I the position of the module top_right or top_left the text is behind the picture. Set I the position of the module bottom_right the text is not visible and the picture is every intervall on another position on the screen. Set I the position of the module bottom_left the picture is not visible.
What did I do wrong?

Hi Sennahoj,
do you have any custom CSS set for the mirror and what is your monitor's size?

Hi Tueti,
I have made some custom CSS setttings on the mirror. But this does not apply to your module. I'm actually  not at home. So I will post the Code when I'm back from work. My monitor: (24 Zoll) Full HD 1080p 16:9
Thanks for your help

Okay, could you then also post your config.js? At least the part regarding this module? That would be great, thank you!

Hi.
Here is my config.js
{         		module: 'MMM-MovieListings',         		position: 'bottom_right',         		config: { 				header: 'Kinofilme',             			region: 'DE',             			apiKey: 'myAPI', 				interface: 'poster', 				moviesPerPage: '0',          			}     		},
and my custom CSS.
`body {
}
.MMM-NetworkScanner .fa-ul{
margin-left: 30px;
margin-top: -5px;
}
.MMM-NetworkScanner .table {
border-spacing: 0px 0px;
border-collapse: separate;
}
.MMM-Fuel .table {
border-spacing: 0px 0px;
border-collapse: separate;
}
.newsfeed_de .fa{
font-size: 15px;
}`
Thanks

This is what I mean.
position:bottom_right

position:top_right

I tried to reproduce the issue but wasn't able to manage it. With your exact configuration (I even added the CSS, even - as you said - they don't seem to apply to this module) the module works and displays fine on my mirror :-/ I even have the same layout (WunderGround and DWD top_right and the MovieListings bottom_right).
You seem to use most of the default values, could you try use this config:
{
   module: 'MMM-MovieListings',
   position: 'bottom_right',
   config: {
      apiKey: 'yourApiKey'
   }
},

Also, maybe you could check the logs. If it doesn't work with only these minimum config, we could try and go investigate those.

Hi Tueti.
I have solve the problem. It was my mistake. In my main.css there was a wrong setting. With the original main.css your module works perfectly. Sorry for the inconvenience and thanks for your help!

Glad to hear that the problem is solved 👍


Do we support Peering scenario?

Hi team,
Do we support Vnet peering for this? If yes, would you help add peering is supported in the doc as well? Thanks!
[Enter feedback here]

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

ID: 9589d2d0-2322-3106-c96b-982bd8296594
Version Independent ID: 887f36ae-7270-e712-eb81-fcfe53d8a164
Content: Secure an Azure Machine Learning workspace with virtual networks - Azure Machine Learning
Content Source: articles/machine-learning/how-to-secure-workspace-vnet.md
Service: machine-learning
Sub-service: enterprise-readiness
GitHub Login: @jhirono
Microsoft Alias: jhirono

@Jessieliu111
Thanks for your feedback! We will investigate and update as appropriate.

Hi @Jessieliu111
VNet peering is supported by Azure Machine Learning for protecting your workspace VNet. VNet peering connects two virtual networks in the same region via the Azure backbone network, which delivers low-latency and high-bandwidth communication. By using VNet peering with Azure Machine Learning, you can securely connect your workspace to other virtual networks in your Azure environment, without exposing your workspace to the public internet.
Thank you for your feedback on adding VNet peering support to the Azure Machine Learning documentation. We will work on updating the documentation to include this information.
@jhirono
Could you please review add comments on this, update as appropriate.

@Jessieliu111
We are going to close this thread, if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.
#Please-close


Possibility to use PyArmor with Eel?

My problem:
I'm currently adding a UI to my python project. I tested a bunch of libraries and found Eel is really really nice!
I got a project, that I compile as an .exe, and sadly I found out I am able to extract the code from the .exe with some tools.
I found PyArmor, which can obfuscate python code using PyInstaller. I could not find a way to use both PyArmor and Eel to build a standalone application.
If there is a way could you guys help me out?
If not, turn this into a feature request ;D
I can't provide any code, because I need my project to be private. But this problem should be fixeable without code snippets, if its fixeable in general.
Desktop (please complete the following information):

OS: Windows
Browser Chrome
Version Chrome Version: 85

Eel uses pyinstaller same as pyarmor pack maybe yo can pass the same option that eel uses with pyinstaller with pyarmor pack

Yeah I thought about that too.
But how does eel add the folder to the executable.
I couldn't find anything in the pyinstaller docs.

https://github.com/samuelhwilliams/Eel/blob/8e5e90e102a23dce8ad5200bf6b3ec60cde92b3b/eel/__main__.py#L31
in that file is all you need to know, in that line is when they set the parameter for the web folder

That's exactly what I needed.
Thank you so much!


wrangler.toml

testing github action on changes

Lmfao. I'm sorry guys, I think this was caused by my instructions to deploy to Cloudflare Pages but I'm guessing @Focus-andmore tried to commit the change? I assume it was an honest mistake, but we can't merge this. Closing.


Set exit code to non-zero when verification fails

Currently, the only way to determine that verification has failed when running Boogie from the command line is the presence of error messages in the textual output. It should also return a non-zero exit code in that situation.

The logic appears to be in place to do this, but doesn't seem to work. For example:
boogie -trace Test/test21/Maps0.bpl
Parsing Test/test21/Maps0.bpl
Coalescing blocks...
Inlining...

Running abstract interpretation...
  [0.049955 s]

Verifying P ...
[TRACE] Using prover: z3
  [0.128 s, solver resource count: 6623, 5 proof obligations]  error
Test/test21/Maps0.bpl(27,3): Error: this assertion could not be proved
Execution trace:
    Test/test21/Maps0.bpl(18,3): anon0

Verifying Q ...
  [0.012 s, solver resource count: 5290, 1 proof obligation]  error
Test/test21/Maps0.bpl(36,3): Error: this assertion could not be proved
Execution trace:
    Test/test21/Maps0.bpl(36,3): anon0

Verifying R ...
  [0.012 s, solver resource count: 8603, 5 proof obligations]  error
Test/test21/Maps0.bpl(57,3): Error: this assertion could not be proved
Execution trace:
    Test/test21/Maps0.bpl(45,9): anon0

Boogie program verifier finished with 0 verified, 3 errors
$ echo $?
0

It looks like Boogie expects to return exit code 1 only if the prover dies or the input programmer uses a feature unsupported by monomorphization without using /monomorphize flag. So, there appears to be an explicit decision to return exit code 0 for typing errors, verification failure errors, etc.
I don't know what the standard expectation for exit codes is.

There was some (eventually abandoned) discussion on this exact topic a couple of years back in https://github.com/boogie-org/boogie/pull/13. Seems like there was general agreement with some unresolved details.


Does the code contain data sets and training procedures?

Does the code contain data sets and training procedures?

@Tiompcl Sorry for the late reply. I exclude the SMLP data sets in this repo but I provide a link in the README.md to download it from the official website. You can have a look at the link, download the dataset, and then convert it to a json format with script: https://github.com/YeeCY/SMPLpp/blob/master/SMPL%2B%2B/scripts/preprocess.py. We just load json file into the C++ code and then produce the mesh.
As for the training procedures, the answer is NO. Since the author of the paper didn't provide the code and training dataset to reproduce the results, I am not sure how to do that.


Add Shard Family

The App Family utilizes a single shared Tree Node and Full Below cache for all shards. This can create a problem when acquiring a shard that shares an account state node that was recently cached from another shard operation. The new Shard Family class solves this issue by managing separate Tree Node and Full Below caches for each shard.
The shard acquire process in LedgerMaster and InboundLedgers was improved with considering of the acquire reason.

Thank you, @MarcelRaschke


kinetic: add haros_catkin source and doc entries.

As per subject.

@nlimpert: fyi.

Related: #22134.

Friendly ping.

thanks.


[NEW-FEATURE] add parameter to CLI to bypass compilation of dependencies

/cib

Branch 328-_NEW-FEATURE_add_parameter_to_CLI_to_bypass_compilation_of_dependencies created!


Remote Server

Hello! Thank you for making gaussian splattting visible in nerfstudio!
I'd like to open NeRFStudio as a web application on my remote Docker server. Currently, the port is forwarded to 11930, and by changing the IP within NeRFStudio to <IP_ADDRESS>, it seems like I should be able to access it from my remote server's IP address. Could you please let me know which part of the code or configuration I should modify to achieve this?

Hi, you can use SSH port forwarding (https://docs.nerf.studio/quickstart/viewer_quickstart.html#training-on-a-remote-machine), no configuration need to be modified.

Thank you for reply :)
###base_config.py
Viewer related configs
@dataclass
class ViewerConfig(PrintableConfig):
"""Configuration for viewer instantiation"""
relative_log_filename: str = "viewer_log_filename.txt"
"""Filename to use for the log file."""
websocket_port: Optional[int] = None
"""The websocket port to connect to. If None, find an available port."""
websocket_port_default: int = 11940 # my docker connection port
"""The default websocket port to connect to if websocket_port is not specified"""
websocket_host: str = "localhost" # is that correct ip?
"""The host address to bind the websocket server to."""
num_rays_per_chunk: int = 32768
"""number of rays per chunk to render with viewer"""
max_num_display_images: int = 512
"""Maximum number of training images to display in the viewer, to avoid lag. This does not change which images are
actually used in training/evaluation. If -1, display all."""
quit_on_train_completion: bool = False
"""Whether to kill the training job when it has completed. Note this will stop rendering in the viewer."""
image_format: Literal["jpeg", "png"] = "jpeg"
"""Image format viewer should use; jpeg is lossy compression, while png is lossless."""
jpeg_quality: int = 90
"""Quality tradeoff to use for jpeg compression."""
make_share_url: bool = False
"""Viewer beta feature: print a shareable URL. `vis` must be set to viewer_beta; this flag is otherwise ignored."""

I want to connect my docker server : host = 166.x.x.x / port 11940(connection with 22)
How should I modify the port and host?

Thank you

I found ssh -L means.
Thank you!

I found ssh -L means. Thank you!

Glad to hear that.


hwdb build breaks when creating a VM on release-18.09

Issue description
Creating NixOS VMs using nixos-build-vms currently fails on release-18.09:
copying path '/nix/store/7gbd1as2whimg6a0d6rfdis5c9syxsl2-linux-4.14.97' from 'https://cache.nixos.org'...
building '/nix/store/y32jwj5k1bw6ndsmqx6p7zh9vsf72fjm-etc-hostname.drv'...
building '/nix/store/163s3gx6dkarivj92xgapr0qsl4ra595-etc-hosts.drv'...
building '/nix/store/7fmx7qvm7ws2i9y8cxyk97vx24005a88-etc-os-release.drv'...
building '/nix/store/m9j0nbj1qpwsh5lkmggpppnvki65akrr-hwdb.bin.drv'...
building '/nix/store/4n1qczgmwf6f9875fyvb3v81jhys3ynx-issue.drv'...
building '/nix/store/k1rwwiad9w5gnx21y3si0z763gzvd4sl-nixos-version.drv'...
Adding hwdb files for package /nix/store/v7lqcna63kxi5s520r931py52nlgy0ac-systemd-239.20190110
building '/nix/store/7snm63hayhhq4cyi8ncjk8abs28a7nan-pam-environment.drv'...
building '/nix/store/bb3486g1xhdqp83bxrg1dyajlz5lxg30-reload-container.drv'...
Adding hwdb files for package /nix/store/7wmwwpzxcwggp1yrqamcwc5b5w51n7vf-mdadm-4.0
Adding hwdb files for package /nix/store/siyf0iar7xxn8nissk0w89n4jigbgk4a-lvm2-2.02.177
Adding hwdb files for package /nix/store/yn2ywcllc9v861583r8rdkd9xvqz9d14-bcache-tools-1.0.7
Adding hwdb files for package /nix/store/gnk5gc6mm6jjrr9ix5c10rjdardmsyf3-udisks-2.8.1
Adding hwdb files for package /nix/store/ljhs6h0jfnggnksl846axfq0zsi54bz4-extra-udev-rules
Adding hwdb files for package /nix/store/mk1bfg6ja2s2k3gvnn1c4g2dq1nrgg06-extra-hwdb-file
Generating hwdb database...
builder for '/nix/store/m9j0nbj1qpwsh5lkmggpppnvki65akrr-hwdb.bin.drv' failed with exit code 127
cannot build derivation '/nix/store/ndzw8wahn6a7fi75b5bsfgfhbl9fiyar-etc.drv': 1 dependencies couldn't be built

Steps to reproduce

Create an empty VM expression:
{ # vm.nix
  test = {};
}

Run NIX_PATH=nixpkgs=/path/to/nixpkgs/with/18.09 nixos-build-vms vm.nix

Technical details
Tested with a local checkout of nixpkgs at release-18.09 (currently at 38a99219f3cbf45d6a2c8b6d58cd4eaf9ce1af13) on a x86_64-linux with Nix 2.1.3.

Works for me on d770864744167bceb4e92c6d6f1da7e5e99a6ef3.

I'm admittedly not sure what the original cause for this was, but the problem appears to be fixed now on release-18.09, so let's close this.


Release version / stable API for integration as pyam dependency

Thanks for this nice package! I would be interested to include this as a dependency for pyam to make it easier for users to compare scenarios (like those used in the IPCC reports) with detailed historical emissions data. There already is a similar feature to read data from the World Bank, see here (implemented as a lightweight API to pandas_datareader).
Question is whether it makes sense to do this soon, or wait for any pending API changes to the UNFCCCApiReader class (seeing that there is no stable release version yet)? Also, are you planning to turn this into an installable package and/or release this via pypi?

Hi Daniel!
So far, I thought of this project more in terms of accessible dataset releases that we would regularly update, so our first stable release is https://zenodo.org/record/4199622 .The idea is that users just download the dataset and don't really care about the download scripts. In the future, I would hope to get really nice datalad integration so that users can then just "datalad pull" to always get the latest version of the data, but that needs some work to integrate datalad and zenodo.
As I understand you, you would like to instead incorporate the download scripts into pyam, so that users would download the datasets on demand as needed straight into pyam data structures, right? For that use case, it would of course be pretty stupid if pip installing installed 150 MB of data which is then never used, so the current structure geared towards dataset releases makes no sense for this use case.
Maybe these competing use cases can be fulfilled best with two separate repositories? So, I could put the download scripts into a python package with versioning etc., where you can use it as a dependency, and the dataset is another repository which then uses the python package as a dependency. That way the lightweight scripts are separated from the data. Would that make sense for you?
Just note that even with separating the download scripts into an own library package with a stable API, we can't reasonably promise any kind of stability for the functionality because the unofficial UNFCCC API could change or vanish at any time, so I would still advise users to cache downloaded results.
Cheers,
Mika

Right, a pip-install of the package shouldn't (automatically) download the data. The two repository-strategy seems like a good idea, in the spirit of "separation of concerns". An alternative would be to have an importable package that knows where the "dataladded" files are located, so that a pyam-utility-function could import (filtered versions of) these files. But I guess that would be a bit of work, whereas the API implementation is basically ready.
Let me know if I can assist!

Hi Daniel,
I have released the API as a stand-alone python package, see https://github.com/pik-primap/unfccc_di_api . It is pip-installable right away; I hope it suits your need.
I will properly convert the data release to use the python library package at the next release (whenever enough new data is available to justify another release).
Cheers,
Mika

Hi Daniel,
I have released the API as a stand-alone python package, see https://github.com/pik-primap/unfccc_di_api . It is pip-installable right away; I hope it suits your need.
I will properly convert the data release to use the python library package at the next release (whenever enough new data is available to justify another release).
Cheers,
Mika


Issue with Registries in Manifest mode

Sorry to cross post, I put this into General, but it appears that forum doesn't get much traction and I would like to solve this
I'm trying to create a registry for some projects local to my company as shown here - https://devblogs.microsoft.com/cppblog/registries-bring-your-own-libraries-to-vcpkg/
I'm more or less pattern matching and while I can get everything to build, cmake thinks the library is in the wrong place when I
find_package(StatsD CONFIG REQUIRED)
in my main cmake file. All other libraries built by vcpkg directly are working as expected.
My portfile.cmake looks like
find_program(GIT git)

set(GIT_URL<EMAIL_ADDRESS>set(GIT_REV "f9f136a9bb53616a04a4f299f16a6b2aa8c1f89f")
set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/statsd-cpp-client)
message(STATUS "curr buildtree ${CURRENT_BUILDTREES_DIR}")

if(NOT EXISTS "${SOURCE_PATH}/.git")
    message(STATUS "Cloning")
    vcpkg_execute_required_process(
        COMMAND ${GIT} clone --sparse ${GIT_URL}
        WORKING_DIRECTORY ${CURRENT_BUILDTREES_DIR}
        LOGNAME clone
    )

endif()

vcpkg_execute_required_process(
                               COMMAND ${GIT} reset --hard ${GIT_REV}
                               WORKING_DIRECTORY ${SOURCE_PATH}
                               LOGNAME reset
                               )

message(STATUS "Cloning done")

file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")

vcpkg_cmake_configure(
    SOURCE_PATH ${SOURCE_PATH}
    OPTIONS
        ${FEATURE_OPTIONS}
)

vcpkg_cmake_install()
vcpkg_copy_pdbs()

vcpkg_cmake_config_fixup()
vcpkg_fixup_pkgconfig()

file(REMOVE_RECURSE "${CURRENT_PACKAGES_DIR}/debug/include")

and the cmake file its calling is
cmake_minimum_required(VERSION 3.0)
include(GNUInstallDirs)

project(statsd-cpp-client)

find_package(Boost)
INCLUDE_DIRECTORIES( ${Boost_INCLUDE_DIR} )

add_library(statsd-cpp-client STATIC statsd_client.cpp)

set_target_properties(statsd-cpp-client PROPERTIES
    DEBUG_POSTFIX d
    VERSION 1.0.0
    SOVERSION 1.0)

install(TARGETS statsd-cpp-client
    EXPORT StatsDConfig
    RUNTIME DESTINATION bin
    ARCHIVE DESTINATION lib
    LIBRARY DESTINATION lib)

export(TARGETS statsd-cpp-client
       NAMESPACE StatsD::
       FILE "${CMAKE_CURRENT_BINARY_DIR}/statsdConfig.cmake"
)

install(FILES statsd_client.h DESTINATION include/statsd)

install(EXPORT StatsDConfig
        DESTINATION "${CMAKE_INSTALL_DATADIR}/statsd/cmake"
    NAMESPACE StatsD::
)

I am using a custom triplet, but again, nothing fancy there
The error I'm getting when I try find_package is
/home/dev/myprogram/environment/vcpkg_installed/x64-linux-steve/share/debug/lib/libstatsd-cpp-clientd.a
If the word "share" wasn't there, this would all work as expected. I'm sure I'm doing something wrong, but can't figure it out for the life of me. I was under the impression that vcpkg_cmake_config_fixup() would correct the cmake paths in this case. Thanks for any help.

This is unrelated to manifest mode or registries.
You initially put the CMake config into share/statsd/cmake. vcpkg_cmake_config_fixup() won't handle this correctly without extra options. Just put the CMake config into share/statsd. Then vcpkg_cmake_config_fixup() should be happy if your port is named statsd. (Add PACKAGE_NAME statsd arguments if you chose a different port name.)

Hello, have you solved this problem according to dg0yt's solution?

sorry for the late response. that was it, thanks @dg0yt.


An extra root folder created when uploading the D:\ drive

Branch:  V12 feature branch - build 20200305.6

Create a blob container
Upload Folder, then select your D:\ or any root drive that doesn't have lots files or subfolders. My D:\ only has a subfolder called JAWS (with two files in it) and a blob called 1GB.vhd.
Notice the uploaded results

We created a folder with an empty name (but my D:\ is named as DATADRIVE1)
Under the first empty-named folder, we created another empty folder, which is subfolder of the first empty folder
We then updated the content of the D:\ drive

If fix is low risk/quick, fix for 1.13. Otherwise, move to 1.14

Opened an issue for AzCopy https://github.com/Azure/azure-storage-azcopy/issues/1032

AzCopy has merged a fix for this issue.


Alternative URLs for Regions

When entering /cologne it should redirect to /koeln

Sounds like a good idea to me!
I'd like to implement this. Since I haven't had much contact with Ruby and Rails by now I think this is a nice starter to learn.
I was wondering how to handle multiple slugs and came up with these options:

Should we just add an (one) alternative slug to Region, or
add alternative slugs with a 1:n/has_many to RegionSlugs?

I'd prefer option 2, since we probably want to keep and redirect to a main slug (Region.slug, e.g. /koeln) and maybe also want to use /colonia (Spanish) for it in the future. Which leads me to the question: is there a nicer way in Rails instead of creating a RegionSlugs model just for containing a string (the slug)?
So, what would I do?

make sure alternative slug/RegionSlug.slug is unique
overwrite/create Region.find_by_slug to take all slugs into account. Maybe rename Region.slug to Region.main_slug?
update EventController to check if given region-slug is the main slug. If not redirect (HTTP 302) to it.
make sure slugs are available in administration for CRUD operations (how to write a test for that?)

Did I miss something? Is this the way one would implement this in Rails?
I'm happy to read your comments on this.

I think I would do it slightly different:

Remove the slug attribute from the RegionSlug class/table.
Implement a RegionSlug class. Every RegionSlug has a slug attribute.
A Region has_many RegionSlugs, but one of them is the main slug (I would say by having a has_one as:). The main slug will be returned when Region.slug is called.
The RegionSlug will get the find_by_slug method.

What do you think? In my opinion this is a little bit more straightforward as there's only one place to look up slugs – and not two (one for alternative slugs (the RegionSlug) and one for main slugs (the Region))

That sounds great and is cleaner (only one class for representing a slug, not a string and a class) than my first approach. I think I will do it this way. :)

Great :smile:

@gill0r Is this still in progress – can we review / help out with something? Just checking so this ticket doesn't grow hoary. :)

Hey,
thanks for checking! :) Yes, this is still in progress but I need some help. I commented on this commit in the branch where I got stuck: https://github.com/hacken-in/website/commit/4b625472c614f327ab78092fdfd49b18cb53c101
Since I'm moving to Berlin next week, I can't promise I will be able to implement the feature during the next 2 weeks. But I'm still willing to learn & implement! :)

FYI: I started implementing the feature yesterday, but did not complete it yet. You can see the progress in the branch 565-alternative-urls-for-region-3. I hope to make some progress during this week.

Awesome!

@gill0r Hello :heart: Are you still interested in working on this? :smile:

@moonglum Oh yes, I'd love to. Unfortunately my weeks and weekends are really busy. If someone else wants to implement this, feel free to do it. Otherwise I'd do it, but can't state an ETA, sorry :(

No worries, @gill0r :heart: Current focus is the migration to Uberspace. After that, I'll look into open PRs / issues again :smile:


APP-4297: removed noisy logs, added additional logs

APP-4297

Random, but I assume we can close out APP-4275

@dgottlieb oh good call. For now I'll mark it as in progress so I don't forget to bump app

Oops, and I forgot: I think this let's us re-enable the tests skipped in this commit.


Bump protobuf version to v3.14.0

The version used before was not correctly providing ProtoInfo providers
for proto_library build rules. This was causing trouble with the latest
Bazel version. Fix the build by updating the protobuf version used.
Signed-off-by: Alex Konradi<EMAIL_ADDRESS>

@rodaine can you approve this to fix CI?

Thanks, @akonradi!