 The initial size was 100MB, which was raised to 500MB. Can you tell us the size of "github.com/therecipe/qt/cmd" ?
/cc @bcmills @rsc

macbookpro:github.com fredlee$ du -sm therecipe/
858	therecipe/

As I noted in https://golang.org/cl/150738:
I had a look at github.com/therecipe/qt, and the vast bulk of the repository is in .index files in versioned subdirectories of internal/binding/files/docs. Those are large XML files, and appear to be completely irrelevant to the Go build and test process.
Those files should be pruned from the module (either by pruning them from the repository itself, or by placing another go.mod file at an appropriate cut point).
At that point we may find that we need to adjust ReadZip to be able to prune nested modules more aggressively, but I don't think simply raising the limit is an appropriate solution.

(CC @therecipe)

I had a look at github.com/therecipe/qt, and the vast bulk of the repository is in .index files in versioned subdirectories of internal/binding/files/docs. Those are large XML files, and appear to be completely irrelevant to the Go build and test process.

Yeah, these files are only necessary for certain builds such as for HomeBrew and MacPorts builds on macOS or MSYS2 builds on Windows, as well as for an  backward compatibility feature.
It is planned to prune and segregate the *.index files into a different repo at some point, but it's uncompressed size will easily excede the 500MB limit as well.
I could probably create a repo for each (major) version of Qt to work around this, but it's an rather ugly workaround for this limitation.
Also since the compression ratio is great (17:1) for these files, I see no problem in collecting them all in one repo atm.
Is there some technical reason for the size limitation? I did take a look at the patch to work around this and noted that there are also limits for the go.mod and License files in place. Which strikes me as odd tbh, I mean there is usually no reason for License files to exceede this limit, but why also limit the size of go.mod files?
I would propose to remove these limits altogether, if there is no technical reason for them to be in place.
Other people will otherwise rise additional issues down the line, if they try to bundle binaries and build something like https://pypi.org/project/tensorflow-gpu/#files in Go (which is 1GB uncompressed), one project in Go I know of that already does this is https://github.com/dontpanic92/wxGo (which is 400MB uncompressed). And I also planned to distribute binaries sometime in the future, to make the use of go get as simple as the use of pip install.

It is planned to prune and segregate the *.index files into a different repo at some point, but its uncompressed size will easily excede the 500MB limit as well.

Why would those repos be relevant to the module limit? The go command doesn't execute arbitrary commands to build modules, so if something needs to process those files it seems like you'll need some build step outside of the module system anyway. That build step will presumably not have the same constraints as the go command in module mode.

Also since the compression ratio is great (17:1) for these files, I see no problem in collecting them all in one repo atm.

The go tool unzips module contents in order to build the modules. Large files that are not pertinent to the module build and test cycle waste users' disk capacity, even if they compress well for transfer.

Why would those repos be relevant to the module limit? The go command doesn't execute arbitrary commands to build modules, so if something needs to process those files it seems like you'll need some build step outside of the module system anyway. That build step will presumably not have the same constraints as the go command in module mode.

Yeah, one could handle this in an additional build step, but what about C/C++ binaries someone wants to bundle to make ones repo "go get-able"?
The qt repo is currently using a custom build system, so it's not that difficult for me to work around this limitation, but what about other people?
Why force them to create a custom build system, if the underlying issue is just some easy to fix (probably arbitrary) size limit?
If there would be some way to execute arbitrary commands from the "go get" command than this wouldn't be an issue, but since there isn't the only idiomatic way to go about this is to bundle these binaries in the repo or in some platform specific extra dependency repo.

The go tool unzips module contents in order to build the modules. Large files that are not pertinent to the module build and test cycle waste users' disk capacity, even if they compress well for transfer.

Yes, this holds some truth, but the setup requiered for the repo to work is usually a couple GB in size and so the size of these files can be easily neglected in most cases.
But yeah, I planned to replace (or cut down) these index files anyway regardless of the outcome of this issue... to hopefully make the repo easily "go get-able" in the future.
However, is there any technical reason for the size limit of repos?

go get in module mode operates on modules, not entire repositories. If you want users to get the whole repository, please instruct them to use the relevant VCS command (such as git clone) instead.

Okay, that was poorly phrased from my end.
I don't want my users to need to resort to "git clone" or similar, I simply want them to be able to use go get.

For one, it detects modules that accidentally include large files that aren't relevant to module builds. 🙂
(That's a real, technical issue: large-but-unnecessary files waste users' disk space and bandwidth, both of which are finite.)

Mh, yes that makes sense but wasn't really considered when resolving https://github.com/golang/go/issues/25470 it seems
However, you got me thinking.
I haven't really looked into the go module support yet, and just merged the PR that made it work for one of my users (the same that filled the PR to increse the size limit it seems.)
Can I simply create another module (i.e. create another go.mod file in qt/internal/binding dir) and exclude the files dir due the exclude directive, to solve this issue?
If yes, than this would be a trivial fix from my side and I'm sorry that I wasted both of our times.

Can I simply create another module (i.e. create another go.mod file in qt/internal/binding dir) and exclude the files dir due the exclude directive, to solve this issue?

That should work, I think. (If it does not, please file another issue and I'll investigate.)

Okay, I looked into the module support.
And I can't simply use exclude like I initially thought yesterday.
I found hacks to work around the error message, but they completely defeat the purpose of how I planned to use the module support.
I think I start to undestand now how modules are intended to be used and it seems like I want to use them in a way they are not meant to be used.
Mainly to also distribute versioned files that are only indirectly related to the go build process, since they would only be processed by the custom build system to generate go code which is then made available to the module by using the replace directive.
The long term plan is to also distribute versioned C binaries and header files to be used alongside pre-generated go code without the need for a custom build system (i.e. create a "go get-able" module), at that point the current size limit might be a problem as well.
You already said that if I use an custom build system then

That build step will presumably not have the same constraints as the go command in module mode.

yes, I could fetch the indirectly go build related files at some point after "go get", but that makes things only unnecessarily complicated for everybody involved.
I can agree with the reasoning behind these limits, but in my opinion they are only weak hurdles (which are also only weakly enforced https://github.com/golang/go/issues/25470) to keep people on track.
Beeing a little opionated is great, but enforcing to many of these small annoyances on people that want to leave the track for a few steps will only alienate people sooner or later.
Please don't get me wrong, I can understand why these limits are in place and see how they align with Go's philisophy in general.
But I will work around them nevertheless if I have to, and so these limits where ineffective and nobody is happy in the end, which is not the outcome I hoped for.
Btw, thanks for your time :)
I should have looked into the module support a lot earlier...

Okay, I worked around the size limit with https://github.com/therecipe/qt/commit/5251d3454c7c3600980c6791ebbbdee664b56156#diff-4461efdc93245626ff859334a9abf39c for now.
So from my side, feel free to close this issue.
However I still think that the size limit shouldn't be enforced by the go tool and people should be able to decide for themselves.
Ultimately only the people that really host the modules should be able to enforce size limits.
Maybe only print a warning or something instead...

@bcmills - anything else to do here ?


[RFC] New protected TLV format proposal

Updates the protected TLV specification to have their own TLV info struct, to ease hashing without having to skip parts of the image, while adding the ability to append new non-protected TLVs.

So, my concern with not having the header describe the length of the protected header is that it then seems like it might be easier to just remove the protected header. Not specifying what the length of the trailer is makes us susceptible to a length-extension attack (well, maybe, but it makes me leery). A flag that indicates that a protected trailer must be present is a bit better. Having the length also makes it a little easier to find the unprotected trailer.

So, my concern with not having the header describe the length of the protected header is that it then seems like it might be easier to just remove the protected header.

Yes, that is a good point; it would still require the image creator to release a correctly signed version with the same header information, and no protected trailers, and then later release an update with the protected trailers added for it to be possible for someone to just remove them, no?
Anyway I think it's fine to leave the protected length in the header (and I don't need to update the proposal!).

Thanks for the reviews, I added this commit to #551, and will add reviewers when implementation is done.


OCM-2408: Improve upgrade agreements acknowlegement process

Add an option to approve - add boolean attribute "upgrade_admin_ack" (default=false)
In case acknolege is missing, build elaborated description based on "upgradePoliciesClient" dry run

This is the error message displayed when try to update from 4.12.19 to 4.13.1 (candidate channel):

/hold
The upgrade is not triggered even after doing the acknolege
Need to check in OCM backened

This is completed by @JohnStrunk in different PR
https://github.com/terraform-redhat/terraform-provider-ocm/pull/121


Concurrent download test Using perl client

@emli discussed a needed test for concurrent download of same file, so we are going to add a flag to send interface so we can control the concurrent operation. This way cliend can fire concurrent repeated operations, such as:

# send 10 download requests
    ok @res = $g->send(
        method => 'get',
        path   => $path,
        concurrent_ops => 10,
    ), "Download file id $k";

will merge into dev https://github.com/marcoarthur/gorjun-perl-cli/tree/simultaneous-download


Accomodate field documentation

Thanks for this package - it is very useful!
It would be great if the package would handle docstrings for field names, like so:
@concrete struct MyStruct
    "my field documentation"
    a
end

Currently, this results in an error:
ERROR: LoadError: MethodError: no method matching _parse_line(::String)

Oh that should be a pretty easy fix. Actually, I’m not sure why I didn’t put a fallback implementation of _parse_line for stuff like this. I don’t have a computer on me for the weekend, so if you are feeling adventurous, feel free to submit a pull request. If not, I’ll take care of it when I get back Monday.

Actually I just went ahead and did it on my phone. It was a pretty easy fix

Thanks a lot, that was fast!


chore: update go to 1.22.4

Fixes #N/A
Description
1.22.4 was just released, including some CVE patches
How was this change tested?
make verify
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 remained the same at 77.959%

Totals

Change from base Build<PHONE_NUMBER>:
0.0%

Covered Lines:
8273

Relevant Lines:
10612

💛  - Coveralls


Issue/65/read the docs

Added starting docs for ReadTheDocs
Added Redux Devtools Extension for easy Redux visualization

This PR is for issue #65


CIP-0100 | Add index and hash to references and allow for basic HTML tags

Changes

Added an index field to the references field.

Allowing each reference to be easily be identified.

Added optional hash to references field.

So that references can be optionally cryptographically verified.

Added the ability for authors to include a HTML tags in their freeform text fields.

To allow for authors to highlight bold text, italicised text or code.

cc: @Quantumplation

Thinking about it more, with @Quantumplation's insights 🙏
I will move the HTML/Markdown out of this CIP, as they really only apply to longer form text, which is what CIP-108 adds.
This maintains CIP-100 as a barebones standard.
I will keep the suggestion of adding the @list keyword on the references.
But move the additional hashing to CIP-108 and just extend CIP-100 on it.

@Ryun1 I'd also suggest making sure to specify html (or markdown) on a field by field basis; otherwise you end up with like, the authors name having html in it, as that's "free form text" heh

@Ryun1 I'd also suggest making sure to specify html (or markdown) on a field by field basis; otherwise you end up with like, the authors name having html in it, as that's "free form text" heh

Good call!

For ease, I am just going to add these additions via CIP-108
So I will close this for now


Don't attempt to validate the post body or primary collection id

@mkanoor Please review

@bdunne can we close this in favor of #401


Add public API definition for IntelliJ

This is a for a scope in IntelliJ describing which packages belong to the public API. It can be used to narrow searches to the public API. Works with structural search, too.
Created from the data in build-logic/basics/src/main/kotlin/gradlebuild/basics/PublicApi.kt, ideally it should be generated from the same source.

@bot-gradle test and merge this please.

OK, I've already triggered a build for you.

@bot-gradle cancel build.

OK, I've already cancelled the pre-tested commit build.

@bot-gradle test and merge please.

OK, I've already triggered a build for you.


test: normailize all integration test's class name

Is your feature request related to a problem? Please describe.
Integration test and unit test are different, for more distingush of them, we can change the integration test's class name.
An integration test extends the class AbstractIntegrationTest.
For example,
public class AdminServiceTest extends AbstractIntegrationTest {

AdminServiceTest is an integration test, we can change its name to AdminServiceIntegrationTest.
Describe the solution you'd like

normailize all integration test's class name with suffix IntegrationTest.
add some class name verify in AbstractIntegrationTest's constructor

  public AbstractIntegrationTest() {
    String className = this.getClass().getName();
    // do some verify
    if (!className.endsWith("IntegrationTest")) {

    }
  }

Sounds a good idea :-)


[HOLD for payment 2024-03-29] [$500] LHN - Empty space displayed in LHN after opening IOU detail page offline

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: v1.4.55-0
Reproducible in staging?: Y
Reproducible in production?: N
Logs: https://stackoverflow.com/c/expensify/questions/4856
Issue reported by: Applause-Internal team
Action Performed:

Go to https://staging.new.expensify.com/
Go offline
Click on FAB and create a new group chat
In the group chat click on "+" > Spilt bill
Create a manual request and split it with one user of the group
Navigate to the chat with the user you split the bill
Open the money request detail page

Expected Result:
No space between reports is displayed in LHN
Actual Result:
Empty space displayed in LHN after opening the IOU detail page
Workaround:
Unknown
Platforms:

Which of our officially supported platforms is this issue occurring on?

[ ] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[x] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
https://github.com/Expensify/App/assets/115492554/97b31faa-cd4b-4c9e-a11c-659b52e8ddfc

View all open jobs on GitHub

@joekaufmanexpensify I haven't added the External label as I wasn't 100% sure about this issue. Please take a look and add the label if you agree it's a bug and can be handled by external contributors.

Production

@youssef-lr do you think this needs to be a deploy blocker? I am not personally convinced. It's pretty niche behavior.

Testing on staging & production now

@aimane-chnaif I don't think this is the same issue, I can only reproduce in staging.

Going to try to find the offending PR now

This is a regression from this PR, after reverting it locally I can't reproduce anymore. cc @jbroma @allroundexperts @mountiny

This is also reproducible online, but the empty row disappears quickly
https://github.com/Expensify/App/assets/9680864/1eb13a7e-6872-4ea1-935e-53bfa4c3d9ab

I found out why this is happening here, I'm gonna open this up to contributors so we can hopefully find a fix

Already replied @GandalfGwaihir

Bumping this in the open source channel https://expensify.slack.com/archives/C01GTK53T8Q/p1710980255736579

@youssef-lr if this is a recent regression from a PR that @jbroma and @allroundexperts worked on, shouldn't we just have them fix it? Or revert that other PR so they can work on a fix?

@joekaufmanexpensify I think it would be great if @jbroma could chime in, but the solution @fedirjh proposed might be good too. I'm testing it now.

@situchan and I have discussed this in Slack and tested it together, so assigning this to them.

[x] The PR that introduced the bug has been identified. Link to the PR: https://github.com/Expensify/App/pull/38255
[x] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment: https://github.com/Expensify/App/pull/38255/files#r1532802697
[x] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion: N/A This came from big refactor and this kind of bug couldn't be easily caught.
[x] Determine if we should create a regression test for this bug.
[x] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.

Regression Test Proposal

Go offline
Click on FAB and create a new group chat
In the group chat click on "+" > Spilt bill
Create a manual request and split it with one user of the group
Navigate to the chat with the user you split the bill
Open the money request detail page
Verify that no space between reports is displayed in LHN

Great. TY!

Due today!

This is a pretty niche bug and IMO does not need a regression test.

Only payment needed here is $500 to @situchan for C+. Paid via upwork.

Adding external to create upwork job

@situchan offer for $500 sent!

Defer to @youssef-lr on that. Mind weighing in on whether this proposal was what was used?

Bumped 1:1

@joekaufmanexpensify yes I did use Fedi's solution!

Discussing internally

@situchan $500 sent and contract ended!

@fedirjh we landed on 50% comp here since we used your proposal, but you did not raise a PR

@fedirjh offer sent for $250!

@fedirjh $250 sent and contract ended!

Upwork job closed.

All set. Thanks everyone!


backslash shows only a normal keyset

when I press \ (on us keyboard) i see a list of characters shown, starting wih 0, 8, then a series of normal interpunction and then A, B ... nothing visible from the special unicode characters 'forall', equality etc.
what is wrong in my setup? I installed with the vscode installer and have not changed anything.
thank you for the tool which is great for all who are not trained in emacs.

additionally, if i place the backslash near a special symbol (e.g. forall) nothing is displayed and I see the result of a load command.
what is my error?

when I press \ (on us keyboard) i see a list of characters shown, starting wih 0, 8, then a series of normal interpunction and then A, B ... nothing visible from the special unicode characters 'forall', equality etc.

I believe there's nothing wrong about your setup.
In order to produce a unicode symbol, say ∀, you need to input a sequence of keys, like forall in this case.
Those 0 8 ... you see are the valid keys that could result in such sequences (try clicking them or typing the same key from your keyboard!). If you click on f, the set of valid keys should be narrowed down, suggesting that there are fewer sequences that starts with f.


feat(NumberTheory.NumberField.Units): add torsion subgroup

We define the torsion subgroup of the units of a number field and prove some results about it, mostly: it is finite, cyclic and
an unit is torsion iff its value is 1 at all infinite places. Some results linking to rootsOfUnity are also proved.
This PR also includes a direct coercion from (𝓞 K)ˣ to K that is very convenient, although I am not sure it's done properly.

Please remember to add the label awaiting-review when this is ready for review. (Alternatively PRs that refactor files that were ported from mathlib3 should be labelled after-port.)

We probably want also the fact that the double coercion from (𝓞 K)ˣ to 𝓞 K to K is the same as the coercion from (𝓞 K)ˣ to K.
LGTM but I am not very familiar with coercions in Lean4. You can maybe ask on Zulip.

As you suggested, I asked for some expert opinion on Zulip

bors r+


OpenSearch Coordinating Nodes memory exhaustion after upgrade 2.9 to 2.12

Describe the bug
Hello OpenSearch Team,
We’ve just updated our OpenSearch cluster from version 2.9.0 to 2.12.0.
Among other issues, we’ve noticed that Opensearch coordinating node is now consuming all the heap it is provided with.
Related component
Other
To Reproduce

Have an OpenSearch cluster version 2.9
Upgrade it to 2.12
Provide coordinating node with 18 GB heap instead of 4GB
See JVM eats all it get.

Expected behavior
We didn't expect significant memory usage increase after upgrade
Additional Details
Plugins

security

Screenshots
Please note JVM young is high now

Host/Environment (please complete the following information):

OS: Oracle Linux 8.9
OS: Docker image opensearchproject/opensearch-dashboards:2.12.0

[Triage - attendees 1 2 3 4 5]
@rlevytskyi Thank for filing, as there we don't have enough details to act on this issue.  Without a root cause its hard to know how this would be addressed.  It looks like this is directly related to [1] and we are going to close this issue to funnel discussion in this space to a single location.

[1] https://github.com/opensearch-project/OpenSearch/issues/12454


Add linked headers to write mode.

[Resolves https://github.com/eregs/notice-and-comment/issues/203]
[Resolves https://github.com/eregs/notice-and-comment/issues/204]

Seems like this logic should live in the backend rather than in JS, no?

@cmc333333 can you be more specific?

Sure! Sorry, wanted to finish before standup.
Rather than constructing the link and rendering it in Javascript, shouldn't it be part of the original template? I'd like to remove as much logic from JS as possible to make the app friendly for non-JS users.

At the moment, we're grabbing the relevant dom node from read mode, dropping markup related to commenting, and copying it into write mode. So if we're adding these links server-side, they'd show up in read mode as well, unless we expose a separate view to render a node with a header link (and without commenting markup). Is either of those (adding links to read mode, adding a new partial view) the direction you're thinking of here, or do we want to try something else?

Gotcha. I forgot how JS-centric the write mode was; another vote for eregs/notice-and-comment#164
Completely different: There's a duplication issue when commenting on a preamble header:

I think the idea is to separate the "text" of the header from it's marker ("I.") If that's not easily accomplishable, maybe we drop the original header and make adding that text a separate issue?

At this point in the code, we have the human-readable label ("Section I") but not the title ("I. General information"). I'm assuming that we want the link to have the text "I. General information" in this case, but lmk if that's not right. Anyway, two hacks come to mind. First, like you said, we can check for a top-level header and drop it if we find one. Second, we can check for a top-level header and turn it into the link if it exists, else create a new link with the human-readable label as its text.
Preferences @cmc333333 ?

The downside to the second approach is that we wouldn't get "I.B.3", we'd only get "3". This may sound crazy, but what do you think about trying to align/overlap the two sources of data?
Section I.B.3
            3. Some Title
Section I.B.3. Some Title

This logic will probably need to get torn out and rewritten anyway, so why not? Pushed an implementation just now. It's clunky, as expected, and should go away as soon as possible.


onChange method

Added onChange method for form, in order for someone to get state of entire form on any change for e.g. save form state between refresh, dynamic add of input fields etc.

Looking good, except I was a bit unsure of the timeout thingy to prevent too many onChange events. I changed it around a bit and needed also to do so to make dynamic inputs work. They also trigger a change event, when they occur.
Also wrote a test for this. It is included in next release :-) thanks for the reference code!


Registry on ha-cluster and OpenEBS

If I turn on ha-cluster and openebs, how can I tell the registry addon to use the jiva storage class?

Hi
I assume you are using microk8s1.21 build-in registry with microk8s enable registry. I am afraid builtin registry doesn't have the feasibility to use specific storage class. however it will use default storage class, pl confirm if the  default  storageclass is openebs-jiva-default .
microk8s kubectl get sc will return value like openebs-jiva-default (default)  .
pl describe openebs jiva pod and check for this annotation on all nodes
"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}

Seems like hostpath is the default @balasu

So I should be able to modify the annotations to make this work?

Yes, but you need to delete the container-registry after patching the default storage.


Add detection for non-UTF8 encodings

It's great that ish already works around the mess of distinguishing between data and text, in particular in Python 3, by automatically decoding byte strings (as UTF-8). This behavior is however far incomplete.
UTF-8 is nice but shouldn't be naively expected or being overly encouraged. There are also other common encodings like cp720 and UTF-32be, to name only a few. And nobody wants  to (or should) manually deal with encodings. Therfore it's ish's responsibility to try a set of encodings before giving up.
Also, what is about alternative unicode representation? E.g. \ufef7 (LAM WITH ALEF WITH HAMZA ISOLATED FORM) vs. \u0644\u0623 (LAM + ALEF WITH HAMZA). But even more important, popular encodings like cp720 don't support some of the more fancy froms provided by unicode. Therfore unicode normalization is necessary as well.
With this PR, all Unicode and Arabic encodings are tried until a match is found, and unicode normalization is applied to the decoded string in addition to the existing normalization logic.

Okay - that's just crazy enough to make it in. :+1:


RECORD_FAILED doesn't work with @ClassRule

I want to use one container for all tests in class (starting and stopping takes some time). It seems that when I use @ClassRule instead of @Rule, RECORD_FAILED doesn't record anything, so I need to use RECORD_ALL. It seems to be a JUnit issue, for @ClassRules it seems to not throw any exception even if test fails.
Maybe some other way of creating one container per test class would be needed? Or at least some warning in JavaDocs maybe?

Noobie here!
What are RECORD_FAILED and RECORD_ALL ?

@iirekm that's a good point - as is, the detection is limited and I can see how that would be frustrating. There might be a way to make it possible, but I'm not sure of a clean way to do it just yet.
@martin-g this is the recording behaviour for selenium/webdriver containers - they can automatically record video of every test. RECORD_FAILED only keeps a video of the test methods that failed, whereas RECORD_ALL keeps all videos.

Let's update the docs to make this clearer.

Here is an example how to achieve the proposed use case (as discussed in #577 by @bsideup):
static File recordingDir = new File("build/recording-" + System.currentTimeMillis());

@ClassRule
public static BrowserWebDriverContainer chrome = new BrowserWebDriverContainer<>()
        .withDesiredCapabilities(DesiredCapabilities.chrome())
        .withNetwork(Network.SHARED)
        .withNetworkAliases("vnchost")
        .withRecordingMode(BrowserWebDriverContainer.VncRecordingMode.SKIP, null);

@Rule
public VncRecordingContainer vnc = new VncRecordingContainer(chrome) {
    @Override
    protected void failed(Throwable e, Description description) {
        saveRecordingToFile(new File(recordingDir, description.getMethodName() + ".flv"));
        super.failed(e, description);
    }
};


Use FBX instead of IQM as standard model format in Inexor.

Due to the circumstance that md5 is an outdated format I suggest to migrate to FBX as standard format.

Note from IAmNotHanni: The discussion of a new player model has been separated into a new ticket. See #561.

What is the point against iqm?

Not much, the last time we investigated on this, we found iqm to be a good choice (#499)
But there are also points against using iqm. while it is technically a good choice, it is lacking an ecosystem bigger than cube (and some really small other open source communities).
There is a format (made by Khronos, the organization making i.e. OpenGL and vulkan) for the exact same purpose (loading models fast from storage into GPU memory):
https://github.com/KhronosGroup/glTF
It is in contrast to IQM actively developed and hence seems to starts getting traction in the community.
Furthermore for data exchange the by far most popular model is indeed FBX.
If you google for models online the majority will probably be in FBX.
It had been unavailable to the open source world, since there only existed a proprietary SDK for loading/saving it and no simple description of the file format. The blender team changed that and reverse engineered that format, so now there are MIT licensed loaders for it as well.
Still FBX won't be really fast to load.

Is this now a ticket about new player models or a new model format? We need to stop mixing things up.

Blender supports FBX export by default and it's way better documented. I've never been happy with iqm import/export scripts in Blender. They just never worked as intended.
It would be nice to use a new model loading library which is still being developed.

See https://github.com/assimp/assimp

We can use assimp as standalone tool (maybe as backend for a flex ui) to convert the models in an fast loadable format. But it is not a good choice for loading stuff fast, ive talked with their devs quite some time 3 years ago.
What they suggested fits precisely our general architecture with core being minimal: only support one model format in the backend (or at max two if there is really a specific thing a single format can not provide)
https://github.com/inexorgame/inexor-core/issues/499 sums the design up.
This issue here is about what the main model format should be of inexor. There can other ones be supported, but not as good as the main one probably. Assimp is just for the secondary model formats.


Keep color output when using as alias

Hey there,
first off: great software!
Now, I realise this might be more a bash-related question, but .. I want to keep the colorful output when using an alias like so:
alias dotbot="bash ~/.dotfiles/install.sh -c ~/.dotfiles/config.yml"

All I get is this gray goo:

Hmm, I still see two colors (e.g. the first line "All targets..." looks different from the "Link exists" line).
Could this have something to do with your bash / terminal emulator color settings?

I'm guessing that this has been resolved? If not, feel free to reopen.


Finish ArrayAdapter

It currently does not support column-level searches or ordering, and paging does not work correctly when doing a global search (page is taken before filtering instead of after).

Hi, why is this issue actually closed? The ArrayAdapter still doesn't perform sorting, filtering and paging correctly as stated initially here. Will be there progress any time soon?

It's not closed, the referenced issue is closed.
We are currently not actively investing efforts in parts of the bundle we do not use internally, this issue is more or a "missing feature tracker". Everyone's free to help with it.

Oh, you are absolutely right. Somehow I oversaw which one is closed, maybe I was so disappointed that the ArrayAdapter part is that unfinished. That's one of the reasons why we decided to integrate datatables natively in our application. Nevermind, thanks for your reply.


[docs] [ISSUE 11380] Update code example and description

Fixes #11380
It seems that the changed two file share common content on the usage of message retention policies. Do we need to keep the examples of the commands in both files?

@Jennifer88huang Please help review the changes. Thank you.

@Huanli-Meng Thanks for your comment. Updated. PTAL.


gconv.Struct: unexpected behaviour when conv to a string to list

Go version
go version go1.23.4 darwin/arm64
GoFrame version
v2.8.2
Can this bug be reproduced with the latest release?
Option Yes
What did you do?
func TestConv(t *testing.T) {
	type Param struct {
		List []int `json:"list"`
	}
	data := map[string]any{
		"list": "[a]",
	}
	var p Param
	err := gconv.Struct(data, &p)
	fmt.Println(err)

	fmt.Printf("%#v\n", p)
}

What did you see happen?
I got err==nil and  List = [0]
What did you expect to see?
i expected got err != nil ; at least get len(List) == 0.
I guess the reason is gf treat the "[a]" as a object. and when trying to set an object to list, will set it as a element. like []any{"[a]"}; and then trying to conver []any{"[a]"} to a []int, then use the default value 0, since it can't parse "[a]" as a number.
by the way, if the List is not []int, but []*int. It will return an error, which says failed to conv int to *int. I guess its another bug..

By the way, i don't found any document says what will happend using gconv on a list.
Hope can add some document about it. Or if i missed out it. and i’m very thankful for anyone can paste a link here..


term type argument as a subclass from string type argument

Another option for term-like string argument, as a subclass of StringArgumentType. Reasoning - code is much cleaner, yet still one would retrieve its value via getString as it is technically nothing but a string from a predefined collection, and I don't think making it a totally separate class from StringArgumentType makes sense as the returned value is a string and that object type you would expect. The fact that it is a subclass makes it clear in my opinion of a getter method as getString.
Please send feedback regarding this implementation.
In case the choice of the word 'term' to describe it is not clear, I shall direct to the following definition
https://en.wikipedia.org/wiki/Terminology
SYNOPSIS (and why this type is very useful):
        dispatcher.register(literal("test").
                then(argument("first", term("foo","bar")).
                        executes( (c)-> test(c, getString(c, "first")+" 1"))).
                then(argument("second", term("baz","quux")).
                        executes( (c)-> test(c, getString(c, "second")+" 2"))));

Closing and reopening to rerun checks.


Unable to disable Smooth Scrolling on MacOS

OS/Platform
macOS
Installed
OS/Platform's package manager
Version
Version 115.0.5790.98 (Official Build, ungoogled-chromium) (x86_64)
Have you tested that this is not an upstream issue or an issue with your configuration?

[ ] I have tried reproducing this issue in Chrome and it could not be reproduced there
[ ] I have tried reproducing this issue in vanilla Chromium and it could not be reproduced there
[x] I have tried reproducing this issue in ungoogled-chromium with a new and empty profile using --user-data-dir command line argument and it could not be reproduced there

Description
Unable to disable Smooth Scrolling on MacOS
How to Reproduce?
Under chrome://flags the option to disable smooth scrolling is not available for MacOS. Is there some way I can compile a version with smooth scrolling disabled?

Actual behaviour
See above
Expected behaviour
See above
Relevant log output
No response
Additional context
No response

@implicitfield is there anything we can do about it?


Enable mail configuration by default

The settings are adjusted to match APPUiO Cloud. According to internal docs our mailgun currently only supports the appuio.cloud domain.
Checklist

[x] The PR has a meaningful title. It will be used to auto generate the
changelog.
The PR has a meaningful description that sums up the change. It will be
linked in the changelog.
[x] PR contains a single logical change (to build a better changelog).
[x] Categorize the PR by adding one of the labels:
bug, enhancement, documentation, change, breaking, dependency
as they show up in the changelog.
[ ] Link this PR to related issues or PRs.

LGTM. The email is disabled as long as customer does not add his email, is that right?

Yes that is correct.
Also, we might want to have another sender address in the future, but for now this is good enough... At least they should get mails with this.


feat(Datepicker): Inline datepicker | next previous click events

Feature Description
Fro inline datepicker we do not have a way to identify that which month view is currently opened when we click next and previous arrows. So basically there is not even emitter for next and previous buttons
Use Case
I am using the inline datepicker and dateClass to show some information and color the cells accridingly. It works fine for the current month but when I move to previous/next month I want to make an API call based on the month view that has been selected color the cell background again based on the current view.

I think what you are looking for is monthSelected, an output on mat-datepicker. Please reopen the issue if that doesn't work for your use case. Thanks!

monthSelected emits even only when month is selected from the year view, what problem I am facing is we do not have any emitter when we click next and previous arrows.

How can I reopen this issue?


skorch export functionality

Maybe you can just provide export functionality so that a model can be imported into skorch which already provides an sklearn interface?

@ottonemo @MattPainter01 skorch export is a nice idea. Cross Val, Grid Seacrh etc. would be very useful. Can just wrap the torchbearer Model in a skorch Net instance so that metrics / callbacks all get called under the hood. Ill look into it :)

This seems unlikely


Forced update by deinstall/reinstall deleted all my contact history

I've heard from the press there is a new version 1.7. available. Because I couldn't update, I removed the app 1.6.0 from my Android 7.0 and reinstalled it. To my surprise, I got the 1.6.1 Version, but now all my history is lost. If the app would have warned me, I wouldn't did the deinstallation/reinstallation. Now my history is gone, and also my registred contacts of other peoples devices are now deprecated.

@dsarkar
Could you move this to the Android Repo?

Hi @andreasRu
I'm sorry about your bad experience losing data! I agree there should at least be some warning if data is going to be lost. Several months ago I opened a request in https://github.com/corona-warn-app/cwa-wishlist/issues/164 "Google Exposure Notification System should optionally preserve exposure data on app uninstall" which is related to your problem. If Google gave the user the choice to keep or delete the data, that would also be a warning.
The database and keys are deleted when the last COVID-19 app is uninstalled, and this deletion is done by Google not by the Corona-Warn-App (CWA). There is an FAQ article about deleting random IDs and it's a problem only on Google Android, not on Apple iOS.
If you absolutely need to uninstall the app and want to preserve the keys, you can temporarily install one of the other Google Exposure Notification System (ENS) compatible apps from another country, for instance from the list Mobile contact tracing apps in EU Member States, whilst you uninstall CWA. So long there is at least one ENS compatible app installed on the device, Google will not delete the key data. It does however delete the history of exposure checks for any app which you uninstall. So if you go to Settings > Google > COVID-19 exposure notifications > Exposure checks you only see the history for the COVID-19 apps which are currently installed.
To get version 1.7.0 of the app, you may need to be a little patient. We are told that it is a staged rollout over the next 2 days. I haven't got it yet either.

Hi @andreasRu,  you are basically suggesting to implement a warning before de-installing or re-installing the application or alternatively that the  RPIs keys (contact) are kept by the operating system.
If so, we would suggest to close this issue and continue to contribute to these related issues:

"Exposure data will be deleted notification": https://github.com/corona-warn-app/cwa-wishlist/issues/285
Preserve exposure data by OS: https://github.com/corona-warn-app/cwa-wishlist/issues/164

Best wishes,
DS

Corona-Warn-App Open Source Team

Should have closed this issue much earlier. My bad. By the way, thank you for the quick reply and assistance. Love the app, it's the most important app on my mobile since the pandemic. Maybe that is the cause I've felt so upset about this issue at first. Thank you to all the dev team.


CVXOPT in python2.7

Hi guys
I am trying to run this model of Linear programming
min (0a+0b+t1+t2+.....
S. to
-a-bx1-t1=<-y1
a+bx1-t1=<y1
-a-bx2-t1=<-y2
a+bx2-t1=<y2
-a-bx3-t1=<-y3
a+bx3-t1=<y3
:
and so on
I want to apply it as long as I can for x and y
my x and y are
x ={1,2,3,....}
y={2,3,4,5...}
When I run for more than 50 I get this message
Rank(A) < p or Rank([G; A]) < n
can someone please help me to figure out what's going on?
from cvxopt import matrix, solvers
from cvxopt import printing
n = 200
m=n*n
x = [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100]
y = [2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101]
A = matrix(range(m), (n,n), 'd')
c = matrix(range(n),(n,1),'d')
b = matrix(range(n),(n,1),'d')
printing.options['dformat'] = '%.1f'
#printing.options['width'] = -2
for k in range(n):
    if (k < 2):
        c[k]=0
    else:
            c[k]=1.0
    if (k%2):                   # Odd
            b[k] = y[(k-1)/2]
            A[k,0] = 1
            A[k,1] = x[(k-1)/2]
    else:
            b[k] = -y[k/2]
            A[k,0] = -1
            A[k,1] = -x[k/2]
    for k in range(n):
        for l in range(2,n):
            if ((k)==(2*(l-2)) or ((k+1)==2*(l-1))):
                A[k,l] = -1
            else:
               A[k,l] = 0
print (A)
print (c)
print (b)
sol=solvers.lp(c,A,b)
print(sol['x'])

Without a detailed look at your problem, it's probably not of full-rank and cvxopt does not do many checks/preprocessing (as far as i know). You might need to pass a more robust kkt-solver, do preprocessing or use another solver (scipy's or even better: any good simplex-solver).
On a second look: this is also totally unrelated to cvxpy. The cvxopt-project lives here.

I solved this problem by hand and some software for n about 20 with no issue. I will try with other solver. I am new in Python so I don't know a lot about what is the best for LP. Thanks sschnug.

Without a detailed look at your problem, it's probably not of full-rank and cvxopt does not do many checks/preprocessing (as far as i know). You might need to pass a more robust kkt-solver, do preprocessing or use another solver (scipy's IPM or even better: any good simplex-solver like Clp and co.).
On a second look: this is also totally unrelated to cvxpy (no usage of cvxpy). The cvxopt-project lives here.


Error: Provider produced inconsistent result after apply (v0.18.0)

Hi all,
after executing tofu apply the following error is thrown:

Error: Provider produced inconsistent result after apply
When applying changes to stackit_ske_cluster.kubernetes_cluster, provider
"provider["registry.opentofu.org/stackitcloud/stackit"]" produced an unexpected new value: .network: was null, but now cty.ObjectVal(map[string]cty.Value{"id":cty.NullVal(cty.String)}).
This is a bug in the provider, which should be reported in the provider's own issue tracker.

Used main.tf file
terraform {
  required_providers {
    stackit = {
      source  = "stackitcloud/stackit"
      version = "0.18.0"
    }
}

resource "stackit_ske_cluster" "kubernetes_cluster" {
  project_id             = var.project_id
  name                   = "example-cluster"
  kubernetes_version_min = "1.28"
  node_pools             = [
    {
      name               = "example-node-pool"
      machine_type       = "b1.2"
      os_name            = "flatcar"
      os_version_min     = "3815.2.1"
      minimum            = 1
      maximum            = 2
      availability_zones = ["eu01-3"]
      volume_size        = 20
      volume_type        = "storage_premium_perf0"
    }
  ]
}

tofu plan prints the following:
  # stackit_ske_kubeconfig.kubernetes_cluster_config will be created
  + resource "stackit_ske_kubeconfig" "kubernetes_cluster_config" {
      + cluster_name   = "example-cluster"
      + expiration     = 3600
      + expires_at     = (known after apply)
      + id             = (known after apply)
      + kube_config    = (sensitive value)
      + kube_config_id = (known after apply)
      + project_id     = "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
      + refresh        = true
    }

Note: Error does not happen when downgrading to Version 0.17.0

Hi @timethethyme, thanks for reporting the issue. We have just released a fix in the latest version v0.18.1


fucnsion -> function

Repl isn't working at the moment because of a SyntaxError

FML, thanks @benjamingr!


Dependency update and cleanup

Update of Spring Boot, Groovy and Spock.
I was able to remove the single groovy imports with groovy-all by just forcing the new version. I also had to exclude testng because the currently used new version in groovy 3.0.4 is not yet present on maven central. We could get it from jcenter but at we don't use it anyways it's cleaner to exclude I think. More info on that here, search for testng.
Some other dependencies also had to be forced.

 Check Butler dependencies


Leethub with New Version

Leethub is not working with the leetcode new version. Please Update this amazing extension with the new leecode version.

https://github.com/QasimWani/LeetHub/pull/576 meanwhile you can use this


activation api servce: add Highest RPC for max height atx

Motivation
part of #4614
depend on https://github.com/spacemeshos/api/pull/248
Changes
add ActivationService::Highest() that returns the max height atx id in the node.

bors merge


Replace all instances of event.keyCode (deprecated) with event.key

Fixes #277.
This PR is also the first step in making the editing more like Excel (i.e. type to edit instead hitting "Enter" first)

Argh, I forgot to rebase (again), so while it looks like this is a bunch of commits, it's only 62a8393 you should be looking at...

Double argh! I seem to have screwed up again: this branch doesn't seem to contain all my changes. I'm closing until I've figured out what's going on. Sorry for the mess-up!


[Discussion] Support non whitelisted catalysts

The situation today
As of today, there is a list of catalyst servers that is whitelisted by the DAO. Content servers sync with other servers on that list and only those. When a non whitelisted server starts, it will sync with whitelisted servers, but any deployments made to them will not be picked up by any other servers.
The proposal
We could potentially change this by changing this DAO maintained list with a more dynamic list of known servers. This would imply:

Allowing servers to register with each other
Make each server expose a list of other known servers

By doing this, any new server could use the whitelisted list as a starting point to know all active servers and register with them, therefore becoming a part of the network. Then each server would sync with all servers on the network.
The consequences
This approach would require a lot of changes to how DCL works today, but mainly:

We would need to change the way that the synchronization works:
A. We would probably want to announce new deployments, instead of asking for them to each known server
B. We would need to handle the lifecycle of the list of known servers
The explorer relies on the fact that catalyst servers all run the same version, that will no longer be possible to ensure
We need to enable the explorer to easily connect to other servers
Right now malicious servers can be simply removed from the whitelist and no client will connect to them. Maybe we would need to create a way to report servers, as a way to keep all users safe
We would need to have a good communication channel to announce updates, and provide support

We commited to 3. We need to enable the explorer to easily connect to other servers

We would need to change the way that the synchronization works:
a. We would probably want to announce new deployments, instead of asking for them to each known server
b. We would need to handle the lifecycle of the list of known servers

Should we start thinking more technically about that implementation?

The explorer relies on the fact that catalyst servers all run the same version, that will no longer be possible to ensure

I can only think about very well documented API contracts to handle that scenario. Thoughts?

Right now malicious servers can be simply removed from the whitelist and no client will connect to them. Maybe we would need to create a way to report servers, as a way to keep all users safe

I can think about a bunch of allowed nodes accepting any "untrusted" pushed deployments. That node is also trusted by the rest of the DAO nodes, and acts like a firewall of messages to avoid DoS on the rest of the nodes. At the end of the day, I believe those configurations will emerge naturally if we create a scheme flexible enough.

We would need to have a good communication channel to announce updates, and provide support

Updates like version updates? I know mechanisms to schedule protocol updates like the ethereum timebomb or protocol versions. In contrast to resilient API contracts (point 2) which may not require updates.

Option 1
Option 2

I think Option 1 has fewer moving parts and state-related problems (nodes won't know they are whitelisted or not).
Option 2 sounds more peer-to-peer, but the broadcasting of messages is not peer-to-peer, it is a directed graph broadcasting directly to the whitelisted servers. Since the whole deployment message and the contents are verifiable I would rather broadcast the update to all connected peers, or choose Option 1.
To summarize: Full P2P Option 2 sounds good, otherwise I'd bet on Option 1 to start.

My main concern is not a DoS actually. My main concern is with the explorer. For example, a malicious server could serve corrupted content on purpose. Currently, if someone finds out that this is happening, then that malicious server would be removed from the DAO whitelist and no client would connect to it anymore. If we enable clients to connect to any server, then we would lose that protection layer. Maybe the DAO could have a list of blacklisted servers?

Content is not corruptible, the CID (filename) of the content is merely a hash over the content data. And the whole deployment signs the list of files, we have a very decent trust chain to verify the deployments.
const x = require("ipfs-only-hash");

export function cid(buffer: Uint8Array): Promise<string> {
  return x.of(buffer, { cidVersion: 1 });
}

To summarize: Full P2P Option 2 sounds good, otherwise I'd bet on Option 1 to start.

Content servers already know if they are whitelisted or not. Given the current state of the project, I think that option 2 would be easier to implement. However, I personally also prefer option 1, since it's more generic, and there is no need for roles or special cases.

Content is not corruptible, the CID (filename) of the content is merely a hash over the content data. And the whole deployment signs the list of files, we have a very decent trust chain to verify the deployments.

Every server validates deployments, so there is no harm possible when propagating new deployments. However, my concern is that a malicious server could affect explorer clients. For example, let's say that Hash(File) = H. A server could be modified so that when a client wants to download the file with the hash H, another file is returned. I'm not aware of a validation  happening after all content servers have synced, so it could go undetected.
So my point is that right now, if a case like this is detected, the server would be removed from the DAO whitelist and no explorer would connect to it. If we were to allow the explorer to connect to any server, we would lose that protection level.


Fix typo

a Azure -> an Azure

@changeworld : Thanks for your contribution! The author, @mdgattuso, has been notified to review your proposed change.

Verified editorial correction.


Implementation(Coding) of the Profile Page

After a user signs in, we do not want to take them straight to the dashboard environment. We want to take them to their profile page, where we can display their different projects, modules(contributions) and achievements. Upon clicking the displayed projects or editing them, We can then take them to the dashboard environment.

I am making the Job very easy by dropping a possible profile page design idea.

I only need one or two persons to indicate interest in implementing the code for the image above.
Another advantage to the person that takes up this issue is that you get to push as many pull request in this page as possible.

I will be closing this issue to reopen it.


How do I validate keyboard input?

If you use keyboard input, there's no documented way to validate it according to the rules of the picker... you just have to "wait" to see if it takes it or not.
Even in the demo on the site, an invalid date will come up with an error "invalid Date Format"... but if you actually try the code listed, it doesn't show an error message at all.  Code for showing the error is not documented.
As suggested in other issue threads, you can use onInputChange, but it is disconnected from the validation scheme of the component which defeats the purpose.  You cannot take a value from onInputChange and validate it against the picker options automatically.

Yep, thats why in v3` we completely redone the validation and state-management process.

I suppose my desire was to see a complete and actual code preview in the v2.2.2 keyboard documentation.  Currently it is this https://github.com/dmtrKovalenko/material-ui-pickers/blob/develop/docs/pages/api/datepicker/KeyboardDatePicker.example.jsx
But this isn't reflective of what is actually displayed.  Can you update with the actual code showing the validation?  Or at the very least put it in the repo somewhere?


[CI] CodeChecker: Speed up analysis

Because the CI does not run a web server, there is no need to download and use NodeJS and the "web" part of CodeChecker.
In addition, this patch makes the presentation of the analysis results better by adding LLVM version to the artefact name.

Many thanks for the improvement. :-)


Generates incorrect type assignment

I recently got tripped up by some generated documentation on the deno package site  (which I assume is generated by this library?).

Deno doesn't like the default in the import (guessing because it's a keyword) and it's attempting to assign the type to a const?
https://codesandbox.io/p/sandbox/nice-easley-7dt7y4?file=%2Findex.ts%3A2%2C36

@dsherret could you take a look at this?

Closing as this was fixed on JSR; we don't actively work on the rendering logic that /x/ uses as that is a legacy implementation. hopefully at some point soon we can update /x/ to use the same logic


Improve admins session control

Hello @ceckoslab
In one of our discussions you mentioned better session expiration handling in frontend.
What we have currently we have implemented in frontend is very simple and probably annoying.
Obviously there is place for improvement from technical point of view.
Lets discuss how we can improve it. For start here are some entry details:
Currently our symfony installation use PHP session.
Here is a screenshot for default PHP session related settings

So as seen in the picture above PHP uses session cookies and their lifetime is set to 0. Which means session will lasts as long as browser remains open.
Probably there no need to change session settings and only implement session control in frontend which would work kind like this:

Send request to server
Code in backend check if session still alive
Send a signal to frontend, like following :
3.1 Session is alive
3.2. Session is died
Frontend acting accordingly
4.1. Awaiting for next request
4.2. Redirect to /logout

We can make it so that session will be checked on every XHR request but besides this do we need some timeout to be implemented?

Hello @korzol
We can check for inactivity period of for example 30 minutes. If user's session is inactive for more than 30 minutes then a user must be logged out and redirected to the login page. Also the user must see a notification that the session has expired.
We also can do periodical checks with JavaScript ... let's say every 20 seconds if a session is still active and if a session is not active then we again redirect to login page and display an notification that the session has expired.
Do you think that it will be possible in Symfony? I don't know how this can be done in Symfony? Is there a way to check for authentication and return JSON?

Hello @ceckoslab
Yes, of course it can be done in Symfony.

We can check for inactivity period of for example 30 minutes.

We can run this check in frontend

Also the user must see a notification that the session has expired.

I think it would be even more user friendly to present to user a warning lets say 5 minutes before expiration with a countdown timer

We also can do periodical checks with JavaScript ... let's say every 20 seconds if a session is still active and if a session is not active then we again redirect to login page and display an notification that the session has expired.

Currently we are using standard PHP session within Symfony hence we can check if session still alive with standard php function - session_status() which return one of three values:

PHP_SESSION_DISABLED if sessions are disabled.
PHP_SESSION_NONE if sessions are enabled, but none exists.
PHP_SESSION_ACTIVE if sessions are enabled, and one exists.

Additionally we can use Symfony's security bundle feature to check if user still logged in.
Once user logged in $this->getUser() within controller and $this->security->getUser() within service represents Users entity initiated for currently logged in user. So we can access current user data like this: $this->getUser()->getId(); (all other getters from Users entity available as well) if it still exists - okay, if not - redirect to login
We can check both PHP session and user data for additional security and return user array encoded to JSON to frontend - if session is active and error if session is died.

Closing - we move to Grafana


Feature requests

-Auto fetch and fill submission title based on the URL that's being input
-Add thumbnails (automatically fetched from the URL)
-Make links open in new tabs with noopener/noreferrer/nofollow
-Create a sitename config so the browser tab doesn't just display "Newest items"

Thank you for your input, but I don't really accept feature requests on github.
I will definitely not add thumbnails and opening in a new tab options. The prime directive of the "Brutalist Links - Brutalinks" project is to be very minimal in its interface.
For the other two, please feel free to write to the mailing list.

For the other two, please feel free to write to the mailing list.

I'm not 70+ years old so I certainly will not be using a "mailing list".

Cool.


fixing typo and features update

fixing typo extension on common
change string format to f-string for more readable, more concise, and less prone to error than other ways of formatting.

Looks good. Thanks.


nixos: warn on missing stateVersion

Motivation for this change
The first patch is OCD. The last patch is the part of #35366 everyone agreed upon. The middle one is plumbing.
Things done

[X] It works.
[X] Fits CONTRIBUTING.md.

Can you verify that this would be set in the vms? I belivenit was missing on those configs.

Can you verify that this would be set in the vms? I belivenit was missing on those configs.

You mean VMs? Is there a use case where this warning should not be given? Can you elaborate?
The original thread doesn't mention any such things.

Well, building .vm attribute should work exactly as before as it uses normal configuration.nix. VM tests might generate some warnings, but that could be cleaned up later.
Let's just check, I guess
@GrahamcOfBorg test boot

Failure on aarch64-linux (full log)
Partial log (click to expand)
Merge failed

Failure on x86_64-linux (full log)
Partial log (click to expand)
Merge failed

Rebased.
@GrahamcOfBorg test boot

Success on x86_64-linux
Attempted: tests.boot
No partial log is available.

Success on aarch64-linux
Attempted: tests.boot
No partial log is available.

Ok sounds good as a warning.

Thanks!

The intent is that without stateVersion, you get the behaviour of the latest release, which presumably is not broken.

When doing release upgrades with nixos-rebuild, it is untrue that you get unbroken behavior without stateVersion.
To make warning more justified, we can do like this:

Each module exports whether it depends on system.nixos.stateVersion

system.nixos.dependsOnStateVersion = mkIf_isNotOverriden cfg.package [ "services.postgresql.enable" ];

(I don't think we can check whether cfg.package evaluation depends on system.nixos.stateVersion, but if it is overriden in user configuration, then user probably pins it to some concrete version, so he doesn't require setting system.nixos.stateVersion)
2. Here we check if system.nixos.dependsOnStateVersion is empty. If it is, then no warning - user is aware of all his stateful options or doesn't have stateful options enabled. Otherwise we display list of options that would case disruption on release upgrades and abort evaluation.

Sure, we can do that, but I think that's an overkill as it introduces yet another general warning mechanism for a single use case. But if we had more of those, I would be ok with something like that.
As it stands now I'd prefer we go the way I specified above: split stateVersion into a bunch of per service options. That way you could migrate your services one by one between releases and we then could do warnings only when the service is enabled with the default warning system.


Improve cluster management documentation

I think cluster management docs could get a lot better. For example, I couldn't find references to stats, server_status, and jobs tables in the doc articles. I think we should add an "Operation" section, and in that section have the following articles:

Cluster configuration
Sharding and replication
Monitoring (which would contain info about status tables and stats)
Job control
Best practices

We're going to do a big doc reorg for 2.0, so putting this into the 2.0 milestone. I'll grab @chipotle and possibly a few more people next week and we'll come up with a new doc structure that we can viably ship by 2.0.

Sounds good. There's actually a v1.16 branch of the www tree, by the way, that will add the tables to the sidebar index, at least -- so you'll be able to find those more easily shortly, at least. :)

My last suggestion for documentation restructuring had these in "Administration". Perhaps we should move the "System tables" section from there into the ReQL section and add "Monitoring" and "Job control" to Administration instead, although I'm not sure doing that would give us a real benefit in clarity.
https://gist.github.com/c3a4daf1b7e25fb5b4cd.git

I personally would put the system tables under "Administration" rather than ReQL. But I haven't thought too deeply about it.

I'm assigning this to @coffeemug just to get an outline done at some point for a "best practices" document. We can reassign it to another engineer, but I'd need some basic bullet points to expand it into an article.

Ack.

I'm currently helping a customer with this, and doing writeups for them on various ways of setting things up. I'm hoping to turn this into a writeup we could put into the docs.

hello, is Best practices done? @coffeemug


Tie Help to Console Docs once ready

Is your feature request related to a problem? Please describe.
Once Console Documentation is ready (@chainzero plans to work on it) we should link the help from console to the docs
Describe the solution you'd like
Clicking on the "?" in Console should open the Console section of our docs site (open in new tab)

Additional context
Eventually we will implement better in-product help as outlined in #30 but until then this is a good intermediate term solution

Link to console docs: https://docs.akash.network/guides/deploy

@anilmurty @jtary please review the PR


[improvement] Dependencies update

The focus of this PR is migration from 17 to 18 version of React.
No breaking changes in the UI or functionality expected except faster rendering.
To test please inspect overall app.

Putting any testing on hold until we merge more of the pending UI changes. Then we will rebase and can test the dependency bump on a version that is closer to what will be released.

@veronikaslc Please rebase on the latest dev for testing

WSOD happens when trying to access the following in the Admin:

Clinic Dashboard
Patient Access
Patient Portal Survey Instructions

I see more warnings about unmet dependencies when building the frontend, mostly from MUI and its related modules depending on React 16|17. I guess MUI didn't yet switch to React 18.

Afaik Material UI v5 is the only version that fully supports React 18 nad we are on 5.11, should be good.  Somehow my build does not have any dependency conflicts. Did you delete yarn.lock file before build?

I see more warnings about unmet dependencies when building the frontend, mostly from MUI and its related modules depending on React 16|17. I guess MUI didn't yet switch to React 18.

Afaik Material UI v5 is the only version that supports React 18 nad we are on 5.11, should be good. Somehow my build does not have any dependency conflicts. Did you delete yarn.lock file before build?

This is what I get:
[INFO] [3/4] Linking dependencies...
[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency "<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning "material-table ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning "material-table ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning "react-router-dom > react-router ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^15.0.0 || ^16.0.0 || ^17.0.0".
[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning "@material-ui/core ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning "@material-ui/core ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning "@material-ui/core ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning "@material-ui/core ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning "@material-ui/core ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning "@material-ui/core ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0".
[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^16.0.0 || ^17.0.0".
[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^16.0.0 || ^17.0.0".
[INFO] warning "@uiw/react-md-editor > @uiw/react-markdown-preview ><EMAIL_ADDRESS>has unmet peer dependency "@types/react@>=16".
[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>

Here is what I have for dependencies. Somehow much less for MUI than your build.
[INFO] Running 'yarn ' in C:\Users\veron\Git\cards\aggregated-frontend\src\main\frontend [INFO] yarn install v1.22.17 [INFO] [1/4] Resolving packages... [INFO] warning Resolution field "<EMAIL_ADDRESS>is incompatible with requested version "<EMAIL_ADDRESS>[INFO] warning Resolution field "<EMAIL_ADDRESS>is incompatible with requested version "<EMAIL_ADDRESS>[INFO] warning Resolution field "<EMAIL_ADDRESS>is incompatible with requested version "<EMAIL_ADDRESS>[INFO] warning Resolution field "<EMAIL_ADDRESS>is incompatible with requested version "<EMAIL_ADDRESS>[INFO] [2/4] Fetching packages... [INFO] [3/4] Linking dependencies... [INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>[INFO] warning "react-router-dom > react-router ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^15.0.0 || ^16.0.0 || ^17.0.0". [INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^16.0.0 || ^17.0.0". [INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^16.0.0 || ^17.0.0". [INFO] warning " ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency "<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning "material-table ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0". [INFO] warning "material-table ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>|| ^17.0.0". [INFO] warning " ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has unmet peer dependency "<EMAIL_ADDRESS>[INFO] warning "@uiw/react-md-editor > @uiw/react-markdown-preview ><EMAIL_ADDRESS>has unmet peer dependency "@types/react@>=16". [INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has unmet peer dependency "@material-ui/core@>=3". [INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] warning " ><EMAIL_ADDRESS>has incorrect peer dependency<EMAIL_ADDRESS>[INFO] [4/4] Building fresh packages... [INFO] success Saved lockfile. [INFO] Done in 273.26s.

I'm wondering from where your build got @material-ui/core. This package is deprecated and belongs to Material UI v4.

@mui/styles is the only thing with real MUI unmet dependency. As they say, no guarantee of compatability however I did not noticed broken styles from what we use, and we do use alot of makeStyles from @mui/styles.

Sections labels now have a white background inside a gray background, instead of all gray.

Sections labels now have a white background inside a gray background. It should be all gray.

Confirm the defect. It appears in the latest rendition of this PR. Below are the screenshots of an instance running with changes prior to today vs today's PR:

Sections labels now have a white background inside a gray background. It should be all gray.

Confirming the defect. It appears in the latest rendition of this PR.

Today it was rebased on the latest dev. The before screenshots show a state that predates the survey updates (including shorter titles), and I'm inclined to believe it also doesn't contain #1316, which introduced formatting in section labels. It appears that in this update PR the background is always white for rendered markdown text.

Sections labels now have a white background inside a gray background. It should be all gray.

Should be fixed by 8ba5296.

No breaking changes in the UI or functionality expected except faster rendering.

@veronikaslc I'm not noticing any speedup. Is there a particular scenario I could try where the rendering is noticeably faster?

The text of descriptions of sections, questions, options is now black instead of gray.

No breaking changes in the UI or functionality expected except faster rendering.

@veronikaslc I'm not noticing any speedup. Is there a particular scenario I could try where the rendering is noticeably faster?

Not I know of on top of my head.


Feature: Single Table Cell selection, and add TableCellSelection command

Description

currently the table selection does only support selecting more than one table cells, but actually in some case we need use customized toolbar menu to operate a single table cell, a good e.g. from feishu.cn like this:

https://github.com/user-attachments/assets/3f5ed55d-bf0c-43b8-8deb-d35a938748a4

due to this, we need a TABLE_CELL_SELECTION command to support table cell toolbar customization .

Impact

There isn't a TABLE_CELL_SELECTION command (just like there aren't really other commands for creating a selection), but TableSelection supports selecting an individual cell now (anchor and focus on the same TableCellNode).


NATIVE-379: Use live-CMS in release mode

Still couldn't get the easteregg working on iOS in browserstack. Maybe it's a limitation of browserstack that I cannot click too many times at the same position or so. @maxammann Could you test on an iPhone?


fix: IAM partial policy logSinkRef updated to mgmt-project

Fixes issue with the log sink writer permissions not matching the the log sink name.

Found issue with kptfile, will have more commits


Les Pas sync with LDAP authentication on Nextcloud server

Describe the bug
If LDAP for single-sign-on is used on the nextcloud server the login username and the URL to access folders of this user differ. After setup the Les Pas app tries to access /dav/files/$username/lespas instead of the actual basepath which looks more like /dav/files/5e*******-*****-*****-9efe-b*****90fda/lespas. I don't know exactly how the Nextcloud API works here. Maybe there is some return value you can use after login to get the basepath from the server?
With LDAP and other SSO methods even multiple different usernames are possible for the same user.

Thanks for reporting, I'll look into this. This is something new to me, might take a little bit of time.

Ah, I just read https://docs.nextcloud.com/server/stable/developer_manual/client_apis/LoginFlow/index.html#obtaining-the-login-credentials which is referenced in your source code.
And here this is stated:

loginname: The username that the client must use to login. Note: Keep in mind that this is the loginname > and could be different from the username. For example the email address could be used to login but not > for generating the webdav URL. You could fetch the actual username from the OCS API endpoint /ocs/v1.php/cloud/user.

So I guess after login another call to get the username to this endpoint is necessary.

Thank you. Is it possible for you to test a debug build? I don't have a LDAP server.

@noc0lour please help testing this build

See if it fixes LDAP authentication
If it fixed, please test re-login function in Setting screen
If it fixed, please click logout function in Setting screen, see if your login name, rather than the encoded user_id is shown in the dialog

Many thanks.
LesPas-v2.5.10-debug-ldap.zip

release 2.5.20 supports LDAP


Set as Wallpaper Intent

How can i call set as intent which opens wallpapers app by passing image in intent like the following image
Thanks
https://user-images.githubusercontent.com/5235221/84685537-e8bbf580-af53-11ea-987d-dd32358c054d.jpg

How can i call set as intent which opens wallpapers app by passing image in intent like the following image
Thanks
https://user-images.githubusercontent.com/5235221/84685537-e8bbf580-af53-11ea-987d-dd32358c054d.jpg

Where is the Repository with issue?

This is not an issue.. its just something i need help to achieve using this plugin.
Please tell me how to do this using the package.
Thanks

Hi @imran-nadeem
This platform is not meant for assistance on personal code. Please see https://flutter.dev/community for resources and asking questions like this,
you may also get some help if you post it on Stack Overflow and if you need help with your code, please see https://www.reddit.com/r/flutterhelp/
Closing, as this isn't an issue with Flutter itself. If you disagree, please write in the comments and I will reopen it


Update minimum .NET CLI version requirement

Fixes https://github.com/OmniSharp/omnisharp-vscode/issues/3200

@cartermp What does semver.lt do with the x in your constant? Did you test on a box with only .NET Core 2.1 installed?

Also, I am not sure if this change makes sense -- this check is here because way back in the day there were .NET Core versions that wouldn't work. So if it fails I believe we would entirely fail to try debugging. At this point, I think we should probably just delete line 83-88 and remove the constant from this file.
If we wanted to implement what @richlander was really asking for, we would instead want to ship this somewhere else with some sort of warning about "hey we noticed your .NET Core is really old, you should update it" that maybe should be part of OmniSharp all up instead of this extension.

After reading the issues and seeing where this code is called, I agree with Greg. If we are going to check for a valid, up to date .NET Core SDK being installed, we wouldn't do it as part of debugger installation. Closing.


intl: use Ecma402 API where possible

ideally, use standard https://github.com/tc39/ecma402
For example. new Date().toLocaleDateString() instead of require('locale').date(new Date())
could also have a shim Intl object.
See also #202  and #136 and #304

For example. new Date().toLocaleDateString()

This doesn't exist in Espruino (which is why we added the Locale library), so there would have to be some kind of polyfill for this.
Do you have an example of what the equivalents of http://www.espruino.com/Bangle.js+Locale would look like?

For example. new Date().toLocaleDateString()

This doesn't exist in Espruino (which is why we added the Locale library), so there would have to be some kind of polyfill for this.

Right.

Do you have an example of what the equivalents of http://www.espruino.com/Bangle.js+Locale would look like?

That was an example.  new Date().toLocaleDateString() will do roughly what require('locale').date(new Date()) does.

That's one example, which doesn't use Intl.
What about distance, speed, currency and temperature?

That's one example, which doesn't use Intl.

it's the convenience version, Could also be something like (new Intl.DateTimeFormat()).format(new Date())

What about distance, speed, currency and temperature?

from https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/NumberFormat#Using_style_and_unit -
console.log(new Intl.NumberFormat("pt-PT",  {
    style: 'unit',
    unit: "mile-per-hour"
}).format(50));
// → 50 mi/h

Ok, that's kind of what I thought... So how would the app developer know what to set the locale and unit to?
The idea of locale was very much that all that was handled for the developer. They just say "I have a speed here, display it in a way that the user understands".

So how would the app developer know what to set the locale and unit to?

there are ways to do that. - see https://unicode-org.github.io/cldr-staging/charts/38/supplemental/unit_preferences.html#meter-per-second for example
What's the best way to give some comments on the i18n aspects of the locale class? An issue?

Thanks. I'm still curious to see an actual code example of the equivalent of something like require('locale').speed(150) using the Intl class though.

What's the best way to give some comments on the i18n aspects of the locale class? An issue?

Yes, that's probably best.
However as I mentioned, I've put a decent amount of work into the locale class (with input from those that requested it) and it's hardly being used (even by those that asked for it) - which means that personally putting more work in is not high up my priority list.
If you're willing to add internationalisation to a bunch of existing apps with your suggested changes in then that'd be great though and I'd be extremely happy to take PRs.


Update validation layer

Description
The current default version of the validation layers have a bug that prints an incorrect error message in a new sample I am working on. This change updates the template so that we fetch the most recent version of the layers available today (with this, and possibly a few other bugs, fixed).
These changes only affect the template, so for them to take effect in an existing Android build, you need to follow the instructions in https://github.com/KhronosGroup/Vulkan-Samples/blob/670f52353dc9cc422ab535fa5b66d2eeb04a70db/bldsys/cmake/template/gradle/download_vvl.gradle#L29-L32
Note that the Validation Layers repository does not consistently name their binaries or URL paths, so those had to be updated as well, and might need to be changed again in the future.
General Checklist:
Please ensure the following points are checked:

[x] My code follows the coding style
[x] I have reviewed file licenses
[x] I have commented any added functions (in line with Doxygen)
[x] I have commented any code that could be hard to understand
[x] My changes do not add any new compiler warnings
[x] My changes do not add any new validation layer errors or warnings
[x] I have used existing framework/helper functions where possible
[x] My changes do not add any regressions
[x] I have tested every sample to ensure everything runs correctly
[x] This PR describes the scope and expected impact of the changes I am making

Note: The Samples CI runs a number of checks including:

[x] I have updated the header Copyright to reflect the current year (CI build will fail if Copyright is out of date)
[x] My changes build on Windows, Linux, macOS and Android. Otherwise I have documented any exceptions

This is an Android-only change, so I can't test it I'm afraid.

bldsys/cmake/template/gradle/app.build.gradle.in is already a template that gets configured here. If you changed bldsys/cmake/template/gradle/download_vvl.gradle to also be a template then in the future you'd only need to make changes to create_gradle_project.cmake to update the validation layer version.

Hi @jherico , I looked into this, but I think it might not be worth having a template for download_vvl.gradle, because this is the only parameter that needs adjusting, and in reality it is never used, it is only a fallback, if the caller of the script does not define their own version:
https://github.com/KhronosGroup/Vulkan-Samples/blob/670f52353dc9cc422ab535fa5b66d2eeb04a70db/bldsys/cmake/template/gradle/download_vvl.gradle#L39-L42
Perhaps we could remove this safeguard, to make it more explicit that the caller (build.gradle) needs to provide a layer version?


Fixed mpu9250 43 second bug and other sensor class bugs

Fixed the issues reported in the mpu9250 ticket as well as the new bugs from the actuator class PR

the 251 on the left hand side represents the time difference between the prints (251 ms from the specified delay of 250 ms)


upgrade to support projects v2, resuming previous runs

Summary
Updates the script to handle GitHub Projects V2 boards and more advanced configuration and resume capabilities.
Details
Changes were made for the following:

Configurable explicit mapping of azure devops entities to github equivalents via config (JSON), notably:

work item type to label
tags to labels
user email to github username
work item state to github projects v2 column

Support for resuming previous migration

Ability to map ADO URLs to Github Issues
Attempt to match ADO items to Github Issues based on titles

Deduplication attempt based on first matching issue, see all matches with -Debug CLI option

Mentioning of parent issues from child issues during migration
Added shield.io badges to migration comment for ADO relations
Added collapsed relations table in comment
Support for github milestones (using ADO iterations)
Ability to automatically create milestones and labels using gh CLI
Support unicode in objects returned from az devops or gh CLI  such as labels
Workaround rate limits (identified in #6 )

Is this being migrated? I about to do this migration my self!

It looks like this requires some work to get up to snuff (obviously super late PR review on my part).
I am using
$ pwsh --version
PowerShell 7.4.6

I am writing this for myself for later on things I have found:

Can no long use [bool] for params since PowerShell 6+ is more strict. Can use [System.ComponentModel.DefaultValueAttribute($false)] instead of [bool], or just use [switch] instead
In the code, functions are referenced before they appear in the code:

Get-GitHubRepoInfo: /Users/joshjohanning/Repos/ado_workitems_to_github_issues-Liam-Deacon/ado_workitems_to_github_issues.ps1:196:48
Line |
196 |  … [GithubRepository]$githubRepositoryInfo = (Get-GitHubRepoInfo -org $g …
|                                               ~~~~~~~~~~~~~~~~~~
| The term 'Get-GitHubRepoInfo' is not recognized as a name of a cmdlet, function, script file, or executable program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.

gh projects cli changed, instead of gh projects list --org abc it's gh project list --owner abc
There are curl.exe references that obviously won't work on my MacOS :(


Xamarin Android / iOS Linker Exception

I'm currently trying to get to the bottom of issues I'm having using FluentValidation within my Xamarin solution.  The Linker stage of the build fails and details FluentValidation is the source of the problem.
The build exception I see is:
C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(1504, 5): error MSB4018: The "LinkAssemblies" task failed unexpectedly.
Xamarin.Android.XamarinAndroidException: error XA2006: Reference to metadata item '!!0[] System.Array::Empty()' (defined in 'FluentValidation, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null') from 'FluentValidation, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=null' could not be resolved. ---> Mono.Cecil.ResolutionException: Failed to resolve !!0[] System.Array::Empty()
at Mono.Linker.Steps.MarkStep.MarkMethod(MethodReference reference)
at Mono.Linker.Steps.MarkStep.MarkInstruction(Instruction instruction)
at Mono.Linker.Steps.MarkStep.MarkMethodBody(MethodBody body)
at Mono.Linker.Steps.MarkStep.ProcessMethod(MethodDefinition method)
at Mono.Linker.Steps.MarkStep.ProcessQueue()
at Mono.Linker.Steps.MarkStep.Process()
at Mono.Linker.Steps.MarkStep.Process(LinkContext context)
at Mono.Linker.Pipeline.Process(LinkContext context)
at MonoDroid.Tuner.Linker.Process(LinkerOptions options, LinkContext& context)
at Xamarin.Android.Tasks.LinkAssemblies.Execute()
--- End of inner exception stack trace ---
at Xamarin.Android.Diagnostic.Error(Int32 code, Exception innerException, String message, Object[] args)
at Xamarin.Android.Tasks.LinkAssemblies.Execute()
at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
at Microsoft.Build.BackEnd.TaskBuilder.d__26.MoveNext()
So I cloned this repository to my machine to see if there way anything obvious I could see.  I can compile the portable projects without any changes or errors to the vs-2015 solution however the resultant library is v <IP_ADDRESS> whereas my project is referencing <IP_ADDRESS>
Do you have any insights on this issue?  What versions of Xamarin / Mono is the latest version built against?

After some more investigation it appears that NuGet is adding references to:
packages\FluentValidation.<IP_ADDRESS>\lib\dotnet
Rather than:
\FluentValidation.<IP_ADDRESS>\lib\portable-net45+wp80+win8+wpa81

Interesting...I thought nuget was supposed to try the most specific package first (which in this case, should be the PCL). It could be that I need to rename the "dotnet" one to be somethng more specific (eg uap10.0), which should then let the PCL be picked up for xamarin. I'll let you know.

Yeah, this is a strange one, I've not seen this one before so it took quite a while to track down. I don't know much about the NuGet package picking logic so can't help there unfortunately.

Yes, it's not very clear...especially around the 'dotnet' moniker (which I believe is being renamed again to "netstandard")

Well, thats helpful.

I've just deployed a new nuget package 6.2.0-beta1....could you try this and see if it picks up the right one? (you'll need to include prerelease packages)

Hi Jeremy,
Ran the package update process and can confirm that (this is an MvvmCross app):
My core projects correctly referenced Net45
Android & iOS (and other portable projects) correctly referenced portable-net45+wp80+win8+wpa81
So whatever was throwing off the NuGet library selection logic references in 6.1.0 is fixed.  I'll close this ticket along with this comment.  Good work and very fast! :)

Great, I'm glad it's sorted. I removed the "dotnet" folder and moved the
dll from there into a separate folder for uwp apps.
On Friday, 12 February 2016, Jammer<EMAIL_ADDRESS>wrote:

Hi Jeremy,
Ran the package update process and can confirm that (this is an MvvmCross
app):
My core projects correctly referenced Net45
Android & iOS (and other portable projects) correctly referenced
portable-net45+wp80+win8+wpa81
So whatever was throwing off the NuGet library selection logic references
in 6.1.0 is fixed. I'll close this ticket along with this comment. Good
work and very fast! :)
—
Reply to this email directly or view it on GitHub
https://github.com/JeremySkinner/FluentValidation/issues/203#issuecomment-183413514
.

All good my man! :)


[FEAT] Support for Elide Dataprovider

Is your feature request related to a problem? Please describe.
Elide is a low code java solution to build rest and graphql apis. Suggestion is to build a dataprovider to provide support for Elide as a backend.
Describe alternatives you've considered
No response
Additional context
No response
Describe the thing to improve
Write a dataprovider for Elide, so refine can work out of the box with elide rest query formats.

@omeraplak shall we mark this as completed?


Contextual load

Would love to see your plugin loading it's code only when necessary.
I know that it is common WP worst practice to load everything everywhere at any time. But I feel this pattern is shifting slowly to the better, for performance reasons which get more and more attention.
So why include all the project's files in general in any load situation? The more plugins do so the worse the dynamic speed of the whole site. An example: Why should an authenticated user who is not an admin load your plugin at all?
So my wish for any plugin I install (even WP itself) would be to see it loading depending on context.
BTW - the plugin has been mentioned here today: https://wp-sofa.de/news-divi-macht-sich-zukunftsfaehig-ein-bisschen-fediverse-google-fonts/ (see topic no. 12)

Hi Frank
Git-installer won't send any data to the client if not in WP-Admin interface. So not logged in users won't load any data from the plugin.
Therefore I am not quite sure what to improve to close this issue. Do you have some concrete suggestions? Performance is really an important issue and I certainly don't want git-installer to slow down a website.

Hi Nico,
I really appreciate that you are taking my concerns serious. Thank you for
this.
Speed is not only about reducing the amount of data sent over the Internet.
It's also about reducing server response time, which will increased by
every plugin you have installed, because a script language like PHP takes
time to evaluate, compile and execute. I'm talking about non-cached page
requests.
For visualisation are plugins out there like "Query Monitor" and/or "Code
Profiler" to finally realise that every plugin adds up time to page calls -
especcially when code is not organised due to the context where it's
needed.
E. g. settings page code is only needed on the settings page, literally
nowhere else. So why should it be loaded on all admin pages and even on the
front end?
Why should the plugin even run at all on the front end, why at all for
non-admins who return false by the current_user_can(  'manage_options' )
function?
I know that WP itself is doing too many update checks when admins make
frequent requests inside the admin area - with the effect of slowing down
admin work tremendously when you have 4 or 5 premium plugins installed
which check their separate sources all the way. Those checks run again and
again after a few minutes when you're doing intense configuration work.
That means that even hooking into the usual WP amount of updates with
another source to load from will harm at least admin work.
I've seen that you load all your plugin files unconditionally. 2 impacts:
this enlarges load times of all the pages and even ajax requests on the
front end. It also makes a dance with WP's too many update requests when
admins do  actively their work.
I have no detailed ideas at the moment in how to refactor a plugin like
yours that loads like all the others "everything everywhere" (except CSS
and JS which is a great exception!) but I know the effects of  plugins with
their update routines. Usually you spare several seconds on each request if
you restrict those external background requests via WP hooks to run only in
certain contexts like on the update page and maybe on the plugin page
(where otherwise checks are executed insanely often).
Thank you for your time reading this.
The best,
Frank
Nico Martin @.***> schrieb am So., 27. Nov. 2022, 05:53:

Hi Frank
Git-installer won't send any data to the client if not in WP-Admin
interface. So not logged in users won't load any data from the plugin.
Therefore I am not quite sure what to improve to close this issue. Do you
have some concrete suggestions? Performance is really an important issue
and I certainly don't want git-installer to slow down a website.
—
Reply to this email directly, view it on GitHub
https://github.com/SayHelloGmbH/git-installer/issues/36#issuecomment-1328177387,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABOUH3ARTUWVA7BQNMXCR6LWKLZNVANCNFSM6AAAAAASMD5TEI
.
You are receiving this because you authored the thread.Message ID:
@.***>


[Fix] Prevent mcmmo from modifing fish itemmeta

mcMMO fishing skill will modify fish caught. For example, add enchantment or change material type.
Stopped it by listenening mcmmo fishing skill event.

Servers with mcmmo must change mcmmo option config.yml > Skills.Fishing.Override_Vanilla_Treasures to be false.
If the option is true and caught item stack icon is not fish, caught item stack is changed to Salmon forcibly.
This infomation should be on wiki, I think.