Omit X-Powered-By HTTP response header to avoid exposing Ratchet version to potential attackers

Right now, Ratchet always includes an X-Powered-By HTTP response header exposing the specific Ratchet version. This could potentially be used during reconnaissance to gain more information to prepare following attacks (see #932 and others).
At the moment, there does not appear to be a way to configure Ratchet to control this behavior. I would like to use this ticket as an opportunity to see if the default behavior makes sense, if we should remove this header in its entirety, if we should only include the major version or if we really need an option to control this.
For example, nginx always sends the Server: nginx header with an option to exclude the specific version (server_tokens off). For ReactPHP, we always send the Server: ReactPHP/1 header with only the major version included (https://github.com/reactphp/http/pull/374). PHP always sends the X-Powered-By: PHP/6.0.0 header unless expose_php is off.
In the meantime, you can always avoid this header by configuring your reverse proxy to remove this header. For nginx this should be as easy as:
proxy_hide_header X-Powered-By;

Note that irrespective of this header, the fact that Ratchet is serving the HTTP request can always be determined through other means, such as specific HTTP headers, timing attacks and additional implementation quirks. I do not currently see that this HTTP header alone constitutes a security issue on its own, but I definitely agree that this could contribute to seeing more targeted attacks should any security issues arise.
Any input is welcome :+1:

This is definitely the best solution, although it is radical. I can understand that you might not agree to use such a solution. But I think that this HTTP header does not add anything useful to Ratchet. Indeed, it is more likely to bring harms than benefits.

@Rezyan I agree with you, not sure tho how many users will be affected by this change (BC-break). This is something we want to evaluate here, but I think finding a temporary solution and completely removing it later may be the right way to go about this.

If this HTTP header is intended to remain in the code, perhaps we could add a section in the README.md file that would indicate how to remove the HTTP header, both on Nginx and Apache. What do you think about this?

I think adding this as part of a documentation should be at least one solution here, completely agreed :+1:

@Rezyan , have you come right with this? was planning on using Ratchet but if it has this sort of issue might look away

@NkazimuloMvundla There are a few options in @clue's description of this ticket, for example you can also avoid this header by configuring your reverse proxy to remove this header. If you're using nginx, this looks something like this:
proxy_hide_header X-Powered-By;

If you have any input on how we should handle the situation with the X-Powered-By header, we're happy about your input and your reasoning on this :+1:
FYI: I will mark these last answers as off-topic (mine included) as we didn't really progress in finding a good solution for the overall topic.


kbs: Update csv-rs dep to rev b74aa8c.

Support more platform and launch API.
Support openssl 3.2.0.

@jialez0 @Xynnn007 Please help to review the code.

please change the rev inside client tool's Cargo.toml once guest components side pr is merged

please change the rev inside client tool's Cargo.toml once guest components side pr is merged confidential-containers/guest-components#448

Done


Create resizable containers/controls

For: Allow interfaces to be resized
Change: New controls that can be resized somehow.

No new controls are needed -- native Godot UI supports what is needed. Example scene was added to illustrate this.


Improve the error message thrown by evaluate()

The error message now includes the reason the evaluation failed and the
formula expression that was being evaluated.
Change-type: minor
Signed-off-by: Lucian Buzzo<EMAIL_ADDRESS>

@balena-ci I self-certify!


upgrade mosn version

What would you like to be added:
https://github.com/mosn/layotto/pull/673 upgraded mosn version to a commit id in develop branch.
We should submit a PR to make layotto depend on a commid id in master branch instead.
Why is this needed:
commit id in develop branch is not stable.

This issue will be assigned to @dzdx

/assign me

@dzdx hi , could u help continue with this issue?


I set material.useGammaTonemap = true in my model,but seems like it dose't work

I download a FBX model from the editor. After downloading, it contains the corresponding JSON files and images. I use this method to load the model. My code is as follows:
var url = "../FYPlaycanvas/paint_whit/paint_whit.json";
        app.assets.loadFromUrl(url, "model", function (err, asset) {
            self.car = new pc.Entity();
            self.car.addComponent("model", {
                type: "asset",
                asset: -10,
                castShadows: true,
                isStatic: false,
                castShadowsLightmap: true,
                receiveShadows: true,
                lightmapped: false
            });
            app.root.addChild(self.car);
        });

but the effect is different from that of using the editor.To figure this problem,I compared all the parameters
,but they are same.so I changed my ways,  In the Editor,I repeated the problem:the key point is material.useGammaTonemap.
In the Editor,
If material.useGammaTonemap = true,the effect is right,screenshot is here:

If material.useGammaTonemap = false,the effect is wrong,which is same as I used with engine'effect,screenshot is here:

but my log shows I set it true.so it seems material.useGammaTonemap = true dose't work,I don't know why,please help.

I have a suspicion that this is because your Editor scene has Gamma set to 2.2:

However, your 'Engine-only' app needs to enable this explicitly like this:
app.scene.gammaCorrection = pc.GAMMA_SRGB;

I'm fairly certain this is what the problem is, so I will close this issue for now. But if you disagree, please follow up and I will reopen it.


 click lose the css in dev mode

Bug report
Describe the bug
in A page
import<EMAIL_ADDRESS>
in Index page
<Link href={a.path} key={route.category + a.label}>
    <a className="item">
        {a.label}
    </a>
</Link>

If I click  the Link in Index page  navigate to A Page. the styles lose in dev mode(DemandEntry build complete).
but If I refresh the A Page, the style is OK.
the next.config.js is  the following:
withCSS(withLess(withFonts(withTypescript(config))));

the styles final find in
<link rel="stylesheet" href="/_next/static/css/styles.chunk.css">
I thinks
may be caused by onDemandEntryHandler, I am not sure this
or need the hash update
<link rel="stylesheet" href="/_next/static/css/styles.chunk.css?needupdate">

System information

OS: macOS
Browser Chrome
Version of Next.js:  "^8.1.0", ^9.0.2

Additional context
Add any other context about the problem here.

I have the same problem


Use-case for production

I am wondering about production scenarios with Meshblu. Let's take this use-case:

I am producing 10k connected lamps
I create Meshblu device for each lamp, and write token into the lamp firmware
I sell the lamps to the customers
Each customer creates his "user" device to store his identity
Customer calls /claimdevice/{uuid} and his UUID is set now to be the owner

Is this how it is supposed to work?
I see several problems with this scenario:

Once it is an owner, customer can completely change the device description in database, so lamp firmware might be updating/reading completely wrong/non-existant data
Maybe there is some lamp metadata stored (like lamp service serial number or password), that should not be shown to the user of the lamp (customer who bought the lamp), but are still in the device document in the database, and since customer became owner of the device it can do with Meshblu database document whatever he wants

How do we handle these issues and what is a correct procedure for this use-case - i.e. for making a connected product with Meshblu?

Great question and one that we have discussed several times.  There are a few ways to address this scenario:

Your application could manage the controls of which properties the new lamp owner could modify.

You could transition away from owner (like we are doing) and manage all devices purely with whitelists and blacklists.  This would allow you to give the new "owner" discover, send, and receive permissions but not configure.

We have implemented a concept of virtual devices (not yet documented).  This approach allows you to create a UUID for a virtual device that a user or groups of users can "own" that simply points to the actual device.  This approach may give you more flexibility to managing and securing the actual device. We can elaborate more on this approach if it sounds interesting to you...

@chrismatthieu this is indeed very important question, as without this explained I do not see how Meshblu can be used as a cloud platform for a developer/producer to put his product on the market
1. Your application could manage the controls of which properties the new lamp owner could modify.
I do not like really much this approach, because then every application would have to manage presentation to the user.
However - this would not prevent user to modify the Device representation in the database. As he receives his UUID/auth_token when he registers on Meshblu he can just make the curl calls over /devices route (when he claimed the device he became the owner), independently of the app you provided.
2. You could transition away from owner (like we are doing) and manage all devices purely with whitelists and blacklists. This would allow you to give the new "owner" discover, send, and receive permissions but not configure.
This looks like the best solution to me and this is what I had in mind:

Producer of the lamp keeps the ownership of the object during it's whole lifetime
When user "claims" the device, he is actually just whitelisted (all except config), and not really put as the owner.

However, I still see two problems with this approach:

When user is whitelisted to discover, he ca see ALL device content. There is no "scope" limit. Some fields should be potentially kept private for the producer (real owner of the device) - like a password to enter service mode of the device, or some device statistics...
User can not "share" his device with other users. For example, he can not share a control over lamp or door lock with his family members... This is because user is just "whitelisted", and not real owner, plus he is not whitelisted in the "config" - so he can not modify the device to add other users to the whitelist! Only owner or someone whitelisted in the "config" can do this - and you will not call Google to add access to your router to your wife.

I am thinking about these potential solutions:

For the first problem, maybe you can add user field alongside with owner
This user can have limited scope inside device, as defined by the owner
User is whitelisted but not in config. However, user can whitelist other users (also without config), who inherit his scope, or some definable subset of his scope

This could potentially resolve both problems I mentioned. Do you see some problems in this thinking?
3. We have implemented a concept of virtual devices (not yet documented). This approach allows you to create a UUID for a virtual device that a user or groups of users can "own" that simply points to the actual device. This approach may give you more flexibility to managing and securing the actual device. We can elaborate more on this approach if it sounds interesting to you...
Yes, this sound interesting, but I still can not see the real value in this. On the contrary, I am very afraid that this will potentially complicate the system. Imagine that practically all devices you have to duplicate with Virtual Device(s) - and in IoT we expect already millions and millions of devices...  I suppose that this Virtual Device will have a separate auth_token - which is an additional thing to sell to developer, and it doubles the cost of the product (cloud wise).
But yes, please do tell me more about the concept - I can not completely understand it without further explications.

While I agree with you about virtual devices adding more complexity to your app, I believe that this option  (#3) will meet your needs.  I'll defer to someone else on the team that can explain virtual devices and how they can be used as groups better than me.

We've discussed virtual devices a lot amongst the team and implemented some prototypes. I'll write up something to explain it in detail.

@iamruinous thanks a lot. I think this thread is a good place to post a summary, I am very interested about the concept.
Can you please also comment on my idea of adding the user and scope fields to Device model?

Currently owner imbues special access to the device placed in there, bypassing the whitelists. I'd like to see that removed. Whitelists should be the only thing that determine authorization. Owner should simply be metadata and have no special meaning.
Adding user and scope would lead to more special cases. The whitelists should provide the necessary mechanisms to build robust applications. If it can't be done with the current set (configure, discover, receive, send, configureAs, discoverAs, receiveAs, sendAs) then we should add more whitelists.
The more complicated permissions are, the larger the attack surface as well as greater likelihood of bugs.

Virtual Devices are shadows of a "real" device. A user can have discover/configure rights to a "shadow", and never even know that the real device exists. Using Meshblu Config Forwarding it becomes easy to forward all changes the user makes to a service that can then verify the update. To the user they are manipulating a Meshblu device just like any other.
We are currently building something similar to this to allow group device management in Octoblu. Below is a rough, untested example to convey the basic idea.
Given these Meshblu devices:
Admin = {
  uuid: "admin-uuid"
}

User = {
  uuid: "user-uuid"
}

Device = {
  uuid: "device-uuid",
  configureWhitelist: ["admin-uuid"],
  discoverWhitelist: ["admin-uuid"],
  meshblu: {
    configHooks: [
      {
        url:"http://device-service/original-update/device-uuid",
        method: "POST"
      }
    ]
  }
}

VirtualDevice = {
  uuid: "virtual-device-uuid",
  parentDevice: "device-uuid",
  configureWhitelist: [
    "user-uuid",
    "device-uuid"
  ],
  discoverWhitelist: [
    "user-uuid",
    "device-uuid"
  ],
  meshblu: {
    configHooks: [
      {
        url:"http://device-service/virtual-update/virtual-device-uuid",
        method: "POST"
      }
    ]
  }
}

The configHook specified in the VirtualDevice will forward the config event to any HTTP webhook.
// example express request handler, (untested psuedo-ish code)

var _ = require('lodash');
var MeshbluHttp = require('meshblu-http');
var OMITTED_FIELDS = ['uuid', 'meshblu', 'owner', 'token', 'sendWhitelist', 'receiveWhitelist', 'configureWhitelist', 'discoverWhitelist', 'sendBlacklist', 'receiveBlacklist', 'configureBlacklist', 'discoverBlacklist', 'sendAsWhitelist', 'receiveAsWhitelist', 'configureAsWhitelist', 'discoverAsWhitelist'];

function virtualUpdate(req, res) {
  var meshbluConfig = {uuid: 'device-uuid', token: 'device-token'};
  var meshbluHttp = new MeshbluHttp(meshbluConfig);
  var id = req.params.id;
  var update = _.omit(req.body, OMITTED_FIELDS);
  meshbluHttp.update(id, update, function(error) {
    if (error != null) {
      res.status(422).send(error.message);
    }
    return res.status(204).end();
  });
}

function deviceUpdate(req, res) {
  var meshbluConfig = {uuid: 'device-uuid', token: 'device-token'};
  var meshbluHttp = new MeshbluHttp(meshbluConfig);
  var id = req.params.id;
  var update = _.omit(req.body, OMITTED_FIELDS);
  meshbluHttp.find({parentDevice: id}, function(error, devices){
    _.each(devices, function(device){
      meshbluHttp.update(device.uuid, update, function(error) {
        ...
      });
    })
  });
}


New logo for Chafu

Hi, I designed a logo for Chafu. How do these look? If you have an idea, you can tell me. Also, If you like it, I will send you a pr.

Looks good. Make a PR. Also please state what license this logo is under when you create the Pull Request.

I am glad you like it. I will send you a pr. Hangisini tercih edersiniz? Black-red or white-red? I can also update the readme file. Do you want this?


59 combine existing components

Signed-off-by: raghunandanarava<EMAIL_ADDRESS>and co-authored by prebbe<EMAIL_ADDRESS>

This has been tested locally and is working as expected, thenceforth merging it as informed to prebbe earlier.


fix: remove trailing / from nested paths

Hi!
This PR attempts to fix https://github.com/tamasfe/aide/issues/134.
Currently, API documentation for nested routes is built by combining the path of the base route (with trailing slashes removed) with the path of the nested route.
If a path of a nested route is only "/", as seen in the todo list example, this leads to that path now containing a trailing slash:
ApiRouter::new().nest_api_service("/todo", ApiRouter::new().api_route("/",post_with(handler, docs)))

Generates this path:
"paths": {
    "/todo/": {
        ...
    },
    ...
}

This PR fixes this issue by removing any trailing slahes after the nested path is built in the nest and nest_api_service functions.
One edge case needs to be handled. In a construct like the following:
ApiRouter::new().nest_api_service("/", ApiRouter::new().api_route("/",post_with(handler, docs)))

the path of this route would be empty. A route of just / is therefore returned unmodified.
I've also added a basic unit test.
This seems to be a simple fix, I hope I didn't miss any other cases here.

This is called URL normalization. It's better to have a fn normalize(&mut String) for all the trims scattered around the crate. There are a few crates for this purpose, but I prefer the simple or builtin approach.


numpy.exceptions.AxisError: axis 1 is out of bounds for array of dimension 1

When running the Modin tests with the following way I see the error.
MODIN_CPUS=44 MODIN_ENGINE=ray python -m pytest modin/pandas/test/dataframe/test_map_metadata.py

FAILED modin/pandas/test/dataframe/test_map_metadata.py::test_convert_dtypes_multiple_row_partitions - numpy.exceptions.AxisError: axis 1 is out of bounds for array of dimension 1

@YarShev can not reproduce

Checked now, also do not see the failure on latest master.


spell check error contractions

Under English USA language when typing anything with "n't" such as doesn't, didn't, aren't... I get a spell checking red mark. The correction choice it gives me is does n, did n, are n....
As far as I can tell all other contractions appear to fine.

Hello @tony4212, please specify the following information:

OS of the server, where ONLYOFFICE Document Server is installed;
Its installation type (docker, deb/rpm or Windows installation);
Currently installed version of Document Server.


Upgrade Wiki to Version 1.30.0

Theme is broken but I switched to Vector. We can fix later if needed.


Feat: API Extensions uncommon queries

What's the purpose of this pull request?
This PR aims to enable the possibility of using API Extension for some queries that weren't mapped in the first 'wave'.
Queries: ClientShippingSimulationQuery, ClientSearchSuggestionsQuery, ClientTopSearchSuggestionsQuery.
It also facilitates the logic in the ShippingSimulation component and exposes the address as prop.
How it works?
It integrate the default fragments in the corresponding queries and exposes the data from the hooks and function that fetches these data.
How to test it?

add new fields into your schema using API Extensions or just add existing fields returned from Faststore API into the mapped fragments.
Use the experimental functions or hooks while overriding components.

e.g.

ClientShippingSimulation (fragment) exposes fields into ClientShippingSimulationQuery. Then import and use the useShippingSimulation_unstable(), or the getShippingSimulation_unstable() function from @faststore/core/experimental in custom components.

ClientSearchSuggestions (fragment) exposes fields into ClientSearchSuggestionsQuery. Then import and use the useSuggestions_unstable() from @faststore/core/experimental in custom components.

ClientTopSearchSuggestions (fragment) exposes fields into ClientTopSearchSuggestionsQuery. Then import and use the useTopSearch_unstable() from @faststore/core/experimental in custom components.

Also, mention the issue here so github links it there.


Added Sparse to Compact Matrix Calculator

This PR adds Sparse to Compact Matrix to the Calculator and closes #503
Would be glad if you'd merge this PR @Srijita-Mandal

Hey @Srijita-Mandal Could you please revise the difficulty level of this PR? I thought it to be medium, but it was really difficult to serve the result in the DOM.

Hey @Srijita-Mandal Could you please revise the difficulty level of this PR? I thought it to be medium, but it was really difficult to serve the result in the DOM.

Yeah. Do one thing. Remove the all default 0 values from matrix input. 0 could be placeholder or could be blank.

Okay, will do that for sure. Meanwhile change the difficulty level. @Srijita-Mandal

Okay, will do that for sure. Meanwhile change the difficulty level. @Srijita-Mandal

Make this commit with your next PR.


Do not move stuff around in setup.py

Your current approach of moving stuff around in setup.py is very unclean:
Even without passing an actual action (install, sdist etc.) the script will copy stuff around. Also, you will not be able to build source packages for Windows when you are on any other operating system.
My solution: Always ship the DLLs and make the distinction in your actual module, not in setup.py.

I created an alternative to this PR: #98.

I'm closing this, see #98 for the reasoning.


cmd/go: version resolution with explicit commits can result in older versions

What version of Go are you using (go version)?

$ go version
go version devel +ab724d43ef Mon May 20 20:58:14 2019 +0000 linux/amd64

When migrating a large code base to using modules, it's important that nothing break. Of course, the main guard against that should be tests, but also it would be good if go mod init could be relied upon to do as good a job as it can when converting from old VCS systems.
I am converting a fairly large set of top level modules to using modules (mostly from glide), and I have observed that it's not uncommon for the finally resolved version of a module to be older from the previously locked version.
As I understand it, with MVS, the version of a dependency could get newer, but it should be highly unlikely to get older (and even it does get older by date, the commit of the new dependency should not be a direct ancestor of the old one).
I tested this as follows: for each top level module, I created a new go.mod file with directly specified commits taken from the glide.lock file (I didn't use go mod init because of issue #32161). I ran go mod tidy. Then I used go list -m all and, for each listed dependency that was also in the glide.lock file, I resolved the module version to its git commit. I compared the dates of the two commits, and collected the set of modules where the new commit was older than the new one.
Over 68 modules, 4 had completely unchanged versions, 20 had versions that had moved forward, and 44 had some regressions in version. Note that all the regressions were true regressions - that is, the new dependency was an ancestor of the original dependency in all cases.
I will continue to investigate this and report specific reproducible cases here when I find them.
In case it helps, the (quickly hacked) code that I used to check the commit versions is here.

@jayconrod @bcmills

Actually, this issue is almost certainly just a duplicate of #27171. I'll close it for now until/unless I find a problem that isn't that one.


Support of Go 1.18

Unfortunately, updated for BuildInfo are useless here. I can get commit hash by other means

Codecov Report

Merging #259 (039aea6) into master (6da9c2e) will increase coverage by 0.05%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #259      +/-   ##
==========================================
+ Coverage   82.67%   82.72%   +0.05%
==========================================
  Files          68       68
  Lines        1922     1928       +6
==========================================
+ Hits         1589     1595       +6
  Misses        231      231
  Partials      102      102

Impacted Files
Coverage Δ

ipblocklist/firehol.go
79.20% <100.00%> (+0.42%)
:arrow_up:

network/circuit_breaker.go
77.65% <100.00%> (+0.73%)
:arrow_up:

network/network.go
91.54% <100.00%> (+0.12%)
:arrow_up:

stats/statsd.go
79.77% <100.00%> (ø)

Continue to review full report at Codecov.

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


Refactorization in duty

Pull Request Test Coverage Report for Build 1977

5 of 7 (71.43%)  changed or added relevant lines in 3 files are covered.
1 unchanged line in 1 file lost coverage.
Overall coverage remained the same at 89.228%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

app/controllers/registrations_controller.rb
3
4
75.0%

app/helpers/duties_helper.rb
0
1
0.0%

Files with Coverage Reduction
New Missed Lines
%

app/controllers/registrations_controller.rb
1
92.0%

Totals

Change from base Build 1975:
0.0%

Covered Lines:
497

Relevant Lines:
557

💛  - Coveralls


Retrieve resolved alerts from hawkular

Retrieve resolved alerts from hawkular.
To see the type of hawkular alerts we plan to use with this see this
Depends on: #14295 [merged]

@miq-bot add_label providers/containers, enhancement, providers/hawkular

@moolitayer there are Travis failures to fix.
@miq-bot assign moolitayer

@jshaughn @cfcosta could you please review this change please?
It depends on some model changes so integration is failing

Responding inline

A few questions:
Is is safe for the mixin to assume open_alert_criteria?

Since currently we both have that I guess it is ok but actually nothing is enforcing that it is really open it is up to the implementation. Maybe we should name differently (for each criteria, in alert criteria, get it etc)

Is there no time criteria on the fetch? Perhaps this is because of the negative tag query approach?

Yes. That is a freedom of the implementation of x_alert_criteria. my intention was that middleware would retain it's timestamp logic while datawarehouse could use the negative tag query logic.

Instead of two fetches, one for OPEN+ACKNOWLEDGED, and one for RESOLVED, perhaps it would be more efficient to use one fetch, if asking for resolved use no 'statuses' criteria, otherwise statuses=OPEN+ACKNOWLEDGED?

This is a side effect of the negative tag query - since we tag alerts we have seen and then not get them again, we would not get them when resolved. That is why we needed to introduce the second query. I discussed this before with @lucasponce

@moolitayer Thanks for the explanations, I am fine with the PR as-is.

@cfcosta please take a look

@cfcosta @lucasponce @jshaughn could you please review this PR

@zgalor @cben please review

It looks fine to me.

LGTM 👍

@simon3z ready for your review
@miq-bot assign @simon3z

@simon3z Continuing discussion that was interrupted: can I go ahead and revert to the middleware approach of timestamp until we get the streaming api? (since tagQuery isn't available in origin and we want to avoid busy querying all the alerts each time)

@simon3z seems reverting to timestamp isn't straight forward. I would like to merge resolved events here and revert to timestamp in a separate PR. Can you please review? we already have LGTM from @yaacov and @jshaughn  on this change

@simon3z can you review, this is the most urgent for ops-alerts ATM

moved to https://github.com/ManageIQ/manageiq-providers-hawkular/pull/11 since this code moved


sentry denies compiler-explorer.com reports

See mattgodbolt/compiler-explorer#1432

Fixed in sentry's console


alloc flamegraph color schema

I created several FlameGraphs with async-profiler and was wondering about the chosen colors for the Classes, which are allocated.
usage:

-e alloc -d 60 -f /tmp/flame.svg

FlameGraph

io.reactivex.subjects.PublishSubject$PublishDisposable[]

The displays show an orange and an aqua/ cyan frame. Both frame are from the same class, but differ in the color and samples. Is this on purpose and if so, what is the meaning of the chosen colors?
I had a quick look in the code, but did not find any orange being used in:

FlameGraph::printFrame

Thank you for time and help

The color denotes where the object is allocated:

objects allocated in a new Thread Local Allocation Buffer (TLAB) are displayed in aqua;
objects allocated outside TLAB (directly in Eden or in OldGen) are displayed in orange.

@apangin , thank you for the explanation.
Maybe we should extend the documentation on this in the README.md (https://github.com/jvm-profiling-tools/async-profiler#flame-graph-visualization). I would be glade to provide a short overview for FlameGraphs and the meaning for each stack-frame as a PR.

@SergejIsbrecht I agree, a paragraph in README would make sense. Documentation PRs are highly appreciated! Though I don't think it worth covering FlameGraph basics, as they are already explained well on the Brendan Gregg's website.


Iterator filtering

Skip over certain parts, configuration/validation based?

http://php.net/manual/en/class.filteriterator.php


MEN-2033: Update preauth-docs with the mender-artifact install option.

Signed-off-by: Ole Petter<EMAIL_ADDRESS>

Looks ok to me.

Oh really nice. So much simpler. :+1:


Internally referencing ids not possible in JSON schemas

monaco-editor version: 0.13.1 and playground
Browser: Chrome 67.0.3396.99
OS: Windows 10
Steps or JS usage snippet reproducing the issue:
Using the following snippet in the playground editor:
// Configures two JSON schemas, with references.

var id = "foo.json";

monaco.languages.json.jsonDefaults.setDiagnosticsOptions({
	validate: true,
	schemas: [{
        uri: "http://myserver/foo-schema.json",
        fileMatch: [id],
        schema: {
            type: "object",
            properties: {
                p1: {
                    id: "#a1",
                    enum: [ "v1", "v2"]
                },
                p2: {
                    "$ref": "#a1"
                }
            }
        }
    }]
});

var jsonCode = '';

var model = monaco.editor.createModel(jsonCode, "json", id);

monaco.editor.create(document.getElementById("container"), {
	model: model
});

I expect to get the same json schema validation and the same suggestion popup for p1 and for p2, as both should follow the same schema, but monaco does not show proper suggestions for p2, whereas monaco does show the possibilities v1 and v2 for p1.

See https://spacetelescope.github.io/understanding-json-schema/structuring.html how the $ref is working.
In your case it would be "$ref": "#/references/p1"
But maybe I don't know about the syntax you are using. If you have any pointers specifying that syntax, please let me know.


fix: mesh peers - inclusion and churn sum by reason metrics

Motivation
Due to https://github.com/ChainSafe/js-libp2p-gossipsub/pull/460, the way to track mesh inclusion/churn are different so the  respective Grafana panel shows no data
Description
There is nogossipsub_mesh_peer_inclusion_events_total metric, we use gossipsub_mesh_peer_inclusion_events_${reason}_total metric instead

:tada: This PR is included in v1.12.0 :tada:


Hot Module Replacement fails on :w save but is okay when using :wq

I've isolated the cause of failing React js + webpack Hot Module Replacement to Vim (v7.4.52).  My OS is Ubuntu 14.04 LTS.  The failing occurs without any plugins installed as well.  Only on save AND exit (:wq) does HMR execute properly.  And, yes, I have confirmed HMR executes properly on soft saves using nano and sublime_text.  I even deleted my .vimrc file while trouble shooting.
A couple reference projects to use for replicating:
https://github.com/erikras/react-redux-universal-hot-example  (modify some text in the src/containers/Home/Home.js and save with :w and the modification should appear on the front page within 6 seconds automatically...but this will only happen when using :wq)
https://github.com/codefoundries/isomorphic-material-relay-starter-kit  (similarly, modify text in webapp/components/Home_screen.jsx)
I have a hunch it has something to do with how vim manages the buffer while the terminal is connected to localhost and the dev server is running in a separate terminal.
Any suggestions will be appreciated.
node version: 5.8
npm version: 3.8.5

I don't understand how HMR is supposed to hook into Vim and I am missing information here.. I have however a feeling, that this is the wrong forum to ask questions. Please use the vim-use or vim-dev ml. Thanks.

MercStills wrote:

I've isolated the cause of failing React js + webpack Hot Module
Replacement to Vim (v7.4.52).  My OS is Ubuntu 14.04 LTS.  The failing
occurs without any plugins installed as well.  Only on save AND exit
(:wq) does HMR execute properly.  And, yes, I have confirmed HMR
executes properly on soft saves using nano and sublime_text.  I even
deleted my .vimrc file while trouble shooting.
A couple reference projects to use for replicating:
https://github.com/erikras/react-redux-universal-hot-example  (modify
some text in the src/containers/Home/Home.js and save with :w and the
modification should appear on the front page within 6 seconds
automatically...but this will only happen when using :wq)
https://github.com/codefoundries/isomorphic-material-relay-starter-kit
(similarly, modify text in webapp/components/Home_screen.jsx)
I have a hunch it has something to do with how vim manages the buffer
while the terminal is connected to localhost and the dev server is
running in a separate terminal.
Any suggestions will be appreciated.

Not sure what this Hot Module Replacement is, but if it's about the way
files are written, perhaps the 'backupcopy' option can help.
--
Amazing but true: If all the salmon caught in Canada in one year were laid
end to end across the Sahara Desert, the smell would be absolutely awful.
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

The solution to this was setting swapsync to "sync".


Support property injection over recursive dependencies

It looks great, I'll merge it as soon as possible.

It looks great, I'll merge it as soon as possible.

@pharazfadaei  Thank you for your contribution ✨ 🎉  it's released in v2.2.0

@pharazfadaei  Thank you for your contribution ✨ 🎉  it's released in v2.2.0

@enisn
Thank you 🎉. I like the idea behind this project as the default dependency injection framework is too simple to be used in complex scenarios. I will happily contribute more if any problems are raised or extra functionalities are to be added.

@enisn
Thank you 🎉. I like the idea behind this project as the default dependency injection framework is too simple to be used in complex scenarios. I will happily contribute more if any problems are raised or extra functionalities are to be added.


Coverage report is not consistent

Environment information

OS: macOS
Python Version: 3.10.12
ape and plugin versions: 0.7.11

$ ape --version
0.7.11

$ ape plugins list
  etherscan    0.7.2
  foundry      0.7.4
  vyper        0.7.0

Contents of your ape-config.yaml (NOTE: do not post anything private like RPC urls or secrets!):

$ cat ape-config.yaml

name: XXX
plugins:
  - name: vyper
  - name: foundry
  - name: etherscan
ethereum:
  default_network: mainnet-fork
  mainnet_fork:
    default_provider: foundry
geth:
  ethereum:
    mainnet:
      uri: http://localhost:8540

test:
  coverage:
    reports:
      terminal: False
      xml: True
      html: True

What went wrong?
Please include information like:
When running ape test --coverage the coverage report displayed several inconsistencies.
Some lines that were sandwiched between two lines that were covered were not. After looking at the XML file some more inconsistencies were found. The two lines above and beyond the not-covered one displayed a different number of hits.
            <line number="155" hits="8"/>
            <line number="156" hits="0"/>
            <line number="157" hits="2"/>

I have also noticed that some of the natspec code is considered part of the code that needs tests and will appear in the XML report with zero hits.

While I was looking at the XML report, I made a small tool to compile the XML into a more readable HTML file that might help you while fixing this issue, it can be found here
The node used to test was a neithermind node.

I'm curious if there's no hits because there's no branch logic in that statement

What repo is this?

What repo is this?

https://github.com/1uptokyo/1upyfi


Internal - Remove the Call Home version validation

Remove the minimum Artifactory version validation before sending the Call Home requests, since the validation moves to the caller of the API. This is done to avoid duplicate "Get Artifactory Version" requests.
Rename the API functions, to force the callers to adapt to this change.

@EyalDelarea,
This API is internal, and should not be used independently.


Introduce shared mutable context between update handlers

What do you think of the idea making update handlers more like middlewares is ASP.NET Core which share mutable context instance? That way there could be a common session middleware (e.g. with separate storages for a chat and a user). Or a middleware that constructs ClaimsPrincipal and attaches it to the context instance. It would open possibilities to leverage existing packages from ASP.NET Core that aren't tied to HttpContext or HTTP in general like Authorization.

Upon thinking about this there should be an actual middlewares like in ASP.NET Core to properly manage this shared context. So they can cleanup after themeselves after each subsequent middleware invocation. Though I do not know how well this concept of middlewares fits with bots.


Using Progress/Progressall or start/Stop to stop user from leaving page before upload is complete

Hi.
First - I love this plugin. It's fantastic. Thank you for all the time and energy you've put into it, it shows. It is a very robust and well written piece of software. And thanks for being patient enough to answer the hundreds (nearly thousands) of questions that are thrown your way for a free piece of software.
Second - I'm interested in configuring my page so that it prevents the user from leaving the page while an upload is in progress.  My best guess is to modify a variable during Start, and then turn it off during stop, and then check to see if that variable has been set during "beforeunload."
My second best  guess is to check the Progress/ProgressAll, and if it's 0, or 100, allow the person to leave, but if it's in between, stop them (also on beforeunload)
I'm pretty new to Javascript and Jquery, so I'm not sure how to do these things without inadvertently overriding the default activity of fileupload, can I just set a global variable "upload_in_progress"
$('#fileupload').bind('fileuploadstart', function (e,data){
upload_in_progress = true;
$(''#fileupload').bind('fileuploadstop', function (e,data) {
upload_in_progress = false;
}
$(window).bind('beforeunload', function (){
if (upload_in_progress == true)
{
return "Leaving now would abort your upload. Are you sure?";
}
}
Or something to that effect?

Your approach is perfectly right.
The bind method is the way to attach additional event handlers without overriding any default functionality added by the UI version (the basic version only sets the add callback handler).
Using an internal variable, you can also do it like this:
$(window).bind('beforeunload', function () {
    if ($('#fileupload').data('fileupload')._active) {
        return 'Leaving now would abort your upload. Are you sure?';
    }
});

Internal variables (and methods) might change with updates, but this one is pretty safe to use as it will probably never be changed.

Sebastian,
Thanks for the feedback, and for the code upgrade.  I didn't know that even existed.  Out of curiosity, what is your day job? Does this project take up a lot of your time or is it something you're just doing for fun?
Phil

(trying it out now)

Worked like a charm. :)

Good.
And yes, it takes a lot of time - even just giving support could be a fulltime job and that's not even taking the actual development into account.
I do it for fun and because I want it to be the best file uploader around, but it's not generating any money and I do enjoy other things than programming, so I just have to cut the time I invest for support.

Why don't you work for a startup or something? Your programming skills are clearly top-notch, and you also have the patience and instinct to help other people out, for free.  I sort of feel like those two traits alone make you very valuable.  Is there a donation box for this project? I'm not making money off of my service yet, but with any luck, one day I might, and Id love to be able to at the very least pay it forward.
(in my dreams I'd love to be able to retain you for a few hours a month.  I've been doing all the Javascript / JQuery stuff myself, and I'm a PHP guy...)

Thanks for your kind words.
I've still not figured out what's the best way to combine this kind of open source work with actually making a living, but I can usually make good use of my skills for my current job as well.
But if you happen to know a good company in Osaka/Tokyo, I would be interested, cause that's where i'm living at the moment. :)

Sadly, I am totally unconnected to Osaka/Tokyo.  However if you wanted to throw a couple of hours a month at my start-up, I would greatly appreciate your skills. That'd be one way to do it anyway. :)


Attempting to run two different pipelines using the same configuration file

Hi
I am trying to run two different pipelines simultaneously. I need to first run the bam files through bam_clean: picard  before going through two different pipelines. I have set up my config csv files as:
samplename,description,realign,recalibrate,validate,variantcaller
Sample1,Sample1HC;Sample1FB,gatk;false,gatk;false,/home/Documents/Expected.vcf,gatk-haplotype;freebayes

The yaml is set up as:
upload:
  dir: final
details:
- algorithm:
    aligner: false
    bam_clean: picard
    merge_bamprep: false
    mark_duplicates: false
    realign: gatk
    recalibrate: gatk
    variantcaller:
      - gatk-haplotype
    validate: ../input/formatted_regions.vcf
  analysis: variant2
  description: filedescription
  files: /home/Documents/generic.bam
  genome_build: GRCh37
fc_date: '2015-11-09'
fc_name: qxtindel2

When I run the analysis the bam_clean seems to occur fine but it creates a folder Sample1HC;Sample1FB i.e. it does not seem to recognise the description field as a semi-colon separated list. Later in the next stage it is then looking for the folder Sample1HC which is the first part of the semi-colon separated list so it then does seem to recognise the description field as a list. I would like the pipeline to perform the bam_clean just once but then I want the generated files to be put through two different analysis streams, one that includes realign,recalibrate,validate and variantcaller set to gatk, gatk, /home/Documents/Expected.vcf and gatk-haplotype and another analysis stream set to false, false, /home/Documents/Expected.vcf and freebayes. Is this possible, perhaps my interpretation of the docs is incorrect.

Kevin;
Unfortunately the templating command is not smart enough to know to split these into two separate samples. The semi-colon separation is very basic and will only work for things like batches.
There isn't an efficient way to do these kind of multi-method tests. We tried to stick to the manual way of doing things here to prevent introducing a lot of complexity that wouldn't be needed for standard analyses. This will lead to duplication of computational processing in these cases (cleaning or aligning the same files for multiple approaches) but avoids needing a lot of complexity internally to deal with them.
What I'd do for this is have two separate inputs -- Sample1HC.bam and Sample1FC.bam -- symlinked to the Sample1.bam file. Then have two separate lines in the configuration providing the settings.
Sorry to not have a smarter way but hope this helps.

Brad
Thanks for getting back to me. I will give your suggestion a go, that seems a perfectly adequate solution to what I need.


Support field tag to prevent Wire filling in struct fields

Is your feature request related to a problem? Please describe.
Like in #36, it would be nice to restrict Wire from filling in certain fields. Sometimes it's useful to specify these rules from the provider set side, and other times it's useful to specify these rules closer to the struct definition.
Describe the solution you'd like
I'd like to be able to add a struct tag like wire:"-":
type Foo struct {
  mu  sync.Mutex  `wire:"-"`
  Bar Bar
}

When adding Foo{} to a provider set.
Describe alternatives you've considered
The solution I suggested in this comment is useful in circumstances where a fixed set of fields should be filled in, but not in ones where I want most fields to be filled in with some exceptions. The approach here also gives more tooling safety: instead of naming a field this attaches the information directly to the field. The downside is that this becomes awkward if someone has a legitimate need to fill in a field in a Wire provider set.

Should this be closed? A change has been merged to address the issue.

@shantuo, are we still waiting for a doc change here?

That's correct, I'm going to add it to the guide.


Driver overlay failed to remove root filesystem: layer not retained since 1.10.0

Hi,
since upgrading to 1.10.0, I am getting sporadic errors while stopping previously created containers, leaving it in Dead status. This happens also for containers created with the current version.
Driver overlay failed to remove root filesystem c6b033b3e4ad290f068164942fe57a6995ee28ddbab99f6511e507fcebed0b03: layer not retained

$ docker version
Client:
 Version:      1.10.1
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   9e83765
 Built:        Thu Feb 11 19:27:08 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.10.1
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   9e83765
 Built:        Thu Feb 11 19:27:08 2016
 OS/Arch:      linux/amd64

$ docker info
Containers: 21
 Running: 21
 Paused: 0
 Stopped: 0
Images: 233
Server Version: 1.10.1
Storage Driver: overlay
 Backing Filesystem: extfs
Execution Driver: native-0.2
Logging Driver: json-file
Plugins:
 Volume: local
 Network: bridge null host
Kernel Version: 4.2.0-25-generic
Operating System: Ubuntu 14.04.3 LTS
OSType: linux
Architecture: x86_64
CPUs: 4
Total Memory: 14.69 GiB
Name: staging-nxt
ID: OP2C:6I2X:XW7V:QKZH:VFBF:YSCN:4CIS:JN3I:ZARC:4VWJ:ARVG:SXES
WARNING: No swap limit support

Linux staging-nxt 4.2.0-25-generic #30~14.04.1-Ubuntu SMP Mon Jan 18 16:25:56 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

while stopping previously created containers, can you expand what you mean by this? CLI commands may help.
Thanks!

docker stop  on a running container.
For previously created I meant that those container were created when using docker 1.9.1, before upgrading to 1.10.1.
However even with shiny new containers (pulled and created with the current docker version), I am getting the same issue.

Can confirm seeing the same error on 1.10.1, by simply deleting some containers:
# docker ps -q | xargs -I% -P1 docker rm -f %

Yes, I remember I've got the same error message with a subsequent rm -f after trying with stop, but after a few seconds I was able to do rm -f again on the same container with success.

I'm having the same error. All my nodes in my cluster are slowly running out of disk due to this issue. It is unclear to me how to properly clean up all disk after a container job is done.
# docker rm -f a9153f1ca9d3
Failed to remove container (a9153f1ca9d3): Error response from daemon: Driver devicemapper failed to remove root filesystem a9153f1ca9d37c67acd271dd5c2ebb06f3589b242dce8b1302178655a7bc3037: layer not retained

System info:
# docker info
Containers: 169
 Running: 77
 Paused: 0
 Stopped: 92
Images: 151
Server Version: 1.10.0
Storage Driver: devicemapper
 Pool Name: docker-8:2-23593209-pool
 Pool Blocksize: 65.54 kB
 Base Device Size: 32.21 GB
 Backing Filesystem: ext4
 Data file: /dev/loop0
 Metadata file: /dev/loop1
 Data Space Used: 214.7 GB
 Data Space Total: 214.7 GB
 Data Space Available: 0 B
 Metadata Space Used: 129.9 MB
 Metadata Space Total: 2.147 GB
 Metadata Space Available: 2.018 GB
 Udev Sync Supported: true
 Deferred Removal Enabled: false
 Deferred Deletion Enabled: false
 Deferred Deleted Device Count: 0
 Data loop file: /var/lib/docker/devicemapper/devicemapper/data
 WARNING: Usage of loopback devices is strongly discouraged for production use. Either use `--storage-opt dm.thinpooldev` or use `--storage-opt dm.no_warn_on_loop_devices=true` to suppress this warning.
 Metadata loop file: /var/lib/docker/devicemapper/devicemapper/metadata
 Library Version: 1.02.99 (2015-06-20)
Execution Driver: native-0.2
Logging Driver: json-file
Plugins:
 Volume: local
 Network: bridge null host
Kernel Version: 3.19.8-031908-generic
Operating System: Ubuntu 15.10
OSType: linux
Architecture: x86_64
CPUs: 24
Total Memory: 125.8 GiB
Name: m3479.contabo.host
ID: ZDSD:XISW:V6WA:6RDL:556C:6DMB:JCJK:QYBZ:Y7IG:AAQL:MGRO:BEIN
Debug mode (server): true
 File Descriptors: 1258
 Goroutines: 1453
 System Time: 2016-02-13T06:22:19.42919458+01:00
 EventsListeners: 0
 Init SHA1: 0fab8563cbfa5ba7c182919f38b1fac541d116d0
 Init Path: /usr/lib/docker/dockerinit
 Docker Root Dir: /var/lib/docker
WARNING: No swap limit support

# docker version
Client:
 Version:      1.10.0
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   590d5108
 Built:        Thu Feb  4 18:41:30 2016
 OS/Arch:      linux/amd64

Server:
 Version:      1.10.0
 API version:  1.22
 Go version:   go1.5.3
 Git commit:   590d5108
 Built:        Thu Feb  4 18:41:30 2016
 OS/Arch:      linux/amd64

# uname -a
Linux m3479.contabo.host 3.19.8-031908-generic #201505110938 SMP Mon May 11 13:39:59 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

If you can, please up the priority of this issue. Seems to me that the underlying cause could be an issue in the new layering system introduced in 1.10.
/beetree

Can confirm. I am experiencing this issue since upgrading to 1.10.1

ping @tonistiigi

Can anyone seeing this check if the problem goes away after restarting the daemon?

Can anyone seeing this check if the problem goes away after restarting the daemon?

Ok, i think i see a pattern which may help:
First of all, restarting the daemon makes the problem go away.
As an additional observation, two other error messages appear prior to this condition occurring:

docker rm quizzes-v1
Failed to remove container (quizzes-v1): Error response from daemon: Unable to remove filesystem for 0afff52498fbf17a891e15b3ce20bd0bf3a0bb7c63c0656cdfd771ecabc9484d: remove /var/lib/docker/containers/0afff52498fbf17a891e15b3ce20bd0bf3a0bb7c63c0656cdfd771ecabc9484d/shm: device or resource busy

This seems to resolve by running 'docker rm' again.
Also, less frequent, this error pops up:

docker rm guilds-v0
Failed to remove container (guilds-v0): Error response from daemon: Driver aufs failed to remove root filesystem c1609770f184df14d109f40a329d2d684cb773d2b9f32d15ff821dd017d6e56c: rename /var/lib/docker/aufs/diff/63fb9874903117bfd5ef1828bee719563217b8d5eb915d96e6b5cbbdff00b412 /var/lib/docker/aufs/diff/63fb9874903117bfd5ef1828bee719563217b8d5eb915d96e6b5cbbdff00b412-removing: device or resource busy

This error does not resolve after a retry, and the reported issue subsequently occurs.
Btw, the precursor errors already mess up my restart script. These errors did definitely not occur before my update to 1.10.1 (skipped 1.10.0)
Hope that helps.

I've now seen a (probably) related error occur during building as well:
building container...
...
Step 1 : FROM nginx
...
Step 6 : EXPOSE 80
 ---> Running in f5697e69749d
 ---> 7bff11d3e0d9
Error removing intermediate container f5697e69749d: rmdriverfs: Driver aufs failed to remove root filesystem f5697e69749d4508f80d89ebea9a5c6d3a18cecd7561cc1a317466b1c8b58f04: rename /var/lib/docker/aufs/mnt/8f89bd4d70de7540cbd886d8c30b2c4e1f12d5fe9f5574a9b5491c055bb420b2 /var/lib/docker/aufs/mnt/8f89bd4d70de7540cbd886d8c30b2c4e1f12d5fe9f5574a9b5491c055bb420b2-removing: device or resource busy
Successfully built 7bff11d3e0d9

The resulting container is fine. I do not know what consequences this has. Intermediate files not being cleaned up?


"libnative.so" how do i fix this please

I/bridge_templat(13896): Compiler allocated 5171KB to compile void android.view.ViewRootImpl.performTraversals()
════════ Exception caught by widgets library ═══════════════════════════════════
The following ArgumentError was thrown building Builder:
Invalid argument(s): Failed to load dynamic library 'libnative.so': dlopen failed: library "libnative.so" not found
The relevant error-causing widget was
MaterialApp
package:flutter_rust_bridge_template/main.dart:14
When the exception was thrown, this was the stack
#0      _open (dart:ffi-patch/ffi_dynamic_library_patch.dart:12:43)
#1      new DynamicLibrary.open (dart:ffi-patch/ffi_dynamic_library_patch.dart:23:12)
#2      api
package:flutter_rust_bridge_template/ffi.dart:22

Hi, can you give me some more details of what you're doing? A flutter run --verbose and flutter doctor --verbose should be enough.

Bumping this as I'm getting the same issue, here is the output of flutter doctor:
[√] Flutter (Channel stable, 3.0.5, on Microsoft Windows [Version 10.0.19044.1889], locale en-IE)
    • Flutter version 3.0.5 at X:\Documents\flutter
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision f1875d570e (5 weeks ago), 2022-07-13 11:24:16 -0700
    • Engine revision e85ea0e79c
    • Dart version 2.17.6
    • DevTools version 2.12.2

[√] Android toolchain - develop for Android devices (Android SDK version 33.0.0)
    • Android SDK at C:\Users\Alan\AppData\Local\Android\sdk
    • Platform android-33, build-tools 33.0.0
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Build Tools 2019 16.11.9)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools
    • Visual Studio Build Tools 2019 version 16.11.32106.194
    • Windows 10 SDK version 10.0.19041.0

[√] Android Studio (version 2021.2)
    • Android Studio at C:\Program Files\Android\Android Studio
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.12+7-b1504.28-7817840)

[√] IntelliJ IDEA Ultimate Edition (version 2021.3)
    • IntelliJ at C:\Program Files\JetBrains\IntelliJ IDEA 2021.3
    • Flutter plugin can be installed from:
       https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
       https://plugins.jetbrains.com/plugin/6351-dart

[√] VS Code (version 1.69.2)
    • VS Code at C:\Users\Alan\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension version 3.46.0

[√] Connected device (5 available)
    • Pixel 4 XL (mobile)          • 9B151FFBA002SW   • android-arm64  • Android 12 (API 32)
    • Windows (desktop)            • windows          • windows-x64    • Microsoft Windows [Version 10.0.19044.1889]
    • Chrome (web)                 • chrome           • web-javascript • Google Chrome 102.0.5005.115
    • Edge (web)                   • edge             • web-javascript • Microsoft Edge 103.0.1264.62

[√] HTTP Host Availability
    • All required HTTP hosts are available

• No issues found!

and flutter run: https://gist.github.com/alanpq/0f8c31750147c4dc942b454ecebaf1fb

This is an issue with the build.gradle file as it invokes a possibly non-existent sh on Windows. I will fix this soon.


chore(ci): renovate matchConfidence

Renovate changes using matchConfidence:

group high and very high updates together
banish low and neutral updates to the dependency dashboard

This is safe to run, but could result in low or neutral confidence updates going unmerged.  Please make sure to occasionally check Renovate's Dependency Dashboard for this repo.

Thanks for the PR!
Deployments, as required, will be available below:
Any successful deployments (not always required) will be available here
Please create PRs in draft mode.  Mark as ready to enable:

Analysis Workflow

After merge, new images are deployed in:

Merge Workflow

Not usable now.  Maybe later.
Message: The matchConfidence matcher in packageRules requires authentication. Please refer to the [documentation](https://docs.renovatebot.com/configuration-options/#matchconfidence) and add the required host rule.


some interrogations now work with SQL Server

Richard
I got some interrogations to work on SQL databases. I also added skip on Solaris to avoid CRAN problems with mocked connection tests.
However, the SQL Server test is being skipped at the moment because dittodb doesn't get the correct hashes (see https://github.com/ropensci/dittodb/issues/129)
tldr; pointblank + SQL Server now go well if the connection is a real connection and not a mocked one

This looks great! One thing that is missing is having odbc in Suggests. Then the CI should pass.

this PR can now be merged
I also added options so that R on Windows always installs binaries and it prevents headers error when compiling odbc


Warning on Ruby  2.4.x

Warning appears on line 212 of csv_source.rb

warning: constant ::Fixnum is deprecated

Fixnum and Bignum were unified to integer in Ruby 2.4.0(https://www.ruby-lang.org/en/news/2016/12/25/ruby-2-4-0-released/)
May I suggest a modification to the 212?
 if field.is_a?(Intger)

Thanks for the bug report and suggested fix. :-)


Defining routes in service metadata

Since the release of version 1.0.7 of Consul, services now have the possibility to provide arbitrary key-value attributes as service metadata. Using tags for metadata, as fabio makes use of, was the preferred way of specifying such attributes before the introduction of service metadata. However, with this new feature fabio should adopt and introduce support for specifying routes in the service metadata section since it is more well-suited.
Tags could perhaps be kept for backwards compatibility but the recommended way forward in the documentation should be to use metadata instead of tags. Since querying of metadata is not supported some "discovery tag" may still be required to avoid having to loop through all services but that could be some standard tag e.g. "fabio" or something more descriptive.
Related topic: https://github.com/hashicorp/consul/issues/1107

Sounds good to me. This would also fit well into the refactor of the service monitor in #564. Do you feel like submitting a PR based on that code?

Completely removing the tag model would almost certainly break many deployments including our deployment.  This would result in quite a bit of code change to solve a non-problem.  I definitely see the benefit of adding support for service metadata but do not thing the tag model should be abandoned.

Completely removing the tag model would almost certainly break many deployments including our deployment. This would result in quite a bit of code change to solve a non-problem. I definitely see the appeal of service metadata but do not think the tag model should be abandoned.

Yeah, that is why I proposed keeping it for backwards compatibility and only changing the documentation to gradually move towards service metadata.
@magiconair I could try finding time to submit a PR. I am a bit short of time during the following weeks but we'll see. It did not seem to difficult to add this kind of support.
Any suggestions for "discovery tag". Currently fabio searches for the prefix "urlprefix-", this does not seem to be a candidate according to me.

Yesterday I started implementing this. To do this we obviously have to update the Consul dependency to a later version. After doing this I realised there is a lot of changes which is not necessary to this use case. Only the newly added ServiceMeta field to the CatalogService is needed in order to fulfill this use case.
What are your thoughts on this @magiconair ? Should we update the whole API-catalog or just add the field to the CatalogService struct?

@DavidRutqvist I'll build an test a local version with v1.4.0 to support service metadata and consul connect.

@DavidRutqvist I'll build and test a local version with v1.4.0 to support service metadata and consul connect.

Super, I'll leave this to you then. It will be very much appreciated.

I updated consul to v1.4.0 in #571

Is there progress?


Failing to report results when output contains non ascii characters

Hello there. Thanks for this action, is great.
I noticed that my tests failed to be published when their report contained emojis. The error I got was the following:
  Error: ❌ Failed to create checks using the provided token. (HttpError: Validation Failed: {"resource":"CheckRun","code":"invalid","field":"annotations"})
  Warning: ⚠ This usually indicates insufficient permissions. More details: https://github.com/mikepenz/action-junit-report/issues/23

I'm not sure it is a problem on this action or on github results, though.
Thanks.

Enabling debug output it seems like the annotation looks correct. It might be a problem in the github end?

Thank you very much for the report, will investigate

I had a spin on this, but couldn't yet figure out a way to make it work.
A more or less temporary solution would be to drop emoji sequences, so it won't make the import fail.
It's also strange as it would work if the emoji is specified via the action itself, but not if read in from the xml report.
There must be some encoding issue somewhere.
If anyone knows what possibly could be the cause, any help would be appreciated.


ux/fn: add events support with updated example

Updated the  example with events support. todo.go remains relatively readable still.
There is a lurking issue though: when a single stream (tasks) is split into multiple (individual task), in a declarative setup, new sub-streams would end up getting created on each iteration.   The example here does not show it because TaskEdit is older style  and returns  a stream (and being stateful, it returns the same stream all the time).  If this  state were to be created by  the parent (as  preferred in functional style code), it would be a bit messy to cache  it.  We can probably introduce caches for state (just like for functions  being called) but it feels icky.
It is  possible to push  this ickiness to a stateful component that  tracks parent-sub stream relationships (and  also takes care  of  propagating changes  properly):

type  Sub struct {
          key interface{}
          parent, child *Stream
}

func (s *Sub) Stream(ctx subStreamCtx, parent *Stream, key interface{}) *Stream {
          // check s.key and s.parent and reuse the child if matching
}

Then all components can use this in a reactive  way ctx.SubStream(key, parent, idx) using  the standard  functional setup.  The current generator actually handles the above stateful function but it somehow feels icky, need to think this through...

This  PR also  introduces ctx.refresh(args...) to force  a rebuild  of a component asynchronously (say  via callbacks).  Not entirely sure how I feel about  apps using it.


Example app link is not working

Hi, your example app for demonstration link is not working and it's giving error 404.

@aatikakhan
Which example app are you referring to ?

Without additional information, we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.
Could everyone who still has this problem please file a new issue with the exact description of what happens, logs, and the output of flutter doctor -v.
All system setups can be slightly different, so it's always better to open new issues and reference related issues.


python311Packages.scmrepo: 1.4.0 -> 1.4.1

Diff: https://github.com/iterative/scmrepo/compare/refs/tags/1.4.0...1.4.1
Changelog: https://github.com/iterative/scmrepo/releases/tag/1.4.1
Description of changes

Things done

Built on platform(s)

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

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

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

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

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

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

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 264371 run on x86_64-linux 1

14 packages built:

dvc (python311Packages.dvc)
dvc-with-remotes
dvc-with-remotes.dist
dvc.dist (python311Packages.dvc.dist)
python310Packages.dvc
python310Packages.dvc.dist
python310Packages.dvclive
python310Packages.dvclive.dist
python310Packages.scmrepo
python310Packages.scmrepo.dist
python311Packages.dvclive
python311Packages.dvclive.dist
python311Packages.scmrepo
python311Packages.scmrepo.dist


YDB Temporal support.

We would like to thank the Temporal developers very much for their hard work in creating and maintaining this amazing framework. The contribution of the Temporal team to the development of tools for the development of long-lived applications is incredibly important for many developers and represents a truly valuable resource in modern software development.
Due to the growing demand for the use of Yandex Database (YDB) in modern applications with high requirements for scalability and fault tolerance, we consider it important to add YDB support to the Temporary framework. Temporary is a powerful tool for developing long-lived applications, but currently the lack of native integration with YDB limits the capabilities of developers and reduces the competitiveness of the framework.
Functionality Details:

Support for Yandex Database as a repository for Temporary, which will allow developers to take full advantage of the features provided by YDB, such as geographic data replication, automatic scaling and high fault tolerance.
Integration of YDB functionality with the Temporary SDK to ensure ease of use and compatibility with existing applications.

Advantages:

Expanding the potential audience of Temporary by YDB users interested in developing long-lived applications.
Improved performance and scalability of applications using Temporary in combination with YDB.
Increasing the competitiveness of Temporal in the market of long-lived application development tools.

This extension of Temporal functionality will enable developers to take full advantage of the benefits provided by YDB in their long-lived applications, which will make Temporal an even more attractive development tool.

Thank you for your feature request. We appreciate your suggestion and understand the need for YDB integration in Temporal. While we don't have native YDB support at the moment, here are some workarounds you can consider:

Utilize YDB through Activities:  You can use YDB functionality by invoking Activities within your Temporal workflows. These Activities can communicate with YDB and handle operations like data retrieval or updates.

Explore Third-party SDKs: There might be third-party Temporal SDKs that offer YDB integration. While not officially supported by Temporal, they might provide a suitable solution.

We are always exploring ways to improve Temporal and will consider your request for native YDB support in future development plans.

Thank you for the detailed feature request! We appreciate your interest in integrating YDB with Temporal.
While we don't have native YDB support at this time, you can achieve similar functionality using Activities to interact with YDB. Activities allow you to execute external code, including database interactions, within your workflows.
This approach provides flexibility: you can choose the YDB client library and tailor the implementation to your specific needs.
We are actively exploring options to enhance our database integrations, and your feedback is valuable to us. We will keep your request in mind for future development considerations.

Thank you for the feature request! We appreciate your feedback and the valuable insights you've shared about the growing need for YDB integration within the Temporal framework.
While we don't have a native integration with YDB at this time, you can explore using Temporal's Activity to interact with YDB. Activities allow you to execute external code, enabling you to leverage YDB's functionalities within your Temporal workflows.
We are constantly evaluating new features and integrations, and your feedback will be considered for future development roadmap.


Add zarr plugin for Google Cloud Storage

This adds plugin support for .zarr volume files held in GCS. It borrows heavily from the CloudVolume plugin, but requires zarr and gcsfs package installs, which are not default with ingest-client.
Depending on the repo admins' feelings, we might choose to distribute this as a "dialect" of boss-ingest on pypi called, perhaps, boss-ingest[gcszarr], so that we don't add to the requirements for all other users.

Thanks guys!


[webportal] Fix Webportal SDK request

Coverage remained the same at 34.607% when pulling f8367c805e553e7f83fca35f1d0abdfe75a8ce13 on yiyi/fix_webportal_sdk_request into cf29f25bb4d3402196192241005669133c2af3d3 on master.


Handle verifyIdToken failing due to an expired token

This happens when the firebase token has expired and you attempt to call withAuthUserTokenSSR. This in turn calls verifyIdToken which will throw an error if the key ID of the firebase token has expired.
I believe issue #114 is caused as a result of this issue.
Let me know if there is anything else I need to add. This bug is causing some me some grief so I'm happy to work on refine this ASAP if need be.

Thanks for this PR!
I'm not sure if catching all errors is the best approach. The verifyIdToken function already handles the auth/id-token-expired error. This package should throw other Firebase errors that it's not handling so the developer can handle them.
Are there specific Firebase admin error codes that this package should handle?
The philosophy of next-firebase-auth is to use the client-side Firebase JS SDK as the source of truth—so if the server-side auth fails, maybe it makes sense to provide an unauthenticated user and let the client side auth load and update cookies as needed. However, if the Firebase error is permanent (e.g., there's some configuration error), then SSR auth would be broken indefinitely with no warning to the developer.

Oh interesting, I didn't realise you had wrapped firebase's verifyIdToken in another function. I think that makes sense, and it definitely makes it easier to reason about by treating the client as the source of truth. So in that case would you just recommend adding another if statement in the catch that handles this specific error, and if encountered returns an empty object?
// If the user's ID token has expired, refresh it if possible.
if (refreshToken && e.code === FIREBASE_ERROR_TOKEN_EXPIRED) {
  newToken = await refreshExpiredIdToken(refreshToken)
  firebaseUser = await admin.auth().verifyIdToken(newToken)
} else if (e.code === "auth/argument-error") {
  return {};
} else {
  // Otherwise, throw.
  throw e
}

"auth/argument-error" is the error code generated by the firebase error (refer to image below)

I also did some more digging into firebase-admin and this kid claim error. It seems firebase-admin will at semi-random intervals pull down the certs from google and then compare the JWT token given to verifyIdToken. Google wants the kid header claim in our token to correspond to one of the public keys in this certs (Link).
It seems like everyone should be encountering this error if they go to a page that makes use of withAuthUserTokenSSR after they have been inactive for some period of time, so I'm a little confused as to why there has only been one issue regarding this problem. Have you ever encountered it?

That's really helpful info, thanks. Just curious, did you find any info on how frequently those certificates are rotated?

would you just recommend adding another if statement in the catch that handles this specific error, and if encountered returns an empty object

Yes, this sounds good. Do you know if refreshing the ID token will also successfully handle the kid problem thrown with auth/argument-error? If so we could refresh and provide the user instead of just setting the user to unauthed.
Not sure if you had a reason to close this issue, but feel free to reopen.

I did have a look at that, I haven't managed to find how often they are rotated but Googles recommendation is to refresh the certs every X hours where X is specified by the max-age part of the Cache-Control header of the returned cert response (Link to code). You can go to this link to get the certs. The max-age seems to be anywhere between 5-6 hours. I think Google actually rotates them roughly every few days because that's how long I needed to be inactive for the bug to occur.
From running tests with the code I had submitted it seemed to fix the problem, but I wasn't entirely sure if there would be unintended side effects. I'm guessing there would have been since I was catching all errors and not just auth/argument-error. If we only refresh for this specific error I don't see why it wouldn't work though.
Just to double check, by refreshing did you mean using createAuthUser?
Oh yep I didn't mean to close it, it's just that I accidentally did this work on the main branch and had to move it over to another branch which caused this issue to be auto-closed. I'll create another PR with this new approach shortly :)

By refreshing, I actually mean using the refresh token to get a new ID token like we do here—so we'd do this for both auth/id-token-expired and auth/argument-error. I'm assuming that would fix the expired kid (?), but I'm not sure.
An aside, but somewhat related: there might be other error codes that would make sense to handle by creating an unauthed AuthUser, such as auth/invalid-user-token and auth/user-token-expired.

@kmjennison Sorry for the delay, been flat out the last few days. As for refreshing the token, that seems like it would do the trick!
Yeah I agree, auth/user-disabled should probably also should probably also return an unauthed AuthUser.
Out of curiosity, what happens when you refresh the token on the server? Is that propogated back to the client or is it just used for this server interaction, and then the client would also need to refresh the token? From what I can see the only time the cookies are set (including the idToken) is when you call the login endpoint, so I'm a little confused as to what happens when the ID token we get from our initial login expires (i.e. we have been on the site for 1 hour). Wouldn't every new page reload after that use an outdated ID token so our server would be refreshing it every time?

@Francesco-Lanciana No worries!

when the ID token we get from our initial login expires (i.e. we have been on the site for 1 hour). Wouldn't every new page reload after that use an outdated ID token so our server would be refreshing it every time?

Your description is partially correct. If the user is active on the site for >1 hour, the client JS SDK will refresh the ID token, which will update the cookies with a new ID token. Any server renders soon after that use withAuthUserTokenSSR will have a valid ID token and won't require a token refresh.
If the user leaves the site for more than an hour, the ID token in the cookies will expire, and the next server render using withAuthUserTokenSSR will require a token refresh.
If the backend does not need an ID token, you can use withAuthUserSSR, which won't do any token refreshes.


Use iterable side inputs rather than list side inputs in file writes.

AsList is backed by a multi-map in an attempt to provide proper indexing semantics, but this can be significantly more expensive for small pipelines (especially as it may require fixed sharding and prevent fusion).

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Mention the appropriate issue in your description (for example: addresses #123), if applicable. This will automatically add a link to the pull request in the issue. If you would like the issue to automatically close on merging the pull request, comment fixes #<ISSUE NUMBER> instead.
[ ] Update CHANGES.md with noteworthy changes.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

See the Contributor Guide for more tips on how to make review process smoother.
To check the build health, please visit https://github.com/apache/beam/blob/master/.test-infra/BUILD_STATUS.md
GitHub Actions Tests Status (on master branch)

See CI.md for more information about GitHub Actions CI.

All these transforms are private, so this should be a backwards-compatible change.

Well, update compatibility doesn't respect private transforms :-). This might be update incompatible with the reading of already-written side input state.

Oh, good point. ListCoder and IterableCoder are wire-compatible, but update might not know that... Refactoring to be sure.

Updated to avoid possible update compatibility issues.


Be a speaker at Code for All Summit

Overview
We need to get Bonnie a speaker slot at Code for All summit 2021
Action Items

[ ] Create a presentation deck for speaker circuit post CTI launch
[ ] Send deck to Code for All Summit

Resources/Instructions
About Us

We have submitted a proposal for the Code for America summit (May 12-13 2021), but its not directly related to CTI.


Document test_annotation_data.json

Problem analysis
test_annotation_data.json contains different objects type like annotator API request and users.
Commenting is not possible in json. Objects are without a proper context.
Possible solutions

Split in more json files. Context are provided by file name
Copy objects literal to one or more python files, where comments are allowed

As described in the django documentation  fixtures are the prefered way to provide initial data to a test database.
It's possible to provide multiple fixture files in fixture directory.
So i think the second possibile solution:

Split in more json files. Context are provided by file name

is prefereable


Suggestion - upgrade pip at start of install

Saves all these warnings as install happens.
[notice] A new release of pip available: 22.2.2 -> 23.1.2
[notice] To update, run: python.exe -m pip install --upgrade pip
Installing requirement pyworld>=0.3.2...

[notice] A new release of pip available: 22.2.2 -> 23.1.2
[notice] To update, run: python.exe -m pip install --upgrade pip
Installing requirement faiss-cpu==1.7.3...

[notice] A new release of pip available: 22.2.2 -> 23.1.2
[notice] To update, run: python.exe -m pip install --upgrade pip
Installing requirement torchcrepe==0.0.18...

Also, maybe show all stats as each package installs.  Helps those with slow connections see the install is still running and assume it has hung.

i'll change the disabling of outputs to be a flag instead of always on then

--upgrade pip isn't possible due to the python environment calling the commands being the same as the one pip is installed with, this would lead to an error during the install and pip not working anymore, requiring a reinstall.

I do it all the time.  After you activate your venv, run this as the first command.
python.exe -m pip install --upgrade pip
Then pip is upgraded within the venv.

--upgrade pip isn't possible due to the python environment calling the commands being the same as the one pip is installed with, this would lead to an error during the install and pip not working anymore, requiring a reinstall.

It's definitely doable...
⌁ [genevera:~/.local/src/audio-webui ⚞3] [2.7.4] master(+0/-0)* ± source venv/bin/activate
⌁ [genevera:~/.local/src/audio-webui ⚞3] [venv] [2.7.4] master(+0/-0)* ± which python3
/Users/genevera/.local/src/audio-webui/venv/bin/python3
⌁ [genevera:~/.local/src/audio-webui ⚞3] [venv] [2.7.4] master(+0/-0)* ± python3 -m pip install -U pip
Requirement already satisfied: pip in ./venv/lib/python3.10/site-packages (23.0.1)
Collecting pip
  Using cached pip-23.1.2-py3-none-any.whl (2.1 MB)
Installing collected packages: pip
  Attempting uninstall: pip
    Found existing installation: pip 23.0.1
    Uninstalling pip-23.0.1:
      Successfully uninstalled pip-23.0.1
Successfully installed pip-23.1.2
⌁ [genevera:~/.local/src/audio-webui ⚞3] [venv] [2.7.4] master(+0/-0)* 16s 130 ± ./run.sh --skip-install
Checking installs and venv
Monkeypatching bark
Launching, cuda available: False
Running on local URL:  http://<IP_ADDRESS>:7860

To create a public link, set `share=True` in `launch()`.

I'm on windows, when I tried it, pip uninstalled and then failed to reinstall, and I had to recreate my venv.
I don't feel safe pushing something like this for just linux, because I don't know which distros will work and which ones won't. If windows doesn't work, I can't be sure about linux always working either.


Testing Help

This is less of a formal pull request and more of a request for help.
With the code that I have now, I am passing all of the tests provided as well as created except for one. This test is supposed to test whether your code will ignore an optional attendee if their being left out would create a valid time for a meeting to occur. I have called this test justEnoughRoomOptional(), and my mandatory attendees have meetings from 12:00 AM to 8:30 AM and 9:00 AM to 12:00 AM while my optional attendee has a meeting from 8:30 AM to 8:45 AM. Since the requested meeting is for 30 minutes, this should ignore the optional attendee and return the time  range from 8:30 AM to 9:00 AM. At the moment though, my code is not skipping over the optional meeting like I intended it too and is instead returning an empty time range as though the optional attendee were mandatory.
The way I have designed my code is to sort an array of the given events by the start of their meeting times, returning another array of valid events (mandatory meetings and optional meetings that do not last the whole day as per instructions, regardless of whether the optional meeting is a valid one or not, it will be added to an ArrayList of the total optional meetings), and then iterate over that valid array to find valid meeting times.The way I chose to do this is by first looking at the gap between the beginning of the day and the beginning of the first meeting time, and then examining the gap at the end of the first meeting time and the beginning of the second meeting time with each iteration. I have created conditions for if the first meeting overlaps the second as well as if the meeting is optional and the gap between its end and the start of the meeting after it is a valid one. I created a variable called "previous" that will hold the last end time of a mandatory meeting or the beginning of the day as necessary. My intentions were as follows: if the inclusion of this attendee would result in an invalid meeting time when their exclusion would declare otherwise, use the "previous" end time as the starting point to compare with the following meeting's start time.
I am not exactly sure where in my code that things are breaking up, especially since it passes all of the other optional tests. However, I am leaning towards my "previous" variable not being set or used correctly. I am also unsure if I am making the correct "start" and "end" time comparisons to determine if the meeting time is valid once inside my for loop. I do feel as though I am getting exceptionally close to the solution though, so any help would be very much appreciated!

I will add comments throughout my code for better understanding before I commit any more changes. Hopefully they will provide more clarity.

I'm not sure where he made that comment about (event == null), could you tell me where it is? I will take out the tar file!

It was at line 211 of walkthroughs/week-5-tdd/project/src/main/java/com/google/sps/FindMeetingQuery.java in this pull request, thanks!


fix for special characters

result with correction applied
"CardPack_Bronze_Halloween": {
    "Name": "CardPack_Bronze_Halloween",
    "Type": "CardPack",
    "DisplayName": "Llama de pesadilla descerebrada",
    "Description": "¡Garantiza al menos un héroe o sobreviviente de pesadilla descerebrada épico o mejor por tiempo limitado!",
    "Rarity": "Epic"
  }

The problem occurs more in languages that have special characters such as Spanish.
Currently tested in Spanish Spain, Latin, English


Can we use GPT - J [EleutherAI/gpt-j-6B] ?  Instead of GPT 2 ? trl is only available for GPT 2

Can we use GPT - J [EleutherAI/gpt-j-6B] ?  Instead of GPT 2 ? trl is only available for GPT 2
Please let me know

Coming soon - see #53!

That's Great , waiting for GPT-J to learn through human feedback ?
But what in your thought, Bert classifier will be able to reward the text generated ?? Or there will be any other reward model who can give the score for the generated task.

Has #53 been merged?

Yes, that should work!


fix(windows): Apply dark mode to menus

What kind of change does this PR introduce?

[x] Bugfix
[x] Feature
[ ] Docs
[ ] Code style update
[ ] Refactor
[ ] Build-related changes
[ ] Other, please describe:

Does this PR introduce a breaking change?

[ ] Yes
[x] No

Checklist

[x] This PR will resolve tauri-apps/tauri#3240 (I think so at least)
[x] A change file is added if any packages will require a version bump due to this PR per the instructions in the readme.
[x] I have added a convincing reason for adding this feature, if necessary
[x] It can be built on all targets and pass CI/CD.

Other information
The current dark mode only applies to the window titlebar.  An additional undocumented function
from uxtheme.dll must be called for the menus to appear with the dark theme.
The function that must be called has changed once since being introduced, in Windows 10 version 1903 (build 18362),
this latest version allows you to force the theme color you want instead of just allowing dark to
be set if it is the system default.
From what I have tested this works for system tray menus, menubar menus, and the system menu when right clicking the titlebar as seen below.

A somewhat related issue is #397 although this issue seems to be more about the menubar control itself and not the menus.

Not sure how will this work with external crate like muda since we plan to move menu feature into this crate.
@amrbashir could you help review this?

This should work with muda and probably belongs in tao since it is in charge of managing themes.

Not sure how will this work with external crate like muda since we plan to move menu feature into this crate. @amrbashir could you help review this?

I will try to review ASAP but I agree with @ahodesuka, I think it is better to keep this in tao since it has info about the theme management and would be redundant to implement both in tao and muda, However, I think muda should add an easy API to call this undocumented method, so crates other than tao could call it whenever they want.

Actually since we don't plan on releasing this for 1.x, lets just implement this in muda and let tauri decide if it wants to use this API, does that sound alright?

Looking at it now I think you are right.  It should be implemented in muda and should perhaps expand to theme the menubar itself as well.
I found a quick example here in ppsspp that uses the method you mentioned in #397, but uses the theme menu color avoiding the use of any hard coded values.

Yeah sounds good, feel free to open a PR there.

After taking a second look, I was wrong, this API that switches the context menu should be called in tao and the custom drawing of the menubar should be in muda.


Added Depandabot to keep all the files on latest version

This PR :
It checks the all the dependency versions (to be added in future) version and updates it to latest version by creating a pull request
The option "weekly" refers to weekly getting dependabot alerts !

Thank you, for the PR please signoff your commits.


Import requires 'column id'

Importing fails with error:
Line number: 1 - "Column 'id' not found in dataset. Available columns are: ['name', 'description', 'keywords', 'category', 'IPN']"
The csv file used for import must be fixed with an extra column 'id' and integer number to permit importing.
The 'id' column requirement should be removed imho

This is now fixed in the linked PR.
You will still need an "id" field - but this actually makes sense. For each row, the database needs to decide if the row already exists and needs updating, or is a new record and needs to be added.
For each row you wish to create, simply leave the id field blank / empty.
A good way of doing this is to first export the existing data into the format of your choice, and then use this as a template for re-importing data.
Please give the latest version a go and see if it works for you!


make a call to /end when the game ends

This fixes #38.


How to actually view the unobfuscated request body of a request?

The document here shows that, by turning on full text logging, we are now able to view the request body for a request (https://learn.microsoft.com/en-us/azure/cosmos-db/monitor-resource-logs?tabs=azure-portal#enable-full-text-query-for-logging-query-text). however, it does not describe how we go about viewing this.

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

ID: e65b6971-ea56-5e85-b199-d357fbc97580
Version Independent ID: 219058ac-5460-a33f-bec1-810f40cd2be7
Content: Monitor data by using Azure Diagnostic settings - Azure Cosmos DB
Content Source: articles/cosmos-db/monitor-resource-logs.md
Service: cosmos-db
GitHub Login: @seesharprun
Microsoft Alias: sidandrews

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

It took me awhile to figure this out. For a NoSQL account, the CDBQueryRuntimeStatistics table shows the query text.
https://learn.microsoft.com/en-gb/azure/azure-monitor/reference/tables/cdbqueryruntimestatistics
Ensure your diagnostic settings use a destination table of Resource Specific and QueryRuntimeStatistics category is selected.

The documentation should be updated to reflect the above.


[Outlook] (autolaunch) Link to tag external pnp

Docs Build status updates of commit 43e73b9:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/outlook/autolaunch.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


fix: fixing caching on windows machines

Description
The build process passes the entire Test NodeJS PR pipeline.
Related issue(s)

Fixes #1349

Maintainers, as mentioned in the issue, I tried fixing the caching issue on Windows machines by conditionally checking the npm cache. But a certain substep is failing which passes on other machines. It would be great if someone could point me in the right direction about what is going wrong.
Fix till now:

Failed subprocess

Link to the workflow: https://github.com/helios2003/cli/actions/runs/8624914219/job/23640659229?pr=1

I think it is fixed @helios2003 with https://github.com/asyncapi/cli/pull/1340

I tried running the earlier workflow and apparently, it doesn't pass the same subprocess and also it fails the macOS workflow.
Link: https://github.com/helios2003/cli/actions/runs/8626561222/job/23644917594?pr=2

Hi @Souvikns, thanks for the quick reply. I tried running the earlier workflow and apparently, it doesn't pass the same subprocess and also it fails the macOS workflow. Link: https://github.com/helios2003/cli/actions/runs/8626561222/job/23644917594?pr=2

Yeah, I saw this in other PRs as well, does not look like it is occurring due to cache though.

Oh okay, so can I try to fix the errors in this https://github.com/helios2003/cli/actions/runs/8626561222/job/23644917594?pr=2

@helios2003 it is not caching
it is because one script is still not modified to support windows
just revert your change and update https://github.com/asyncapi/cli/blob/master/package.json#L143 script from printf command to below node script
node -e \"const fs = require('fs'); fs.writeFileSync('scripts/README.md', '# Usage\\n\\n<!-- usage -->\\n\\n# Commands\\n\\n<!-- commands -->\\n');\"

/rtm


feat: Increase account dir search depth

What?

Increase allow depth for the search of the account directory, since some users may have a more deeply nested folder structure that previously expected.

References

Closes 282

Pull Request Test Coverage Report for Build<PHONE_NUMBER>2
Details

2 of 2 (100.0%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 69.151%

Totals

Change from base Build<PHONE_NUMBER>6:
0.0%

Covered Lines:
2011

Relevant Lines:
2800

💛  - Coveralls


Reverting SLDS.resource to previous version.

@njjc @jlantz why isn't this feature branch/pull request showing a build associated with it?  thanks!

@davidhabib passed build now.


RxSwift if else inside flatMap not work

func authorize(user: User) -> Observable<(Client, Authorization)> {
      return Observable<(Client, Authorization)>.deferred {
        let client = Client(unauthenticatedUser: user)

        let observable = client.enqueue(requestDescriptor).map {
          return Parser.one($0.jsonArray) as Authorization
        }

        return Observable.combineLatest(Observable<Client>.just(client), observable) {
          return ($0, $1)
        }
      }
    }

    return
      authorize(user)
      .flatMap { (client: Client, authorization: Authorization) in

        if authorization.token.isEmpty {
          var requestDescriptor = requestDescriptor
          requestDescriptor.then {
            $0.path = "authorizations/\(authorization.objectID)"
            $0.method = .DELETE

            if let oneTimePassword = oneTimePassword {
              $0.headers[Client.Constant.oneTimePasswordHeaderField] = oneTimePassword
            }
          }

          return client.enqueue(requestDescriptor).flatMap { _ in
            return authorize(user)
          }
        } else {
          return Observable<(Client, Authorization)>.just((client, authorization))
        }
      }
      .catchError { error in
        let error = error as NSError

        return Observable<(Client, Authorization)>.error(error)
      }
      .map { (client: Client, authorization: Authorization) in
        client.token = authorization.token

        return client
      }

Need to make stuff inside flatMap a function that returns wanted value


Update test_vim9_class.vim

Fix test for abstract methods in Vim9 classes

Added a new test Test_abstract_method() in test_vim9_class.vim.
This test defines an abstract class A with an abstract method String(), and a subclass B that implements the method.
Verifies that calling the method on an instance of B works as expected without raising E1027: Missing return statement.
Ensures the abstract method is handled correctly during compilation.

Hm, currently it only adds a single line to src/testdir/test_vim9_class.vim That doesn't look useful. Are you still working on that?

closing for now.


Fix failing UIA tests from #10886

#10886 follow-up
There's some failing tests in the CSV that we're skipping right now. They shouldn't be failing, but the tests were verified to be correct when comparing our behavior to MS Word's.
We should update our UIA implementation to make these tests not fail.
IIRC I believe the failing tests are mainly:

"move by line" backwards on degenerate ranges are off by one
"move by document" do not report that they moved by the correct amount
a non-degenerate range that moves 0 should still expand by whatever unit you're moving by (even if you tried to move by 5/1/0 but ended up moving 0)

Added to the v1.11 milestone, but feel free to move it elsewhere.
Also, this is in the shared UIA implementation, so the bug affects Windows Terminal and Conhost