Include aar packaging type for cwac-sacklist dependency in pom.

Using maven to add cwac-merge as a dependency to an Android app, the following error is thrown when resolving the newly added dependency:

[ERROR] Failed to execute goal on project [project_name]: Could not resolve dependencies for project [app_name]: Could not find artifact com.commonsware.cwac:sacklist:jar:1.0.+ in commonsware (http://repo.commonsware.com.s3.amazonaws.com) -> [Help 1]

The problem here is that merge-1.1.1.pom points to cwac-sacklist as a dependency, but doesn't define the packaging type. As such, maven defaults to looking for a jar file (as illustrated by the error message above). But, as we can see in the repo, sacklist is only available as aar package.
Specifying the packaging type (aar) for the nested cwac-sacklist dependency solves the issue. That is, with the pom file below, the nested dependency can be resolved correctly:
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.commonsware.cwac</groupId>
  <artifactId>merge</artifactId>
  <version>1.1.1</version>
  <packaging>aar</packaging>
  <dependencies>
    <dependency>
      <groupId>com.commonsware.cwac</groupId>
      <artifactId>sacklist</artifactId>
      <version>1.0.+</version>
      <type>aar</type>
      <scope>compile</scope>
    </dependency>
  </dependencies>
</project>

(Note: only change is the added line that says: <type>aar</type>)
It'd be great if the pom could be updated to include the aar packaging type for the sacklist dependency, allowing maven to correctly resolve it (or alternatively, publish a jar package too). I haven't tested with Gradle (yet), but I suspect it may default to aar packaging?

@mhelder I do not support Maven builds, just as I do not support builds using Buck, etc. I support Gradle builds and classic Eclipse/Ant builds. While I don't mind it if Maven works, it is not an objective, and I do not want to harm my project in the interests of adding Maven support.

I haven't tested with Gradle (yet), but I suspect it may default to aar packaging?

AFAIK, it looks for either, preferring AAR when that is found. IMHO, Maven's Android support needs to look for AAR and JAR artifacts. Quoting Jake Wharton: "You almost never want to specify explicit packaging" in Gradle builds.
And, of course, in the fullness of time, cwac-merge and cwac-sacklist are not important, as they support ListView and GridView, and those will be replaced by RecyclerView.
Is there some way, in your app's Maven build script, to direct Maven to use AARs for the cwac-sacklist packaging?

@commonsguy: Fair enough, and thanks for the quick reply.

IMHO, Maven's Android support needs to look for AAR and JAR artifacts.

I agree. Then I wouldn't have had this problem in the first place. Unfortunately, that doesn't appear to be the case.

Is there some way, in your app's Maven build script, to direct Maven to use AARs for the cwac-sacklist packaging?

There is, but only for direct project dependencies. Any transitive/nested dependencies are resolved using the dependency's own pom file, which leads back to the issue outlined described in my earlier post. I've Googled the crap out of it, but as far as I can tell there is no way to instruct maven to pick up aar packages too as an 'alternative default'. Basically, this same issue is pointed out by W. Ferguson in the thread you link to (scroll down to the last reply).
Eventually the app I'm working on is going to migrate to RecyclerView, but in order to retain the same behaviour it's going to be a non-trivial change. A fairly complex maven build pipeline currently set up for this project is also holding us back from moving to Gradle in the near future.
For those Maven users out there, would it be an option to also publish a jar package of cwac-merge and/or cwac-sacklist in the repository? That shouldn't harm your projects or supported build systems in any way. As a matter of fact, you already offer jar packages as standalone download - publishing them to the repo would help us out greatly.

@mhelder

Basically, this same issue is pointed out by W. Ferguson in the thread you link to (scroll down to the last reply).

Yeah, he posted that after I responded to your issue, IIRC.

That shouldn't harm your projects or supported build systems in any way.

My vision is to only have AARs in the repo for all of the CWAC libraries. Primarily, that is because I do not want to support JARs for the long term, as that locks me into not having resources, manifest entries, etc. I publish JARs as a stopgap, particularly for libraries that predated AARs, in support of Eclipse users, but eventually I plan to do away with the JARs altogether.
My recommendation, at this point, is for you to switch to source. The MergeAdapter class is only a bit longer than is this issue, and SackOfViewsAdapter is shorter yet. I am not planning any changes to these classes, and so you are not at significant risk of "falling behind" what's published in the AARs. And that way, the source code can be built by whatever means you want (in this case, Maven).

@commonsguy

My recommendation, at this point, is for you to switch to source.

Yeah, that's what I decided to do in the first place. :) It beats the alternatives of manually editing our local Maven repo's pom file and/or bundling the individual jar packages as part of the project. But just by a little bit... ;) (if anyone who stumbles on this is aware of any other solutions: please do tell!)
The mid- to long-term goals are to both migrate to Gradle as well as use RecyclerView as replacement for the two cwac dependencies. As soon as one or both happen, the current issue will be resolved. As such, I'll close this ticket for now.
Thanks again for your feedback, it's much appreciated.

(if anyone who stumbles on this is aware of any other solutions: please do tell!)

I'll tell myself. :) I just realised a much cleaner approach to work around the issue described above exists. Not sure why I didn't think of it before, especially since it's so obvious, but here goes.
<dependency>
    <groupId>com.commonsware.cwac</groupId>
    <artifactId>merge</artifactId>
    <version>1.1.1</version>
    <type>aar</type>
    <exclusions>
        <exclusion>
            <groupId>com.commonsware.cwac</groupId>
            <artifactId>sacklist</artifactId>
        </exclusion>
    </exclusions>
</dependency>
<dependency>
    <groupId>com.commonsware.cwac</groupId>
    <artifactId>sacklist</artifactId>
    <version>1.0.2</version>
    <type>aar</type>
</dependency>

So, that's all there's to it: I'm explicitly skipping the problematic (for Maven) transitive dependency cwac-sacklist and plugging the aar package as a direct dependency into the project. This Maven doesn't go looking for a (non-existent) jar, and we still get all the benefits of maven-hosted artifacts.
For those interested: I also played around with adding the two dependencies as jar packages to the project, by means of including them as system packages, but ran into all sorts of issues with Proguard and integration tests afterwards. While I managed to overcome the initial Proguard issues, for some reason the integration tests were still throwing ClassNotFoundExceptions on MergeAdapter, even though the app itself worked fine.
Oh well... sometimes simple solutions can be best.


ceph: Fix build by fully vendoring old cryptography version nix files.

Fixes ceph build failure on staging-next: https://hydra.nixos.org/build/269104111

With cryptography 42 we can no longer just override the src, because the derivation for 42 can no longer build version 40.
So revive the old version based on:
git show d74195bc77c03b6b7aa7c3433205dd518f245ef2~:pkgs/development/python-modules/cryptography/default.nix > pkgs/development/python-modules/cryptography/40.nix
git show d74195bc77c03b6b7aa7c3433205dd518f245ef2~:pkgs/development/python-modules/cryptography/vectors.nix > pkgs/development/python-modules/cryptography/vectors-40.nix           │

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/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

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

[x] Fits CONTRIBUTING.md.

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

No clue yet if it builds, still building.

We'll have to check in the VM tests for these errors -- they should be absent:
https://github.com/NixOS/nixpkgs/pull/281858#issuecomment-1899160849

We'll have to check in the VM tests for these errors -- they should be absent:

Tests are passing without the ImportErrors, so this looks good to go.

I'm not planning to implemented this nixfmt change suggested by the CI:
https://github.com/NixOS/nixpkgs/actions/runs/10363164012/job/28686308371?pr=334286
pkgs/development/python-modules/cryptography/40.nix: not formatted
pkgs/development/python-modules/cryptography/vectors-40.nix: not formatted
Ignoring file pkgs/tools/filesystems/ceph/default.nix because it's not formatted in the base commit
Ignoring file pkgs/top-level/python-packages.nix because it's not formatted in the base commit
Some new/changed Nix files are not properly formatted
Please run the following in `nix-shell`:
nixfmt 'pkgs/development/python-modules/cryptography/40.nix' 'pkgs/development/python-modules/cryptography/vectors-40.nix'
Error: Process completed with exit code 1.

It's formatting it like this, which looks like the most diff-unfriendly way of doing things, and I'm not planning to take on that maintenance burden that will make backports and other cherry-picks left and right:
-{ lib
-, stdenv
-, callPackage
-, buildPythonPackage
-, fetchPypi
-, rustPlatform
-, cargo
-, rustc
-, setuptoolsRustBuildHook
-, openssl
-, Security
-, isPyPy
-, cffi
-, pkg-config
-, pytestCheckHook
-, pytest-subtests
-, pythonOlder
-, pretend
-, libiconv
-, libxcrypt
-, iso8601
-, py
-, pytz
-, hypothesis
-}:
+{ lib, stdenv, callPackage, buildPythonPackage, fetchPypi, rustPlatform, cargo
+, rustc, setuptoolsRustBuildHook, openssl, Security, isPyPy, cffi, pkg-config
+, pytestCheckHook, pytest-subtests, pythonOlder, pretend, libiconv, libxcrypt
+, iso8601, py, pytz, hypothesis }:

This seems more wrong than makes sense to me -- does staging-next have an incorrect version of nixfmt somehow?

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/satisfaction-survey-from-the-new-rfc-166-formatting/49758/30

@nh2 It looks like you're using nixfmt classic, not the RFC styled one. If you enter the nix-shell (which the error does mention btw :P), you'll have the right pinned version available.

FYI: This version has at least two known security vulnerabilities around creating PKCS#12 bundles (CVE-2024-26130) and when loading PKCS#7 bundles (CVE-2023-49083).

Maybe we should slap knownVulnerabilities on it until we can get Ceph working with a version that isn’t known‐insecure. (Though I guess if Ceph doesn’t exercise any of that functionality it should probably be fine if we move it so that it’s internal to the Ceph package and not exposed as an attribute.)

Or migrate to Ceph 19.1.x (19.2.0 would be the final release), as Ubuntu and Fedora have done it.

If Ubuntu and Fedora are fine with a pre‐release that seems better than bringing back an outdated version of a security library.

It looks like you're using nixfmt classic, not the RFC styled one. If you enter the nix-shell (which the error does mention btw :P), you'll have the right pinned version available.

@infinisil Ah indeed, that fixed it. I had run
NIX_PATH=nixpkgs=. nix-shell -p nixfmt

which brought me nixfmt-0.6.0 while to get nixfmt-unstable-2024-07-12 one needs to run just
NIX_PATH=nixpkgs=. nix-shell

in the top-level of nixpkgs.
I didn't get that
Please run the following in `nix-shell`:

means to literally run nix-shell -- I had thought it meant to use nix-shell to obtain nixfmt (that is, via -p).
It might make sense to make that message even clearer to avoid the confusion.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/satisfaction-survey-from-the-new-rfc-166-formatting/49758/32

This version has at least two known security vulnerabilities around creating PKCS#12 bundles (CVE-2024-26130) and when loading PKCS#7 bundles (CVE-2023-49083).

The commit I pushed (and the code in nixpkgs before this PR) already has a backported fix for one of them:
  patches = [
    # Fix https://nvd.nist.gov/vuln/detail/CVE-2023-49083 which has no upstream backport.
    # See https://github.com/pyca/cryptography/commit/f09c261ca10a31fe41b1262306db7f8f1da0e48a#diff-f5134bf8f3cf0a5cc8601df55e50697acc866c603a38caff98802bd8e17976c5R1893
    ./python-cryptography-Cherry-pick-fix-for-CVE-2023-49083-on-cryptography-40.patch
  ];

I will try to patch the other one also.

Maybe we should slap knownVulnerabilities on it until we can get Ceph working with a version that isn’t known‐insecure. (Though I guess if Ceph doesn’t exercise any of that functionality it should probably be fine if we move it so that it’s internal to the Ceph package and not exposed as an attribute.)

These sounds like good alternative options in case the fix can't be backported.

Or migrate to Ceph 19.1.x (19.2.0 would be the final release), as Ubuntu and Fedora have done it.

That would be way above my (and my org's) risk tolerance -- I imagine it is the same for many other industrial Ceph users (as loss of data in our Ceph storage cluster would be devastating).
I would only upgrade to a new Ceph version when it's fully released and the release and upgrade notes are certain to contain all important points.

I will try to patch the other one also.

Done, that was easy the patch applied cleanly.
Ready for another round of review now.

Would you be comfortable with vendoring the Python libraries under the Ceph directory and importing them in a let rather than an exposed attribute? That way nobody is likely to stumble into using a version they really ought not to by just using cryptography_40 the first time they get a dependency error with some other outdated software.

Would you be comfortable with vendoring the Python libraries under the Ceph directory and importing them in a let rather than an exposed

@emilazy It's possible but wouldn't be my favourite -- in fact when I made this change I thought I should already have done the top-level package earlier:
Outherwise one can't nix-build -A cryptography_40 to build/test it quickly, not use overlays to implement workarounds in downstream usage, and so on.
I already put a big comment, inside the file itself, and now added another comment in all-packages.nix. We could also put _old_ in the name if that'd be useful (though I'd already be surprised if somebody used it "accidentally", given that all of nixpkgs except ceph has already moved on to the newer version).

Oops, I forgot to check on the build and merge…
Will do so after @dotlambda’s review comments are addressed and I double‐check the build.

Fixed the comments, and I checked the build again with the rebase. Merging.

Next Ceph PR is at: #335684

Follow-up to https://github.com/NixOS/nixpkgs/pull/334286#issuecomment-2286193870:

Or migrate to Ceph 19.1.x, as Ubuntu and Fedora have done it.

Looks like Ubuntu's Upgrade to Ceph 19 screwed multiple users, see https://old.reddit.com/r/ceph/comments/1f2osic/whats_going_on_with_ceph_v19_squid/:

Ubuntu really did help this mess by putting squid dev releases into 24.04 repos

and

Well that explains why everything has been failing...
Installed cephadm on ubuntu and bootstrapped but it's on 19.0 it's asked/trying to upgrade to 19.1 and having failures left and right.

So I'm happy to be conservative here and backport fixes to dependencies of less essential components.


Issue #381: Local files should not be graded | Fix

Reviewer:

Description:

Steps to test this PR:

Automated tests:

[ ] Unit tests
[ ] Integration tests

Reviewer Checklist:

[ ] Ensure the PR solves the problem
[ ] Review every line of code
[ ] Ensure the PR does no harm by testing the changes thoroughly
[ ] Get help if you're uncomfortable with any of the above!
[ ] Determine if there are any quick wins that improve the implementation

PR Author Checklist:

[ ] Get advice or leverage existing code
[ ] Agree on technical approach with reviewer (if the changes are nuanced)
[ ] Ensure that there is a testing strategy (and documented non-automated tests)
[ ] Ensure there is a documented monitoring strategy (if necessary)
[ ] Consider systems implications

Tested fix in Firefox and Chrome. Let me know if there are any issues.

Closing in favour of https://github.com/duckduckgo/duckduckgo-privacy-extension/pull/634


Don't log error for rest/applinks calls

Summary
There are some polling mechanisms Jira Server uses to query our plugin for health checks etc. Instead of logging each of these requests as errors, we should instead just return a 404 without logging an error.
Error messages:
{"level":"error","ts":1629292283.469139,"caller":"mlog/sugar.go:25","msg":"ERROR: ","plugin_id":"jira","Status":"404","Error":"not found","Host":"*","RequestURI":"/plugins/jira/rest/applinks/latest/capabilities/STATUS_API","Method":"GET","query":""}
{"level":"error","ts":1629292283.4739969,"caller":"mlog/sugar.go:25","msg":"ERROR: ","plugin_id":"jira","Status":"404","Error":"not found","Host":"*","RequestURI":"/plugins/jira/rest/applinks/latest/manifest","Method":"GET","query":""}

Ticket Link
Fixes https://github.com/mattermost/mattermost-plugin-jira/issues/801

Codecov Report

Merging #802 (b44048b) into master (d4f87fe) will decrease coverage by 0.01%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master     #802      +/-   ##
==========================================
- Coverage   34.93%   34.92%   -0.02%
==========================================
  Files          52       52
  Lines        5945     5947       +2
==========================================
  Hits         2077     2077
- Misses       3659     3660       +1
- Partials      209      210       +1

Impacted Files
Coverage Δ

server/http.go
39.61% <0.00%> (-0.53%)
:arrow_down:

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 d4f87fe...b44048b. Read the comment docs.

@DHaussermann @mickmister not sure if this is testable?

@levb We can use postman to simulate requests that reproduce the logs in the PR description, then assert that it does not occur with this PR's changes

@mickmister , could you please tell me what is action I need to perform to trigger this request "/plugins/jira/rest/applinks/latest/capabilities/STATUS_API" and "/plugins/jira/rest/applinks/latest/manifest" in logging

Hi @vinod-demansol, does my comment above make sense? You just need to perform a GET request to these two endpoints. This can be done via Postman or by visiting the the endpoint via the browser.

@mickmister , Is this correct way of accessing that API? looks like it is expecting "team_id or user_id" in the payload , if you have postman collection for the same , please share it with me.

Hi @vinod-demansol, the endpoints exposed by plugins do not use the /api/v4 prefix. The URL format you will use is:
...mattermost.cloud/plugins/jira...

@mickmister , I am trying find out the endpoint entry details in "Server Logs" after sending the HTTP GET requests to these two end point "/plugins/jira/rest/applinks/latest/capabilities/STATUS_API" and "/plugins/jira/rest/applinks/latest/manifest" , is this correct place where we should expect entry for these two requests?

@vinod-demansol Yes

Before this PR, you should see the log messages
Deploying this PR, you should not see the log messages

@mickmister , I am wondering where do we see this 404 status code neither we get status code as "404" after triggering the HTTP GET requests as response status code (Note: currently I get 200 as status code for these two requests) nor I find this request entry in "server Logs" could you please help me to understand this ?
Note: after sending the request , I refreshed the Server Log expected.

@vinod-demansol I changed the code a bit so you should see 404 instead of 200
So when you deploy the master branch of the plugin, you're not seeing the errors mentioned in the PR description?

@vinod-demansol Just to confirm, you see the ERROR log in the logs when the master branch is deployed right? But not when this PR is deployed. That is the expected behavior here

@mickmister i tested this But not able to regenerate the same error log that mentioned in the issue-Description, i got this error log as {"timestamp":"2022-04-27 09:31:44.836 Z","level":"debug","msg":"not found handler triggered","caller":"web/web.go:63","path":"/api/v4/plugins/jira/rest/applinks/latest/capabilities/STATUS_API","code":404,"ip":"<IP_ADDRESS>"}  on the market place plugin and in this PR build. can you pls guid me how can i regenerate the error log?

@dipak-demansol Did you construct the URL
/api/v4/plugins/jira/rest/applinks/latest/capabilities/STATUS_API
It should be
/plugins/jira/rest/applinks/latest/capabilities/STATUS_API

/plugins/jira/rest/applinks/latest/capabilities

@mickmister When i Use This URL /plugins/jira/rest/applinks/latest/capabilities/STATUS_API in the post man then i'm getting response as "404 page not found" and in the mattermost server -> LogPage there is no entry of Log that Provided in the PR-Description so this was the thing that i have to test as a part of this PR?

in the mattermost server -> LogPage there is no entry of Log that Provided in the PR-Description so this was the thing that i have to test as a part of this PR?

@dipak-demansol Yes, and verify that the log does show up in the previous version of the plugin

{"level":"error","ts":1629292283.469139,"caller":"mlog/sugar.go:25","msg":"ERROR: ","plugin_id":"jira","Status":"404","Error":"not found","Host":"*","RequestURI":"/plugins/jira/rest/applinks/latest/capabilities/STATUS_API","Method":"GET","query":""}

in the Market Build im getting this log after fire the request from post man :arrow_down:
{"timestamp":"2022-05-11 17:16:53.996 Z","level":"debug","msg":"Passed to another router: ","caller":"app/plugin_api.go:925","plugin_id":"jira","Path":"/rest/applinks/latest/capabilities/STATUS_API","Method":"GET"}

in the PR build im getting this log after fire the request from post man :arrow_down:
{"timestamp":"2022-05-11 16:18:09.496 Z","level":"debug","msg":"OK: ","caller":"app/plugin_api.go:925","plugin_id":"jira","Status":"404","Host":"demansol-sandbox.test.mattermost.cloud","RequestURI":"/plugins/jira/rest/applinks/latest/capabilities/STATUS_API","Method":"GET","query":""}

@mickmister as per my comment :arrow_up: , Market build log is not generated in the PR build and PR build Log is not generated in the market build, i don't know i can pass it or not so asking you as per this result can i pass it or not?

@dipak-demansol Are you getting the error logs mentioned in the PR description? Those are the logs we want to avoid in this PR.

@dipak-demansol Is the error log showing for you in the marketplace build of the plugin? It's not clear from our discussion

@dipak-demansol Is the error log showing for you in the marketplace build of the plugin? It's not clear from our discussion

in the market Build i'm not getting any error logs.

@dipak-demansol Are you seeing any difference in the logging between the two versions of the plugin? Considering how much time has been spent on this PR, I'm thinking we should merge it

@dipak-demansol Are you seeing any difference in the logging between the two versions of the plugin? Considering how much time has been spent on this PR, I'm thinking we should merge it

@mickmister With all respect,
Here i already mention the log difference between the market build and PR build as :arrow_down:
https://github.com/mattermost/mattermost-plugin-jira/pull/802#issuecomment-1124051904
plus the major and weird Thing i found that the original error that mentioned in the PR is not generated in the market build and this is the error now im getting as
` {"timestamp":"2022-05-20 16:06:42.556 Z","level":"debug","msg":"Passed to another router: ","caller":"app/plugin_api.go:925","plugin_id":"jira","Path":"/rest/applinks/latest/capabilities/STATUS_API","Method":"GET"}'
also there is no Error log Generated in the market and PR build.

@dipak-demansol Thank you for the explanation. I see this was actually indirectly solved in https://github.com/mattermost/mattermost-plugin-jira/pull/833, which was merged after this PR we're commenting on was created. I'm closing this PR since it's already fixed.
Sorry for the confusion Dipak. Thanks for your work on this


chore(deps): upgrade dev dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-dev-dependencies-k8s-25-main" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 3526

Questions ?
Please refer to the Backport tool documentation


patient_overview.html addition, #21

What Changed?

adding patient_overview.html template, relates to #21
nav updates
css changes related to the above

MOAR ART!

Here's the real screencast:

We might want to rename this template to "browse_patients.html" to avoid confusion with the single patient overview.

This change is actually the final page in the gif - with the single patient details/documents/etc.
The "browse patient" page is the view_login-success.html, which isn't a very good name but it includes multiple features so "browse" didn't seem to make sense - but that can be updated as well.

Closing this in favor of @bengolder's implementation in #37


Show error if context.done() is missing

If context.done() is missing we should show warning to the user. As of now, invoking a function without context.done() hangs and eventually timesout.

Having a problem with "context.done" is already called in one of my functions when an error is catched. I see two contradictory information is this repo. Can you please clarify the right path?
In https://github.com/Azure/azure-functions-nodejs-worker/issues/94:
Don't use the context.done() method

In https://github.com/Azure/azure-functions-nodejs-worker/issues/106
If context.done() is missing we should show warning to the user. As of now, invoking a function without context.done() hangs and eventually timesout.

Pseudo example:
module.exports = function(context, req) {
service.doSomething()
   .then(() => {
      context.log("context.done below will work normally. If not called, will hang until timeout");
   })
   .catch((err) => {
      context.log("but if got an err, this will cause 'context.done is already called'"):
   })
   .then(context.done)
  }

Logs:
[03/09/2018 14:51:02] 2018-09-03T14:51:02.928Z - GET /auth/login [SUCCESS]
[03/09/2018 14:51:02] 2018-09-03T14:51:02.929Z - ERR - {"error":"TypeError: Cannot read property 'split' of undefined"}
[03/09/2018 14:51:02] Error: 'done' has already been called. Please check your script for extraneous calls to 'done'.
[03/09/2018 14:51:02]

This isn't well documented (https://github.com/Azure/azure-functions-nodejs-worker/issues/94), but if your exported function is returning a promise, then context.done is implicitly called. So no need to call context.done yourself :) That's a good point though that the error message could clearly say that. i'll retitle to track that aspect of this issue

@mhoeger Fixed the issue by returning the promise (instead of void). Without that, the system can't call context.done automatically. Also, I using a sync function, not async.
Notwithstanding, still can't understand how I ended up with a context.done called twice, since no promise was being returned. Could not set up a simple example to show that, so I problably doing something wrong.
Thanks for the feedback.

@mhoeger should this issue stay open? I'm unclear what its tracking at this point.

@paulbatum - i think this should stay open, although not necessary for GA. The most recent issue in comments is being tracked here: https://github.com/Azure/azure-functions-nodejs-worker/issues/124

FWIW, This is being tracked by CSE as a P1
Internal Tracking203617
cc @theangellmethod

Closing this because it's stale. context.done() has been discouraged for a while now in favor of async and we already have several warnings/detectors for it.


Open event store for non-aggregate events

Currently the event store can only be used with aggregates. This limits the use of the subscription system. A hybrid approach of d event sourcing and doctrine orm with domain events is also made more difficult.
Maybe we can generalize the store a bit so that we can also store non-aggregate events.
The following needs to be solved:

We don't have aggregate_name and aggregate_id. But we could probably solve it very easily by combining the fields in "stream", which is basically structured like this: "{aggregate_name}-{aggregate_id}". Then other systems could name their own stream such as: “doctrine” or “external”.

We also have to make playhead optional because it doesn't always exist. We set the column as "nullable". We have to check if we can do this for all DB platforms regarding the unqiue constraint.

After our talks on the UserGroup @bwaidelich and I talked briefly about this topic and he send me some links to research.
Maybe some interesting information on this topic in these resources:

https://sara.event-thinking.io/2023/04/kill-aggregate-chapter-1-I-am-here-to-kill-the-aggregate.html
https://github.com/bwaidelich/dcb-eventstore/blob/main/Specification.md
https://github.com/bwaidelich/dcb-example-courses/


Extraction of arrays

I'm using the web auto extractor to retrieve recipes embedded as microdata. Unfortunately, the extractor is not extracting the ingridient list as an array. Instead the ingridients replace each other in the object so that only the last ingridient remains.
Example:

`

½ cup butter
`

½ cup powdered sugar
`

½ cup chocolate chips
`

The web auto extractor only extracts:
{ ..., ingedients : "½ cup chocolate chips", ...}
Instead of:
{ ..., ingedients : ["½ cup butter","½ cup powdered sugar","½ cup chocolate chips"], ...}
An example page with recipe microdata can be found here: getmecooking.com
Is this behavior by design?
The official schema.org Recipe example allows this kind of multi declaration of ingridients.

I assumed all lists would follow the ItemList schema. Looking at the case you've provided, I see it's not really the case. It must be fixed. I'll review your PR and get back to you. Thanks.

Fixed https://github.com/ind9/web-auto-extractor/pull/7


Inconsistent handling of $PWD

Description of the issue
$PWD is not always set as expected during PSRule execution.
To Reproduce
Steps to reproduce the issue:
# Synopsis: Test $PWD automatic variable
Rule 'WithPWD' {
    $PWD.ToString() -eq $TargetObject.PWD.ToString()

}

$testObject = [PSCustomObject]@{
    PWD = $PWD
}

$testObject | Invoke-PSRule -Path $ruleFilePath -Name 'WithPWD';

Expected behaviour
$PWD should use the same path before and during PSRule execution.
Module in use and version:

Module: PSRule
Version: 0.8.0-B190716

Captured output from $PSVersionTable:
Name                           Value
----                           -----
PSVersion                      6.2.1
PSEdition                      Core
GitCommitId                    6.2.1
OS                             Microsoft Windows 10.0.18362
Platform                       Win32NT
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

What drive location do we need: that of Powershell runspace, that of the module containing the rule, that of the script calling Invoke-PsRule ?
Is the addition of a specific variable to Psrule feasible (needed?) ?

@LaurentDardenne $PWD is built-in to PowerShell, set to the current working directory. The issue is that the value or $PWD differs between the runspace calling Invoke-PSRule and what a rule sees during rule execution.
It doesn't happen in all cases, but I notice the issue when I was trying to load a file from disk within a rule.
Yeah, the fix is to just set the variable inside the rule runspace to match the calling process.

It doesn't happen in all cases, but I notice the issue when I was trying to load a file from disk within a rule.

It is not this case ?

@LaurentDardenne No not in this case. It seems to be related to how the process is run, possibly only affecting PowerShell Core. In this case it was defaulting $PWD to C:\WINDOWS\System32.


Allow for running multiple instances of the game

Not a small feat, but it would make a great complement for this addon. Very useful for multiplayer games.
I can do a PR if you take those.
Design-wise, something like Jetbrain Rider's composite run configuration should be fine. With an added parameter to set how many instances of that configuration you'd like.

I'd be happy to accept a PR!
I only work with singleplayer games so I've never ran Godot with multiple instances (didn't even know it was possible), but sounds like a use case that can be useful for others.

Alrighty, work started on it, I'll keep you updated when it's done


Add BST, total EVs and HP info to the Stats card

hiddenPowerType and hiddenPowerPower have been added to pk6parse as of v0.10.14.

Thanks, I'll make a PR later tonight or tomorrow.

Should BST and total EVs be in pk6parse too? We could calculate it here, but it might make sense to just add them to pk6parse.

¯\_(ツ)_/¯
I guess they could, but I would lean against adding them. There's a difference between something like getting an item name from an ID (which is clearly part of extracting data from a pk6 file, and requires the library to possess specific pokemon-related knowledge), versus computing a BST (which is just adding six numbers together). There are a lot of ways that one could theoretically represent a Pokémon's data, but pk6parse will get bloated if we try to include them all.

Alright, I'll just add them together here then.


Switching to shields.io incubating badge with logo

shields.io is used by many projects; this version of the badge is in keeping with the standard look and feel of other badges.
{Substantive content goes here. Summarize the changeset and why the changeset.}

Contributor License Agreement adherence:

[x] This Contribution is under the terms of Individual Contributor License Agreements (and also Corporate Contributor License Agreements to the extent applicable) appearing in the Apereo CLA roster.

I'm not thrilled about uPortal-home not following the Apereo website guidance to incubating projects wrt incubation logo. If this shields.io-generated-badge is better (and I think it is), it'd be best for Apereo Incubation guidance to update to invite all incubating projects to realize this improvement, and then uPortal-home wouldn't be out of norm with Apereo Incubation.

Proposed.
On May 22, 2017, at 10:26 AM, Andrew Petro <notifications<EMAIL_ADDRESS>wrote:
I'm not thrilled about uPortal-home not following the Apereo website guidance to incubating projects wrt incubation logo. If this shields.iohttp://shields.io-generated-badge is better (and I think it is), it'd be best for Apereo Incubation guidance to update to invite all incubating projects to realize this improvement, and then uPortal-home wouldn't be out of norm with Apereo Incubation.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/UW-Madison-DoIT/angularjs-portal/pull/631#issuecomment-303133831, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABPmzXYYWyiF06Q2hUKCFN5YwqxuJhDGks5r8ak8gaJpZM4Ng5i-.


I wish /docs/user-guide/horizontal-pod-autoscaling/walkthrough/ actually contained the information, or at least a link to autoscaling by custom application logic

I wish /docs/user-guide/horizontal-pod-autoscaling/walkthrough/ actually contained the information, or at least a link to autoscaling by custom application logic (as referred to by the first sentence in the article - (or, with alpha support, on some other, application-provided metrics).
The second half of this article seems like the correct target link - http://kubernetes.io/docs/user-guide/horizontal-pod-autoscaling/

Fixed.  Thanks.


Consider removing support of Go 1.8

Recently grpc has removed support of Go 1.8: https://github.com/grpc/grpc-go/commit/59a2cfbdf9272f6334fe4856b6e7c8d212845b3d. This fails the travis test of Go 1.8.
To fix this problem we'd either remove Go 1.8 support or vendorize grpc.

Codecov Report

Merging #87 into master will decrease coverage by 0.12%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #87      +/-   ##
==========================================
- Coverage   84.18%   84.06%   -0.13%
==========================================
  Files          32       32
  Lines        3275     3275
==========================================
- Hits         2757     2753       -4
- Misses        437      440       +3
- Partials       81       82       +1

Impacted Files
Coverage Δ

v1/ao/internal/reporter/reporter_grpc.go
65.8% <0%> (-0.7%)
:arrow_down:

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 c4d8a52...07d2808. Read the comment docs.

@cheempz I think it may be a good time to obsolete the support of Go 1.8 on Travis (it may still work for Go 1.8 if the user application uses an older version of gRPC.)


Welcome screen - Unzip Archive's pick destination dialog doesn't use the archive pref

On the dialog to select a named destination, the Browse button doesn't use the Archive folder pref.

@ffhacksterex  Looks like #141 actually did handle this, it's working on both systems where I tried it.


Facing ConstraintViolationException issue : EntityCannotBeMapOrIterable

I want to achieve schema-free model.
In order to achieve it I created a class which extends HashMap<String, Object>
Idea behind it was to add any extra field into data without changing code and hence avoiding rework.
but using Morphia when I annotate my class with @Entity it starts giving ConstraintViolationException issue : EntityCannotBeMapOrIterable.
If I dont give @Entity annotation then object is saved in DB but without the fields which I tried to insert using put method of map.(only fields declared in that  class are saved + 2 unnecessary things 1-> threshhold 2-> loadFactor)
This is how my class looks like
//@Entity("enricheduserprofile")
public class EnrichedUserProfile extends HashMap<String, Object> implements Serializable{
    @Id
private int rollNumber;
private String name;

.
.
.
.
.
.
.}
if I try to do below thing in test
EnrichedUserProfile eup = new EnrichedUserProfile(2, "rollnumber1");
eup.put("occ1", "Eng");
object in DB looks like
{
"_id" : 2,
"className" : "...EnrichedUserProfile",
"name" : "rollnumber1",
"threshold" : 0,
"loadFactor" : 0.75
}
Is this a limitation with Morphia if Yes then can you please guide me to some work around.
Platform : Windows 10 64bit
Java version: 1.8.0_121
Morphia version : 1.2.1

It is a limitation (ancient) limitation in Morphia.  When i looked in to a while back it seemed to revolve around the ambiguity introduced by the fact that, in mongo, everything is a map so the morphia deserializer code gets befuddled with the Map as an entity type.
The workaround is to store your Map as a field on your entity.  It will introduce one level of indirection since you'll have to bounce all your get/put calls through that field but it resolve that ambiguity.  I've done this here and there and it works well enough.

This workaround might not solve my problem. I want to store everything in the entity as different fields not as an extra map field holding all the extras so that i can query it much effectively and anyone consuming the APIs also does not gets affected.

This is a fundamental limitation in the mapping code for 1.x and 2.x.  Working around this is fraught with risks that outweigh the benefits at this point.  I'm going to close this as "won't fix."


Cannot navigate to /v1-k3s-release/release and cannot upgrade cluster after changing KDM

What kind of request is this (question/bug/enhancement/feature request):
bug
Steps to reproduce (least amount of steps as possible):

Change KDM to point to https://raw.githubusercontent.com/rancher-max/kontainer-driver-metadata/dev-v2.5/data/data.json
Refresh kontainer-driver-metadata driver manually
Try to upgrade an imported rke2 cluster from alpha22 to beta1
Check rancher server logs

Result:
There is no new version available but there should be. Server logs show:
 reflector.go:178] pkg/mod/github.com/rancher/client-go@v1.18.0-rancher.1/tools/cache/reflector.go:125: Failed to list *v1.Service: Get "https://<IP_ADDRESS>:443/api/v1/services?resourceVersion=9281": context deadline exceeded
time="2020-08-10T23:10:53Z" level=fatal msg="Short version cannot contain PreRelease/Build meta data"
2020/08/10 23:10:53 [INFO] failed to run channelserver: exit status 1
2020/08/10 23:10:57 [ERROR] failed on subscribe prometheusRule: NotFound 404: the server could not find the requested resource (get prometheusrules.meta.k8s.io)
2020/08/10 23:10:57 [ERROR] failed on subscribe prometheus: NotFound 404: the server could not find the requested resource (get prometheuses.meta.k8s.io)
2020/08/10 23:10:57 [ERROR] failed on subscribe alertmanager: NotFound 404: the server could not find the requested resource (get alertmanagers.meta.k8s.io)
2020/08/10 23:10:57 [ERROR] failed on subscribe serviceMonitor: NotFound 404: the server could not find the requested resource (get servicemonitors.meta.k8s.io)
I0810 23:11:01.234232       6 trace.go:116] Trace[1788338388]: "Reflector ListAndWatch" name:pkg/mod/github.com/rancher/client-go@v1.18.0-rancher.1/tools/cache/reflector.go:125 (started: 2020-08-10 23:10:31.23371374 +0000 UTC m=+24820.074168134) (total time: 30.000492612s):
Trace[1788338388]: [30.000492612s] [30.000492612s] END

Other details that may be helpful:
Channelserver version being used by the rancher server: v0.0.0-dev
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): master-502b1839
Installation option (single install/HA): HA

Validated in master-d19f179..-head

This is now working and I am able to navigate to the URL mentioned, and can upgrade an imported rke2 cluster when pointing to my custom KDM
The channelserver version mentioned is due to a hardcoded line: https://github.com/rancher/channelserver/blob/e3ea413a149dd41388dfacd9a2ea8e1f979b9855/main.go#L18 so shouldn't be an actual issue in relation to this


Random string printed when switching tabs

When clicking on a nav bar item, this string will be printed out "Blassssfhlksajkdös". Is it possible to remove this?

ditto..and the FAB button is keeping state for me. I can't get it to refresh properly

When clicking on a nav bar item, this string will be printed out "Blassssfhlksajkdös". Is it possible to remove this?

Yep, sorry its away now

ditto..and the FAB button is keeping state for me. I can't get it to refresh properly

Can you give me a code example to recreate the issue?


Does digitisation drive requesting?

What is the problem to solve?
Library staff sometimes struggle with the requests workload. Online requesting makes it easier to request, increasing the workload. Maybe the workload can be reduced if users are requesting digitised items that can be viewed online.
What stage of research is it? (discovery/general usability testing/post release)
discovery
What are the objectives?
Identify the percentage of online requests for digitised items, both unique and non-unique.
What research technique is required?
Python, catalogue API

For background discussion: https://wellcome.slack.com/archives/C3TQSF63C/p1676370458908619

Documentation/discussion doc: https://docs.google.com/document/d/1IvFwTcmUT0G74EKzjx-Z62i0nwjh34bWHth0k_BzCPs/edit

Output: would be useful to display as quarterly time series of percentage of digitised items of total non-unique requests.

A total of 3,354 items were requested during the period 1/3/23 - 31/7/23. Of those items, 1.6% were available online on 18/6/23.
Some items were requested more than once. A total of 2,829 unique items were requested during the period 1/3/23 - 31/7/23. Of those items, 1.5% were available online.

There was no correspondence between the frequency of item requests and availability online.
Here are the 10 most-requested items which are also available online:

Here are the 10 most-requested items which are not available online:

The analysis does not show any evidence that digitisation encourages users to request physical items.

The data and analysis can be found here.

@jennpb Analysis and next steps for comment in this doc:
https://docs.google.com/document/d/1Xb5-z1dgTQWisuda2baKoXBDspSD182h/edit

Production has been notified of items with pixelated areas.
Platform team has been notified of works with discrepancies between api and works pages on location.
Analysis to be picked up in 6 months in ticket #10193


Set-TimeZone Changing Host Machine TimeZone too

BUG REPORT INFORMATION
Description
When we use Set-TimeZone in windowscore based container its changing host machine timezone too.
Steps to reproduce the issue:

Create Dockerfile as following:

FROM microsoft/dotnet-framework:3.5
COPY assets/ assets/
ENTRYPOINT [ "powershell" ]

Build and run container with -it switch
Run Set-TimeZone -Id "Pacific Standard Time" (Different timezone from host machine)
Check Container's and Host Machine time zones with Get-TimeZone powershell command

Describe the results you received:
Set-TimeZone affecting both container and host machine
Describe the results you expected:
Use Set-TimeZone to set only container timezone
Output of docker version:
Client:
 Version:      1.12.2-cs2-ws-beta
 API version:  1.25
 Go version:   go1.7.1
 Git commit:   050b611
 Built:        Tue Oct 11 02:35:40 2016
 OS/Arch:      windows/amd64

Server:
 Version:      1.12.2-cs2-ws-beta
 API version:  1.25
 Go version:   go1.7.1
 Git commit:   050b611
 Built:        Tue Oct 11 02:35:40 2016
 OS/Arch:      windows/amd64

Output of docker info:
Containers: 2
 Running: 0
 Paused: 0
 Stopped: 2
Images: 12
Server Version: 1.12.2-cs2-ws-beta
Storage Driver: windowsfilter
 Windows:
Logging Driver: json-file
Plugins:
 Volume: local
 Network: nat null overlay
Swarm: inactive
Default Isolation: process
Kernel Version: 10.0 14393 (14393.693.amd64fre.rs1_release.161220-1747)
Operating System: Windows Server 2016 Datacenter
OSType: windows
Architecture: x86_64
CPUs: 4
Total Memory: 6 GiB
Name: wincon
ID: TRSR:EBZG:57NQ:VGAH:NTIE:WA4T:ZLAK:7JCX:2LMU:HFHF:UVLV:AZRC
Docker Root Dir: C:\ProgramData\docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
Insecure Registries:
 <IP_ADDRESS>/8
Live Restore Enabled: false

Additional environment details:
I'm running windows docker host machine inside of an Oracle VirtualBox
Thanks, regards...

ping @jhowardmsft

I have created same issue here https://github.com/docker/for-win/issues/451 but its closed for reason: Docker for Windows not currently supporting windows server 2016.
Actually i have tried with docker 1.13 too on windows server 2016, issue still exists. Windows 10 is not an option for us right now, because our docker host machine is windows server 2016 too...
I'm looking forward any news on this and i'm open to suggestions like some workarounds...
Thanks, regards...

Thanks for creating it and checking 1.13 as well. I couldn't repro it on Windows 10 Pro, so this might be related to native windows containers vs containers with Hyper-V isolation

@rneugeba yes, agreed. I can repro with process isolation on Windows Server 2016 but not with Hyper-V isolation.
docker run microsoft/windowsservercore powershell "Set-Timezone -Id 'Pacific Standard Time'"

So what is your suggestion?
On Tue, Jan 31, 2017, 22:00 Rolf Neugebauer<EMAIL_ADDRESS>wrote:

Thanks for creating it and checking 1.13 as well. I couldn't repro it on
Windows 10 Pro, so this might be related to native windows containers vs
containers with Hyper-V isolation
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/docker/docker/issues/30587#issuecomment-276457266,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACtflXFDqfJytVMiKauCQimT9YiTAZy8ks5rX4SxgaJpZM4Lygjr
.

@efaruk as a temporary workaround, you can run with --isolation hyperv.

I filed an internal bug with the windows team VSO#10745839. I'll post back when I have an update but this would require a Windows patch or new version to fix. @friism is right on the short term workaround, but it won't work in VirtualBox.

if we are able to create a base image which is configured with desired time
zone, is it worth to try? Or could we use --isolation hyperv at build time?
Thank you very much @all
Regards...
On Tue, Jan 31, 2017, 22:20 Patrick Lang<EMAIL_ADDRESS>wrote:

I filed an internal bug with the windows team VSO#10745839. I'll post back
when I have an update but this would require a Windows patch or new version
to fix. @friism https://github.com/friism is right on the short term
workaround, but it won't work in VirtualBox.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/docker/docker/issues/30587#issuecomment-276462907,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACtfleMBgOlEKJzUymww6rjIShxr0rZ4ks5rX4lngaJpZM4Lygjr
.

@efaruk you could try putting that in the Dockerfile, but I suspect that the last container started will force the setting to all running containers. If you try it can you let us know the results? --isolation=hyperv would be needed at build & run time

Of course, i will try and let you now...
On Tue, Jan 31, 2017, 22:39 Patrick Lang<EMAIL_ADDRESS>wrote:

@efaruk https://github.com/efaruk you could try putting that in the
Dockerfile, but I suspect that the last container started will force the
setting to all running containers. If you try it can you let us know the
results? --isolation=hyperv would be needed at build & run time
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/docker/docker/issues/30587#issuecomment-276468596,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ACtflQNY8MQAIAwBpHb0RcEPZOGH1Nz0ks5rX438gaJpZM4Lygjr
.

Hi @PatrickLang, @friism, @rneugeba, i couldn't try --isolation=hyperv  because i don't have any bare metal with windows 10 installed. I did tried this: https://www.baswijdenes.com/portfolio/hyper-v-in-virtualbox-guide/ doesn't work either on VirtualBox nor AWS .
Any way this is not an option on any cloud nor on any virtualization environment i guess...
I don't know who are hosting their own infrastructure for running containers, it seems this is kind a every ones problem which are who requires different time zones.
What can i do to make this one has more priority?
Thanks and regards...

@GordonTheTurtle could you label this one also as 1.13 too, because this is valid for 1.12 and 1.13 versions?

Hey @PatrickLang @friism and @rneugeba is it can be a possible hack using HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation. I didn't tried yet, but what are your thoughts?

Hello there,
tzutill also affects whole Docker Host. For example:
docker exec gt_test_iis tzutil /s "Russian Standard time"
@PatrickLang @friism Do we have any updates about internal issue  VSO#10745839 ?
We use AWS instances as Docker Hosts for our containers so we can not isolate containers by hyperv isolation level. So it is kind of critical for us.

The issue is understood, but I don't have an ETA yet. I'll share when I know more.

@PatrickLang I'm hearing rumors that a fix is on the way - do you have an ETA now?

It should be in the Windows insider build - both 10 and server
Sent from a tiny keyboard
On Jul 24, 2017, at 11:35 AM, Michael Friis <notifications<EMAIL_ADDRESS>wrote:
@PatrickLanghttps://github.com/patricklang I'm hearing rumors that a fix is on the way - do you have an ETA now?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/moby/moby/issues/30587#issuecomment-317514592, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AK0eF1gdGrPpvljXPdRGhGtxME33_If7ks5sROQKgaJpZM4Lygjr.

@PatrickLang Hi Patrick,
It is good news. Do we have some rough dates when it will be included to official updates?

Looks like this issue should be resolved (and part of the Windows 1709 update), so closing

"Should" is not helpful.  This has been fixed in the microsoft/windowservercore  image.. But what about microsoft/aspnet ?

The fix was not in the image, but in Windows itself

It is still happening to me, should I use a different win version ?
HOST:win10- Build 18362.295
docker file:
FROM mcr.microsoft.com/dotnet/framework/aspnet:4.7.2-windowsservercore-ltsc2019
RUN "Set-TimeZone  -Id 'Eastern Standard Time'"
result:
Set-TimeZone : Access is denied

This is still not fixed in windows 10 18362.356, is there any reference where original issue can be tracked?


Issue with tags that sometimes have value and sometimes is a single close tag with an attribute

Hi everyone,
It is amazing. But, I have hard time flattening a XML file that has a tag which sometime has value and sometime doesn't have value and instead has a single tag and an attribute.
my code:
def get_to_root_in_dict(the_dict: dict, root_key_list: Optional[List[str]]=None) -> dict:
    '''This is an overraiding of the same funciton from pandas_read_xml. '''
    if not root_key_list:
        return the_dict
    elif len(root_key_list) > 1:
        return get_to_root_in_dict(the_dict[root_key_list[0]], root_key_list[1:])
    else:
        return the_dict[root_key_list[0]] if root_key_list[0] in the_dict.keys() else None
        # return the_dict[root_key_list[0]]

xml ='''
         test
         test

    '''

xml_dict = xmltodict.parse(xml, force_list='a')
df = pd.DataFrame(get_to_root_in_dict(xml_dict, ['main','a']))
if not df.empty:
    for i in range(0,2):
        df = flatten(df)
print(df.columns)
print(df.head())

output:

I would like to get this reuslt:

or at least:

Hey, Thanks for using and providing comments.
While I'd love to solve this issue, I think this package is coming to the end of its intended lifespan.
Pandas is going to release a pd.read_xml() way of reading XML files. And they would have done a proper job of doing so too.
You can see (and probably start using) the dev documents here.
If you do continue to use this, and have found a way to fix it, I'd be happy to accept a pull request. But in any case, as soon as the pandas 1.3 is release, I will make a note in the readme to redirect anybody who finds this github and probably archive this.

pd.read_xml() only works on XPATH levels, so if you have a very nested xml file it wont work.

Okay. So I may have found what is potentially a bug in my original code.
Basically, a part of what pandas_read_xml does to flatten is to determine which flattening action should be taken, then apply that flattening action. This is in part because the json_normalize in pandas is inadequate for the weirdness of XML structure.
Anyway, long story short, I think this particular function in pandas_read_xml:
def mixed_normalise(df: pd.DataFrame, column: str) -> pd.DataFrame:
    normalisable = df[column].apply(lambda x: (type(x)==dict) | (type(x)==collections.OrderedDict))
    return pd.concat([df.loc[normalisable, :].pipe(normalise, column),
                      df.loc[~normalisable, :]],
                     sort=True,
                     join='outer').drop(columns=[column]).reset_index(drop=True)

Should be:
def mixed_normalise(df: pd.DataFrame, column: str) -> pd.DataFrame:
    normalisable = df[column].apply(lambda x: (type(x)==dict) | (type(x)==collections.OrderedDict))
    if df.loc[~normalisable, column].isna().all():
        return pd.concat([df.loc[normalisable, :].pipe(normalise, column),
                          df.loc[~normalisable, :]],
                         sort=True,
                         join='outer').drop(columns=[column]).reset_index(drop=True)
    else:
        return pd.concat([df.loc[normalisable, :].pipe(normalise, column),
                          df.loc[~normalisable, :]],
                         sort=True,
                         join='outer').reset_index(drop=True)

I'll make the changes and bump the version. Could you try re-installing and see if it fixes the issue?

Hi @minchulkim87, Thanks for spending time on this issue. I would suggest, maintaining the package until it the panda.read_xml get mature enough. I found your work valuable. Iwas working on the issue parallelly. Sure, I will check my use case and let you know the result.

Your suggested change solved. Appreciate it.


Git commands are still running in the background when working with the built-in terminal

Since https://github.com/Microsoft/vscode/issues/901 is closed for comments, I can't add new information there.
I have been running with the built-in GIT completely disabled in order to not run into the issues reported by that bug. Since everything should now be fixed, I decided to try enable it again, but there are still problems.  I believe background updates are correctly disabled now when Visual Studio code is not focused.
But there are definitely still problems when running git commands in the built in terminal. All GIT commands should be disabled when the terminal is focused too. Ideally there should also be a fairly long timeout (a couple of minutes) until the next status update is made automatically, to prevent issues when accidentally focusing the editor.
For now I will still have to run with git.enabled: false, git.autorefresh: false and git.autofetch: false to avoid running into problems.
Edit: I just noticed that I  did havegit.autorefresh: false and git.autofetch: false when it happens, but git.enabled:true
Edit2: Ignore the edit above. That was something else.

We now use GIT_OPTIONAL_LOCKS, which should prevent these issues: https://github.com/Microsoft/vscode/issues/35513
Do you have a recent version of git?
What problems exactly do you notice?

I'm running into the same locking issues as #901 describes.
It's very easy to reproduce with Visual Studio Code 1.21.1, and the integrated terminal. On this computer I'm using Msys2 with Git version v2.16.2. But I previously reproduced on the terminal running WSL, I don't know which Git version that had.
Just open a decently sized project (a copy with it's own git clone of course), and open an integrated terminal. Then run git rebase --force HEAD~100, it takes at most a few tries to trigger this error:
fatal: Unable to create '/d/vscodegittest/.git/index.lock': File exists.

Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.

I did some more testing now, and I managed to trigger it with an external terminal too, but just once. It might have been that I tried to run the command too soon after putting vscode out of focus. Anyway in the general case, vscode doesn't seem to be running git commands when not in focus anymore, because the blue icon doesn't flash, it still flashes when running commands from the integrated terminal though.

@fredizzimo Is this still an issue for you? Do you simply run with disabled git due to it?

I am seeing a similar issue with remote editing through WSL. I frequently cannot execute git commands, and get this error:
fatal: Unable to create '/d/vscodegittest/.git/index.lock': File exists.

Another git process seems to be running in this repository, e.g.
an editor opened by 'git commit'. Please make sure all processes
are terminated then try again. If it still fails, a git process
may have crashed in this repository earlier:
remove the file manually to continue.

It also breaks every other Git tool viewing the repo, such as Sourcetree, IntelliJ, you name it.

@wmakley Thanks for the update. I'll close this old issue since it's not WSL related.
What you have reported is https://github.com/microsoft/vscode-remote-release/issues/903


.system extension shouldn't show up in the delete confirmation dialog

Weirdly I can't seem to repro this anymore and the code path looks like it should be using the name we detected for the system and are showing in the grid, so... shrug.


Inconsistency in 'multiConnectToPeer' and 'disconnect' APIs

multiConnectToPeer input parameter is the peer uuidIdentifier without the generation id.
disconnect input parameter is the peer id composed by the uuidIdentifier followed by the generation id.
I would like to understand if there is a reason why the generation id is not passed to multiConnectToPeer? The generation id is available in the node layer when multiConnectToPeer is called.
Moreover, in BrowserManager.connectToPeer we have to keep track of the most recent generation id for the input peer uuidIdentifier because it is not passed as input parameter.
In my opinion, that mechanism of retrieving the generation id is a potential bug since there is no guarantee that the retrieved generation id matches the generation id originally received in the node layer.

I believe the logic went something like this: When we discover a peer with UUID Foo and generation 0 we want to connect to them. We don't care if from the time we sent the multiconnect to when the native call is made that the generation for Foo might have increased to 2 or 3 or whatever. The reason we don't care is that the generation just says "I have new data". So if we wanted to connect to Foo with generation 0 then we really want to connect to Foo with a higher generation since it means it has more new data. So we don't specify the generation on multiconnect because it doesn't matter.
Now disconnect is weird. And I think we may just have a bug. If you notice we specify here that disconnect is supposed to get a peerIdentifier. But peerIdentifier is defined here and note how it explicitly states that in the iOS case only the UUID and not the generation is supposed to be returned. And in fact we double down on this here which is the higher layer wrapper which explicitly says that peerIdentifier is the value taken from peerAvailabilityChanged which as we already specified is only supposed to return the UUID and not the generation.
And yet we can see here that we are going to pass the identifierString as a constructor to a Peer object. Which we can see here will actually throw if we don't specify the full UUID + generation.
All of which leads to a fairly depressing discovery. If we check here we see that we never actually use disconnect in any real test with a real connection.
So the reason this bug was never found is that near as I can tell there doesn't exist even ONE test where we connect over iOS and then disconnect.

Thanks @yaronyg, I'll go ahead and fix it removing the generation id from the disconnect API implementation.

@yaronyg the disconnect bugs are tracked here
There are actually two bugs, one is the fact that the API has been implemented expecting a uuid + a generation id, the other is that the call fails silently if a malformed peer id is passed.
We can close this issue.


Milestone 6. Views

Milestone 6. Views 🎉
For this milestone, the following features have been implemented:
SASS on Rails

Installed gem sassc-rails
Renamed file app/asset/stylesheets/application.css to app/asset/stylesheets/application.css.scss

Model Refactoring
All the counter methods have been refactored to be more reliable

Post => update_posts_counter
Like => update_likes_counter
Comment => update_comments_counter
Removed all the after_initialize callbacks and created a migration to set default values to counter

Controller Behavior
Implement methods to load the corresponding data:

UsersController => index and show
PostsController => index and show

New view partials
These partials allows to render each element individually

_user.html.erb
_post.html.erb
_comment.html.erb

Refactor HTML
The following files have been refactored to improve styling:

app/views/layouts/application.html.erb
app/views/posts/index.html.erb
app/views/posts/show.html.erb
app/views/users/index.html.erb
app/views/users/show.html.erb

SASS partials
The following files have been used to apply styling to application. They are located at folder app/asset/stylesheets/partials.
Base styles

_reset.scss
_variables.scss
_typographies

Views styles

_posts.scss
_users.scss

Console commands used in testing
new_photo = 'https://images.unsplash.com/photo-1508921912186-1d1a45ebb3c1?ixlib=rb-1.2.1&ixid=MnwxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8&auto=format&fit=crop&w=687&q=80'
first_user = User.create(name: 'Tom', photo: new_photo, bio: 'Teacher from Mexico.')
second_user = User.create(name: 'Lilly', photo: new_photo, bio: 'Teacher from Poland.')
first_post = Post.create(author: first_user, title: 'Hello', text: 'This is my first post')
second_post = Post.create(author: first_user, title: 'Hello', text: 'This is my second post')
third_post = Post.create(author: first_user, title: 'Hello', text: 'This is my third post')
fourth_post = Post.create(author: first_user, title: 'Hello', text: 'This is my fourth post')
Comment.create(post: first_post, author: second_user, text: 'Hi Tom!' )
Comment.create(post: first_post, author: second_user, text: 'Hi Tom! Second comment' )
Comment.create(post: first_post, author: second_user, text: 'Hi Tom! Third comment' )
Comment.create(post: first_post, author: second_user, text: 'Hi Tom! Fourth comment' )
Comment.create(post: first_post, author: second_user, text: 'Hi Tom! Fifth comment' )
Comment.create(post: first_post, author: second_user, text: 'Hi Tom! Sixth comment' )
Like.create(author: first_user, post: first_post)
Like.create(author: second_user, post: first_post)

App Screenshot

@BenMukebo Thanks for your kind review. I'll merge my feature branch right away.
Best regards and happy coding!! 😀💻


Absolute Path to Pictures and Thumbnail-Temp Folder changed by pigallery to relative path

Hi there!
I wanted to get the pigallery2 working on my RaspberryPi4 and got stuck at Indexing and creating Thumbnails.
In the WebUI and also in the config.json I put in the absolute path to the Pictures Folder and to the TEMP Folder which are located on an external drive.
After saving I klick on "Index with Thumbnails" but nothing happens. The Indexing Process Bar shows 0 pictures and no thumbnails are created in the temp Folder.
In the CLI I spotted this:

}
04/11/2019, 16:14:57[INFO] [IndexingTaskManager] Starting indexing
{
errno: -2,
syscall: 'stat',
code: 'ENOENT',
path: '/root/pigallery2/mnt/3d588833-2cf8-4b8e-8c8e-441e813c15a4/pictures/'
}
{
errno: -2,
syscall: 'stat',
code: 'ENOENT',
path: '/root/pigallery2/mnt/3d588833-2cf8-4b8e-8c8e-441e813c15a4/pictures/'
}
04/11/2019, 16:23:47[INFO] [IndexingTaskManager] Canceling indexing

So it seems that the absolute path which I configured in the WebUI and also in the config.json is appended automatically to "/root/pigallery2/". So the path which pigallery uses is not the intended path "/mnt/3d588833-2cf8-4b8e-8c8e-441e813c15a4/pictures/" but "/root/pigallery2/mnt/3d588833-2cf8-4b8e-8c8e-441e813c15a4/pictures/" . Therefore it can not index anything because this path/folder dosent exist. It seems that it appends the Path to the current runtimefolder path or handles the absolute path as a relative path.
Would be nice if it recognizes relative (without / at the beginning) and absolute paths (with / at the beginning).
Screenshots
My Config:

CLI with Error Message:

Environment (please complete the following information):

OS: Raspberry Pi 4 with dietpi

Thank you very much in advance. 👍 :)
Greetings!

Hi,
I'm using it the same way:
...
"imagesFolder": "/mnt/hdd/images/FamilyPhotos",
        "thumbnail": {
            "folder": "/mnt/hdd/images/.tmp",
...

I'm using RPi3 with Raspbian GNU/Linux 9 (stretch) , node v10.15.0, npm 6.4.1 and works.
Can you check if you are using node 10+? (command: node -v)
Best,
Patrik

Hi there Patrik. Thank you for your fast reply.
I am using an RPi4 with Linux DietPi 4.19.75-v7l+ #1270 SMP Tue Sep 24 18:51:41 BST 2019 armv7l GNU/Linux basically  Raspbian GNU/Linux 10 (buster) .
I installed node like shown in the instructions of how to install pigallery.
Node:
root@DietPi:~/pigallery2# node -v
v13.0.1

NPM
root@DietPi:~/pigallery2# npm --version
6.12.0

Thank you for your help.
Greetings from Germany! :)

Hi,
Unfortuntalty I could not reproduce the error, but with the latest commit I have updated the absolute path checking. I hope it solves your issue.

closing due to inactivity


bug:

Provide environment information
System:
OS: macOS 14.5
CPU: (12) arm64 Apple M2 Max
Memory: 73.17 MB / 32.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 20.12.2 - ~/.nvm/versions/node/v20.12.2/bin/node
npm: 10.5.0 - ~/.nvm/versions/node/v20.12.2/bin/npm
Describe the bug
t3 app with sqlite and drizzle does not update the userid field in the databse and we get a login error.

Reproduction repo
https://github.com/ZzyzxIsAlreadyTaken/monthly
To reproduce
npm create t3-app@latest
◇  What will your project be called?
│  trenelitt
│
◇  Will you be using TypeScript or JavaScript?
│  TypeScript
│
◇  Will you be using Tailwind CSS for styling?
│  Yes
│
◇  Would you like to use tRPC?
│  Yes
│
◇  What authentication provider would you like to use?
│  NextAuth.js
│
◇  What database ORM would you like to use?
│  Drizzle
│
◇  Would you like to use Next.js App Router?
│  Yes
│
◇  What database provider would you like to use?
│  SQLite (LibSQL)
│
◇  Should we initialize a Git repository and stage the changes?
│  Yes
│
◇  Should we run 'npm install' for you?
│  Yes
│
◇  What import alias would you like to use?
│  ~/
Set up a provider (Ive testet Discord and Google).
Fail to log in (create user in database)
Additional information
I have tested this twice with two different project installations aswell. Also Ive tested to change the id in the user table schema to integer and autoincrement, and then the user is created, but the auth.ts file then shows errors.
This is if Im changing user table id:
auth.ts

schema.ts

See https://github.com/t3-oss/create-t3-app/issues/1906#issuecomment-2141022516

Thanks for your reply. It seems like that was the exact same bug. I just did not find it by searching. Ive implemented the suggested fix, and it seems to work with the Google Adapter :) I can also see in the database that the id now is populated correctly with a string (a guid). I also see that a pull request has been submitted. So I hope that T3 will be updated as soon as possible :)

Thanks for your reply. It seems like that was the exact same bug. I just did not find it by searching. Ive implemented the suggested fix, and it seems to work with the Google Adapter :) I can also see in the database that the id now is populated correctly with a string (a guid). I also see that a pull request has been submitted. So I hope that T3 will be updated as soon as possible :)


[Feature Request] Flame redirects to URL or IP when user enters a URL or IP in the search bar and presses the key "enter"

Feature Request: When a user enters a URL or IP in the search bar and presses the key "enter", "Flame" should automatically recognize that either a URL or IP was entered in the search bar and redirect to the given URL or IP.
Example 1:
Condition: User enters "youtube.com" in search bar
Result: Flame redirects to "http://youtube.com"
Example 2:
Condition: User enters "www.youtube.com" in search bar
Result: Flame redirects to "http://www.youtube.com"
Example 3:
Condition: User enters "http://youtube.com" in search bar
Result: Flame redirects to "http://youtube.com"
Example 4:
Condition: User enters "http://www.youtube.com" in search bar
Result: Flame redirects to "http://www.youtube.com"
Example 5:
Condition: User enters "https://youtube.com" in search bar
Result: Flame redirects to "https://youtube.com"
Example 6:
Condition: User enters "https://www.youtube.com" in search bar
Result: Flame redirects to "https://www.youtube.com"
Example 7:
Condition: User enters "<IP_ADDRESS>" in search bar
Result: Flame redirects to "http://<IP_ADDRESS>"
Example 8:
Condition: User enters "http://<IP_ADDRESS>" in search bar
Result: Flame redirects to "http://<IP_ADDRESS>"
Example 9:
Condition: User enters "https://<IP_ADDRESS>" in search bar
Result: Flame redirects to "https://<IP_ADDRESS>"

Any update on this feature?

Do you plan to implement this feature? This feature was in SUI.


Training Loss Fluctuations with 0.12-Pint on Expository-Prose-V1 Dataset

Description: During training on the Expository-Prose-V1 dataset using the provided parameters, I observed unexpected fluctuations in the loss curve (see above image). The curve suggests instability, possibly due to data shuffling issues or parameter tuning.  Have you encountered similar issues, and do you have any recommended solutions?

The issue was indeed caused by the data not being shuffled properly. I wrote the following script (shuffle.py) to shuffle the pre-training data:
import os
import random
from pathlib import Path
from typing import Optional, List, TypedDict
import pandas as pd
import pyarrow as pa
import pyarrow.parquet as pq
from tqdm import tqdm

def read_file(filepath: Path, parquet_columns: Optional[List[str]] = None):
    contents = pq.read_table(filepath, columns=parquet_columns)
    return contents

def read_and_shuffle_all_files(directory: str) -> pa.Table:
    all_tables = []
    file_list = [f for f in os.listdir(directory) if f.endswith('.parquet')]

    # Iterate over all files in the directory with a progress bar
    for filename in tqdm(file_list, desc="Reading and concatenating files", unit="file"):
        file_path = Path(directory) / filename
        file_contents = read_file(file_path)  # Read the entire file
        all_tables.append(file_contents)

    print("Concatenate all the tables into one ...")
    combined_table = pa.concat_tables(all_tables)

    print("Convert to pandas for shuffling ...")
    df = combined_table.to_pandas()

    print("Shuffle the DataFrame ...")
    df = df.sample(frac=1).reset_index(drop=True)

    print("Convert back to Arrow Table ...")
    shuffled_table = pa.Table.from_pandas(df)

    return shuffled_table

def save_to_parquet(table: pa.Table, batch_size: int, output_dir: str):
    output_dir = Path(output_dir)
    output_dir.mkdir(exist_ok=True)

    print("Convert table to pandas DataFrame for batching ...")
    df = table.to_pandas()

    # Split the data into batches and save each batch as a separate parquet file with a progress bar
    for i in tqdm(range(0, len(df), batch_size), desc="Saving shuffled data", unit="batch"):
        batch_df = df.iloc[i:i + batch_size]
        batch_table = pa.Table.from_pandas(batch_df)
        output_file = output_dir / f'shuffled_part_{i//batch_size}.parquet'
        pq.write_table(batch_table, output_file)

# Custom variables
directory_path = 'your input directory path'  # Replace with your input directory path
output_directory = 'your output directory path'  # Replace with your output directory path
batch_size = 10000  # You can adjust batch size as needed

# Read, shuffle, and save the shuffled content
shuffled_table = read_and_shuffle_all_files(directory_path)
save_to_parquet(shuffled_table, batch_size, output_directory)

One can resolve this issue by running the script before executing the 'Prepare the dataset' step in the README instructions. This ensures the data is properly shuffled, avoiding the instability observed in the loss curve.

oh thanks for this. @tmylla  Can you put up a pull request and I will review it!


Why is the input in the terminal buggy?

The input in the terminal does not work properly. It shows incorrectly, but if I expand the terminal a little, the error will visually disappear, but the input continues to give this effect. When deleting, the terminal also behaves strangely.
Introduced the "dig mysql"

expanded the terminal

removed 2 characters from the end

removed all characters

The input in the terminal does not work properly. It shows incorrectly, but if I expand the terminal a little, the error will visually disappear, but the input continues to give this effect. When deleting, the terminal also behaves strangely.
Introduced the "dig mysql"

Did you find a fix? This happens in my system too...

@SinGlEBW I'm gonna look into it. Probabaly will switch the profile as I did have some buggy behaviour in the past as well. stay tuned.

Noting that this also happens on my system with VS Code:
Version: 1.54.3 (system setup)
Commit: 2b9aebd5354a3629c3aba0a5f5df49f43d6689f8
Date: 2021-03-15T10:55:45.459Z
Electron: 11.3.0
Chrome: 87.0.4280.141
Node.js: 12.18.3
V8: <IP_ADDRESS>-electron.0
OS: Windows_NT x64 10.0.18362

@AaronViviano @SinGlEBW I pushed a new version and switched to zsh with cleaner term profile. let me know if you're seeing same issue.

@nicolaka I am not seeing the same issue any more. Though the rendering of the terminal in VS code is still odd.

I'm also seeing a yellow alpha numeric string of 12 characters before command prompt line. Not sure what they are there for. Looks like a shortened git hash. While I highly doubt this is the case, I'm not including it in the picture in case this is some sort of security related key.

@AaronViviano the hash is just the container name that turns into the hostname. The new zsh profile uses the hostname in the prompt that's all.

@nicolaka Good to know! Thank you.


Styles overridden

It seems the styles in my HTML emails are being overridden by those of preview-email. Am I missing something?
Thanks for the great project!

Hi!
Can you upload a screenshot with the result?
I had a similar problem, the preview-email did not render the css style when I had this line:
<link href="style.css" rel="stylesheet">
With my library render EJS I have included the css inside of my html file:
<style>   <%- include('style.css'); %> </style>

Hi!
Can you upload a screenshot with the result?
I had a similar problem, the preview-email did not render the css style when I had this line:
<link href="style.css" rel="stylesheet">
With my library render EJS in order to solve the problem I have included the css inside of my html file:
<style>   <%- include('style.css'); %> </style>


Add support for async & void middleware functions

This is the fix proposed in issue https://github.com/reactjs/redux/issues/2602

This is not a good fix


fix(client): make halo proxy invitation compatible w/ useSyncExtenralStore

Current dependencies on/for this PR:

main

PR #2469   👈

This comment was auto-generated by Graphite.


VaultMount does not allow for options to be specified

Affected version: 2.1.2
To properly create a KV v2 versioned secret backend, options must be specified as per https://www.vaultproject.io/api/system/mounts.html#options.
Also, the link above incorrectly shows that options should be a field of config. It is a separate field, as per https://github.com/hashicorp/vault/blob/master/api/sys_mounts.go#L137. A fix has been requested in https://github.com/hashicorp/vault/issues/4601#issuecomment-500802035.
Currently, VaultMount does not allow for a specification of options, only config is exposed. This way, if a mount of type set to kv is created, it's not versioned and versioning must be enabled separately.
A workaround is to use VaultTemplate directly (as opposed to VaultSysOperations) and execute write("sys/mounts/mymount", "{\"type\": \"kv\", \"options\": {\"version\": \"2\"}}").

That's a good enhancement proposal. Do you want to submit a pull request?

Sure, I'll give it a go soon.

@mp911de I will need your help here.
Tests are failing for older Vault versions. Is there a mechanism to run tests for specific vault versions only?

You already answered your first question. No need for a separate test class. If there's no version check yet, then add it like it is done in https://github.com/spring-projects/spring-vault/blob/c7b6557606b7e3a41a7982326612615c192adff1/spring-vault-core/src/test/java/org/springframework/vault/core/VaultSysTemplateIntegrationTests.java#L55-L62.

@mp911de thanks for that! I didn't even realise it was in the same class I worked on 😊
Travis seems happy, have a read of the code please.


error TS2339: Property 'startsWith' does not exist on type 'string'

tsc 2.0.10
Code
let tok = ":name";
if(tok.startsWith(":"))  <--- false error: error TS2339: Property 'startsWith' does not exist on type 'string'
// A *self-contained* demonstration of the problem follows...

Expected behavior:
should know this is a method on a JS string.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String/startsWith
Actual behavior:

The method endsWith is declared into es6 (es2015). Make sure your target is es6 or higher (if target is not defined defaults to es3) or use lib option to include "es2015.core".

Thanks, closing!

We have this but still get the same error
{
  "compilerOptions": {
    "target": "es2015",
    "module": "commonjs",
    "sourceMap": true
  },
  "include": [
  ],
  "exclude": [],
  "lib":[
    "es2015"
  ]
}
``` error TS2339: Property 'startsWith' does not exist on type 'string'.

"lib" should be part of "compilerOptions" and not a sibling . see http://www.typescriptlang.org/docs/handbook/compiler-options.html and http://json.schemastore.org/tsconfig

thx


Add new fields to event model

Add new fields to event model (none of them is required):

cfp_allowed: Boolean field, default: True, help text: Weather to allow submitting talk proposals.
cfp_end: Datetime field, help text: Call for proposals deadline.
contact_email: EmailField, help text: Publicly displayed email to contact organizers.

Add validation for the cfp_end field have to be before date_from and required if cfp_allowed.
Update existing cfp view to show 404 if cfp_allowed is False. Once we pass the cfp_end date do not show (allow to submit) form, and display message (Something along this):

Thank you for your interest, but unfortunately call for proposals deadline was at: cfp_end. However if you feel like you have to submit your talk anyway, feel free to contact us: contact_email

Update admin area to be able to update new fields and create a migration for the new fields.

I will take this, if it is not urgent. Please let me know so that I can assign it to myself.

Sure, do it...

@mimmon I have updated issue and moved few fields (coc) into separate issue, as we need it on the site. When I created that bug I totally forgot you already have it here. Sorry about this.


Fragments for mixed local/remote queries

I am trying to setup a query which fetches data both from the local cache and from the server. A problem arises when I introduce fragments, as the fragment used for my local query is sent to the server, which crashes the query.
query Query {
  remoteObject {
    ...RemoteObjectFields
  }
  localObject @client {
    ...LocalObjectFields
  }
}
fragment RemoteObjectFields on RemoteObject {
  remoteField1
  remoteField2
}
fragment LocalObjectFields on LocalObject {
  localField1
  localField2
}

This results in the server returning
errors = [
  { message: "No such type LocalObject, so it can't be a fragment condition", ... },
  { message: "Fragment LocalObjectFields was defined, but not used", ... }
]

Hardcoding the local fields as below works
query Query {
  remoteObject {
    ...RemoteObjectFields
  }
  localObject @client {
    localField1
    localField2
  }
}
fragment RemoteObjectFields on RemoteObject {
  remoteField1
  remoteField2
}

Is there a way to declare a fragment as local, or am I just missing something completely?

I think this is also a duplicate of https://github.com/apollographql/apollo-client/issues/3371

Nope, still using hardcoded local fields...

In the soon to be released new version of this project, fragments that only have @client fields / selection sets are automatically excluded from being sent to the server. So if you adjusted your local fragment definition like:
fragment LocalObjectFields on LocalObject {
  localField1 @client
  localField2 @client
}

it will be fully stripped before your query hits the server.

any update on this?

@hwillson Is there a PR I can contribute to?


Vast killed for consuming all swap space

Looks like a memory leak or unflushed data.
Successive imports make Vast RES usage continuously increase, until the processes is killed (FreeBSD) for using all available swap space.
from /var/log/messages:
...
Nov 18 09:56:53 bro kernel: swap_pager: out of swap space
Nov 18 09:56:53 bro kernel: swap_pager_getswapspace(16): failed
Nov 18 09:56:53 bro kernel: pid 48226 (vast), uid 1001, was killed: out of swap space

Here's a small script that makes Vast RES usage increase by about 2MB/s.
Swapper.py:
#!/usr/bin/env python

import subprocess,sys
import StringIO

text = '''#separator \\x09
#set_separator\t,
#empty_field\t(empty)
#unset_field\t-
#path\tSwapper
#open\t2015-10-08-14-55-06
#fields\tf1\tf2\tf3
#types\tstring\tstring\tstring
v1\tv2\tv3
#close\t2015-10-08-14-55-06
'''

text=text*1000

full_cmd = ['/usr/local/bin/vast', 'import', 'bro']

output = StringIO.StringIO()
output.write(text)

try:
  while 1:
    p = subprocess.Popen(full_cmd, stdin=subprocess.PIPE, stdout=subprocess.PIPE,
                     stderr=sys.stderr)
    out, out_err = p.communicate(input=output.getvalue())
except KeyboardInterrupt:
  pass

Stopping all imports does not make Vast start any other activity.
Using vast send index flush flushes all indexes to disk but does not free any memory.
Using vast stop makes Vast terminate thousands of :: event-data-indexer actors.

I'll close this one for now since it's relating to a code base that has since been revamped. If the issue still persists, we can consider reopening it.


fixed progress documentation issue

added instance of VideoCompress to make progress subscription work.
VideoCompress videoCompress = new VideoCompress();

@shubham-chhimpa Thank you, this helped me solve the issue 👍


Wrong mime type when fetching wasm module

https://cdn.esm.sh/v58/<EMAIL_ADDRESS>will give mime-type "text/javascript" instead of "application/wasm"
This example will fail in the most recent browser
import initSwc, { transformAsync } from 'https://esm.sh/@swc/wasm-web';

await initSwc(); // instantiate wasm module
console.log(transformSync(`console.log('hello')`, {}));

in Firefox 95
❌ error message
Uncaught CompileError: wasm validation error: at offset 4: failed to match magic number
    E https://cdn.esm.sh/v58/@swc/wasm-web@1.2.120/es2021/wasm-web.js:2
    O https://cdn.esm.sh/v58/@swc/wasm-web@1.2.120/es2021/wasm-web.js:2
    async* https://localhost:8080/shim.config.js:38
wasm-web.js line 2 > WebAssembly.instantiate:2

⚠ with a warning
`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type.
Falling back to `WebAssembly.instantiate` which is slower. Original error:
 TypeError: WebAssembly: Response has unsupported MIME type 'application/javascript; charset=utf-8' expected 'application/wasm' wasm-web.js:2:2068

in Chromium 96
❌ error message
Uncaught CompileError: WebAssembly.instantiate(): expected magic word 00 61 73 6d, found 2f 2a 20 65 @+0

⚠ with a warning
`WebAssembly.instantiateStreaming` failed because your server does not serve wasm with `application/wasm` MIME type.
Falling back to `WebAssembly.instantiate` which is slower. Original error:
 TypeError: Failed to execute 'compile' on 'WebAssembly': HTTP status code is not ok
E @ wasm-web.js:2

Looking at the body response of https://cdn.esm.sh/v58/<EMAIL_ADDRESS>/* esm.sh - error */
throw new Error("[esm.sh] " + "parseCJSModuleExports: Can't resolve<EMAIL_ADDRESS>in '/tmp/esm-build-e44ce0855ae86e611b58d7e0008ce827268d6244-fd126614'");
export default null;

Seems like it doesn't properly resolve new URL('wasm_bg.wasm', import.meta.url) (source line 217).
Exposing all package.json files into https://cdn.esm.sh/:version/:pkg_name@:pkg_version/:target/* should fix this.

you should access the non-js files via https://cdn.esm.sh/<EMAIL_ADDRESS>

@ije Can there be a redirect for WASM files? I have the same problem with @parcel/source-map.


ToolTipFix

CurseForge link
https://www.curseforge.com/minecraft/mc-mods/tooltipfix
CurseForge Mod Distribution
Allowed
Modrinth link
https://modrinth.com/mod/tooltipfix
Source/other link
https://github.com/kyrptonaught/tooltipfix
Mod file size
12.4 KiB
License
(any other license)
What it does
It fixes long tooltips that go off the screen by "folding" the tooltip.

Why should it be in the modpack
It Will help players with really long item names see their items names properly.
Why shouldn't it be in the modpack
you won't come in contact with it often, and incompatibilities may occur.
Additional details
No response

We had this mod in for a time (#132), but we removed it for Debugify's fix (#322). However, Mojang "fixed" this issue in 1.19.3 - however we're not sure how well that was executed - so we're evaluating Adaptive Tooltips because Debugify removed the fix (#520).
Going to close this - feel free to submit 1.19.3 testing and things like that in #520 though.


Fix typo in README.md file name for codemagic_app_review

⬇ Generated builds by Codemagic for commit dd89c1d2fe5aea4de138d87c1a3c79ac841fa9d3 ⬇

iOS
Android

  Download link
  Download link


generate pyi files when building/publishing 3rd party component

will try to look at the PR, but it works great with the newly published reflex-calendar with pyi files.

i appreciate your dedication to test coverage 😅

yeah they are in need of attention 😛


How do I become a member of this organization?

Profile is at @ucalyptus

Which Organization? And what is your interest in it?

This Github organization , I look to contribute to nephos. but not sure where to start from

This is healthcare related project. If you would like to contribute to this repo - welcome. Pls provide your expertise and what would you like to develop?
fyi nephos is here https://github.com/hyperledger-labs/nephos. If you still want to contribute to there - contact them directly.
Also, join Hyperledger Community here following appropriate chat:  https://chat.hyperledger.org/home


[test] Rewrite URLSession cookie tests to be independent.

Some cookie tests were depending on previously run tests to be
successful. Rewrite all the tests to be independent from each other.
The first change is that all the tests that deal with cookies try to
clean their cookie storages before starting the testing. This should
avoid previous state leaking into the current test.
Some other changes are made to clarify how the cookie tests are actually
performed. To check that the cookies are set by URLSession, an special
endpoint that echoes back the request header are used. To make it clear,
that endpoint has changed names.
In the cases that we were checking that the response headers were
setting the cookies, we actually check for the right headers to been
set, not some random data in the response (because for some reason, the
request headers were also being echo in another endpoint, which might
have created false positives).
There is also some cleaning of unused variables and var that should have
been let.
I tested this by running all the tests in TestURLSession in the same
run, and also running the individual tests one by one from the command
line.
I recommend reading this diff with whitespace changes disabled (?w=1 in the address bar).

@swift-ci please test

Found in the review of #2521.


Proposal: Add configurations for schema loading

Totally out of self-interest from my experience, but might make it easier to adopt thrifty's schema: some configuration for controlling how strict the parser is.
Some ideas:

duplicate field IDs
using keywords as names

yeah I'd love to take a look. That was the part I actually wasn't sure about, the duplicate field IDs would be reasonably easy to flag
and totally understandable :)

I've pushed the branch to my personal fork: https://github.com/benjamin-bader/thrifty/tree/syntax/escaped-literals
It implements an "escaped identifier" syntax for enum members where surrounding an identifier with square brackets circumvents checking for reserved keywords, e.g.
enum Foo {
  [struct] = 1,
  BAR = 2
}

The main point is that the antlr definition gets a new ESCAPED_IDENTIFIER token, because (due to the lexing algorithm) literals that appear in parse rules (e.g. struct) are so-called "implicit" tokens, and aren't matched by catch-alls like IDENTIFIER which are defined later on in the file.  Using an escaping syntax like this sidesteps the issue, because [struct] never appears in the grammar.
If you wanted to allow non-escaped keywords, we'd need to pull literals into explicit tokens, like STRUCT : 'struct';, use those everywhere in the grammar, and then make identifier into a parse rule ident : STRUCT | ENUM | ... | IDENTIFIER.  It would be a lot of work, but doable.
Not sure how much of that makes sense; if it doesn't, let me know!

@hzsweers Do you still have use-cases for any of these?  I'll close this if not.

I think it's safe to close for now, being strict is probably a better thing to do


[Feature] Add support of Qwen API

Thanks for your contribution and we appreciate it a lot. The following instructions would make your pull request more healthy and more easily get feedback. If you do not understand some items, don't worry, just make the pull request and seek help from maintainers.
Motivation
Add support of Qwen API
Modification
Add support of Qwen API
BC-breaking (Optional)
No
Use cases (Optional)
If this PR introduces a new feature, it is better to list some use cases here and update the documentation.
see configs/api_examples/eval_api_qwen.py
Checklist
Before PR:

[X] Pre-commit or other linting tools are used to fix the potential lint issues.
[ ] Bug fixes are fully covered by unit tests, the case that causes the bug should be added in the unit tests.
[ ] The modification is covered by complete unit tests. If not, please add more unit test to ensure the correctness.
[X] The documentation has been modified accordingly, like docstring or example tutorials.

After PR:

[ ] If the modification has potential influence on downstream or other related projects, this PR should be tested with those projects.
[ ] CLA has been signed and all committers have signed the CLA in this PR.

Please update the PR with pre-commit check

@tonysy done


OnMessageReceived failed, err = 70 (CON-571)

CONFIG_MAX_EXCHANGE_CONTEXTS=8
CONFIG_MAX_BINDINGS=8
CONFIG_MAX_FABRICS=5
CONFIG_MAX_PEER_NODES=16
CONFIG_MAX_UNSOLICITED_MESSAGE_HANDLERS=8

How should these parameters be set to have better performance.
My code comes up with
E (806945) chip[EM]: OnMessageReceived failed, err = 70

OnMessageReceived failed, err = 70 stands for CHIP_ERROR_UNSOLICITED_MESSAGE_NO_ORIGINATOR. It occurs when the unsolicited message i.e the message that does not match any existing exchange, is not marked as being sent by an initiator.
The message header is checked for an initiator, and if not found the message is dropped and the error above is thrown just for indicating the above stated reason.

OnMessageReceived failed, err = 70.  They are corrupted packets of some type. They don't hurt anything.
Maybe you can track down where they are coming from.
Why do you think performance is not good?  Thread is slow, but that's because it is Thread.

@shun-dgut Closing this as the analysis of the error statement is mentioned by @shripad621git . Please let us know if you see any issues around this.

This finally got fixed in CHIP.
https://github.com/project-chip/connectedhomeip/pull/29166