CORS stop working after app restart in Azure web

Maybe this is related to asp.net 5 core and not to cors middleware but I with UseCors() and [EnableCors] options used CORS is working fine only temporarily. On Azure (probably after app restart) cors policy settings disappear and I can't access service from other domain (No 'Access-Control-Allow-Origin' header is present on the requested resource).
Here is my configuration (UseCors is placed after UseMvc).
public void ConfigureServices(IServiceCollection services)
        {
            configureCors(services);
            services.AddMvc(options =>
            {
                options.Filters.Add(new ErrorFilter());
            });

        }

        private static void configureCors(IServiceCollection services)
        {
            services.AddCors();

            services.ConfigureCors(x => x.AddPolicy("allowAll", p=>p.AllowAnyOrigin().
            AllowAnyHeader().AllowAnyMethod().AllowCredentials()));
        }

        public void Configure(IApplicationBuilder app, IApplicationEnvironment env,  ILoggerFactory loggerFactory)
        {
            ConfigureOAuthTokenConsumption(app);

            app.UseMiddleware<StaticFileMiddleware>(new StaticFileOptions());
            app.UseErrorPage();

            app.UseMvc();

            app.UseCors("allowAll");

        }

[UPDATE]
Everything works fine when I removed UseCors() from the Startup.cs but kept the Attribute.
So when both options are in place we might have strange behavior when Cors works normally only in the beginning.

@kichalla can you take a look at this to see what the issue is?

@SergeyRudakov Which version of asp.net 5 are you using...beta7? also couple of things:

You need not use app.UseCors("allowAll"); middleware here as its only supposed to be used when you are not using Mvc.
You need not call services.AddCors() here as AddMvc internally already does that.

I'm using beta7. And yeah, it works fine without services.AddCors(). So now I only have Cors policy configuration and [EnableCors("allowAll")] attribute added to the base controller.
Thank you,
I think we can close this issue, just wanted to let you know that in case everything is turned on it also works but only for a while.

Thanks for confirming. Closing the issue now.


emote menu broke "twitch" emotes like rpg, pride, and the rest

Describe the bug
the emote menu shows  limited time emotes on separate lines instead of 1 line
To Reproduce

open emote menu go to sub emote menu
Expected behavior
the emotes to be all on one line
Screenshots
https://i.imgur.com/X1kmOLV.png
Chatterino version
N/A
Additional context

they also break on the web version of twitch

This is technically not a Chatterino issue, as seen in your web screenshot, these emotes just show up in their own personal emote sets for some reason 🍝
That being said I would be a nice issue to fix if somebody could 😉

As @Felanbird mentioned - this is not really a Chatterino issue. Our api over at https://github.com/Chatterino/api could combine these, but that would require someone to get all emote sets for all emote ids and combine them under each RPG/Pride sets and make a PR or issue request in the api repo


Linux port

Following from https://github.com/TheCherno/Hazel/issues/130

instead of creating a seperate PR, could you contribute this to #82? However, I think this is all already implemented there.

It looks pretty much the same sans the issues I didn't know about/run into yet (resources). What's stopping #82 from being merged into mainline? As long as it doesn't disturb the windows build it should be fine. Clearly, duplication of effort is a problem.

Currently it's just missing some filesystem solution, and cherno must mension it in his videos first. I'll close this (and #130) as duplicates of #82

OK. Sounds like a plan. I'll take a closer look at #82. Thanks.


yarn prod server on windows platform,print logs such as:

The "paths[0]" argument must be of type string. Received undefined TypeError [ERR_INVALID_ARG_TYPE]: The "paths[0]" argument must be of type string. Received undefined
at new NodeError (node:internal/errors:405:5)
at validateString (node:internal/validators:162:11)
at Object.resolve (node:path:167:9)
at viewLocalFiles (\anything-llm\server\utils\files\index.js:51:14)
at \anything-llm\server\endpoints\system.js:226:32
at Layer.handle [as handle_request] (C:\Users\86134\Desktop\workspace\anything-llm\server\node_modules\express\lib\router\layer.js:95:5)
at next (\anything-llm\server\node_modules\express\lib\router\route.js:144:13)
at validateMultiUserRequest (\anything-llm\server\utils\middleware\validatedRequest.js:85:3)
at async validatedRequest (\anything-llm\server\utils\middleware\validatedRequest.js:9:12) {
code: 'ERR_INVALID_ARG_TYPE'
}

Hi, please follow the instructions in the README here and ensure it runs properly in development before trying to run this in prod.

The root cause is you did not define STORAGE_DIR as an environment variable for prodution


Integration with Knative client as a plugin

Documentation for this can be found here: https://github.com/knative/client/tree/master/docs/plugins
For each of the sub-tasks, there will be two things to accomplish.

Implement the Plugin interface - https://github.com/knative/client/blob/fb47409837d0d201831840149565d82609bcab6b/pkg/kn/plugin/manager.go#L37-L53
Register the plugin with kn - https://github.com/knative/client/tree/master/docs/plugins#plugin-inlining

Then one file, 'plugin_register.go' is added to our distribution of kn.

@dsimansk Is there anything else to be done, which is not covered by #155 and #163?


kubectl update --patch does not work as expected

I create a service
{
  "kind": "Service",
  "id": "web",
  "apiVersion": "v1beta1",
  "namespace": "default",
  "port": 9293,
  "protocol": "TCP",
  "selector": {
    "version": "v1"
  },
  "containerPort": 9293
}

update it with
# kubectl update se web --patch='{"selector":{"version":"v2"},"apiVersion":"v1beta1"}'
# kubectl describe se web
Name:           web
Labels:         <none>
Selector:       version=v1
Port:           9293
No events.

I would expect that the selector would have been updated but it's not. This is because of mergo.Merge which says in the doc that 'Merge sets fields' values in dst from src if they have a zero value of their type.' but .selector.version did not have a zero value before the merge. Currently patch can only add missing fields to api objects. Was this the intended behavior? Patch might be more useful if it could override existing fields.There is an open PR imdario/mergo#8 that would add the ability to override fields.
Heres a failing test: https://github.com/mikedanese/kubernetes/commit/a800ae6db81934bb66c5260452e4a214bad137ec

@bgrant0607 do you know if "update only if previous zero/not set" was the intended behavior?

I've been trying to think of a workaround. We could create an empty struct of the object type and Merge source and destination in an order to get an overriding patch result but there's some more nastiness about this. Using mergo for this, we won't ever be able to set a field to a default value of that field type e.g. we can never set an int field to 0. Best way to do this might be to somehow write the patch directly onto the versioned json of the api object then decode it. That way we don't have to deal with worrying about default values after we've converted patches to structs.

Bug
cc @brendandburns

FYI there was actually one test case doing an update of a non-empty field that was passing. It looks like this is an upstream bug where mergo.Merge() does not follow the "update only if previous zero/not set" semantics with embedded struct fields. I've documented the bug here imdario/mergo#9.

I haven't looked into the full context of where we're using mergo.Merge() yet, but json unmarshalling in Go appears to do exactly what we want. If you unmarshal json into a struct that already has some values filled in, the values will be overwritten where appropriate: http://play.golang.org/p/THl1k4eNrB
Is there anything not handled properly by that example?

@a-robinson I played around with that idea when I submitted this and I got my failing tests to pass here https://github.com/mikedanese/kubernetes/commit/3f44440d9a3a6bf309c08e13d35306f53a99e9e8. I wasn't convinced that this was a final solution because it still does not allow us to update fields to default values e.g. false or 0 or "". This is because the patch went form v1beta* json -> api/types struct -> api/types json and from internal type to json, the omitempty annotation wipes out all fields with default values.

That makes sense. Any technique that passes data through one of the API structs is going to lose information about whether fields are set. Extra bookkeeping will be needed to track that.
In the meantime though, using json unmarshalling rather than mergo.Merge would at least be a simple fix for the case you brought up in the initial issue.

I can submit this as a partial fix if you think it's reasonable. If there is no objection, what I'd like to do is internalize struct merging responsibility to kubernetes, possibly pkg/util or pkg/util/merge and remove the dependency on Mergo since the embedded struct bug is very nasty and encoding/json will have much better test coverage. As far as --patch I think a satisfying final solution would be to never convert the original patch json into an internal type, and apply the patch json onto a v1beta* type. I can prepare a PR for this as well.

Yeah, we really shouldn't be converting to the internal type in the client (#3955).

It could also make sense to make this a feature of the apiserver and support HTTP PATCH Method on resources. These are relevant: RFC6902 JSON Patch and RFC7386 JSON Merge Patch.

PR imdario/mergo#8 accepted. Maybe it will be useful for you.


annotate_rsid.py naming

The naming of this isn't consistent (so we need to decide on undescore naming or not).  ncbituils -> ncbi_utils? Something like that if we're going in that direction.

Sure! Do you have a preference for naming? I've typically use just underscore naming for clarity.

So, per pep-8 (which I don't usually strictly follow, but since this is immediately being published, I have been trying) module names should be all lowercase letters and generally as short as possible.  https://www.python.org/dev/peps/pep-0008/
That rules out an "_" also, but again, I'm not that anal about it and willing to change in either direction.

Alrighty, that sounds good. We should try to stick to pep-8 as much as possible. So let's stick to naming modules all lowercase letters.


Ruby puts not showing in docker logs

I noticed when running in detached mode the docker logs do not show the puts output.
Reading this seems to be a buffering issue.
sinatra/sinatra#1118

adding $stdout.sync = true as described in the Sinatra ticket worked.
Test 1 - New repo initialized with README.md
➜  git-webhooks git:(master) ✗ docker run --rm -ti -p 4567:4567 -v $PWD/.webhook_properties:/usr/src/app/.webhook_properties
--name github-webhooks jimzucker/github-webhooks:latest
[2020-02-10 15:55:19] INFO  WEBrick 1.4.2
[2020-02-10 15:55:19] INFO  ruby 2.6.5 (2019-10-01) [x86_64-linux]
== Sinatra (v<IP_ADDRESS>) has taken the stage on 4567 for development with backup from WEBrick
[2020-02-10 15:55:19] INFO  WEBrick::HTTPServer#start: pid=1 port=4567
[INFO] Ignoring object = label, action = created
<IP_ADDRESS> - - [10/Feb/2020:15:55:46 +0000] "POST /github_webhook HTTP/1.1" 200 - 0.0037
<IP_ADDRESS> - - [10/Feb/2020:15:55:46 UTC] "POST /github_webhook HTTP/1.1" 200 0

-> /github_webhook
[INFO] Processing object= repository, action= created on repo= StrategicDevOps/docker3 by jimzucker
[INFO] Getting Authorized User:  method= Get, url= https://api.github.com/user
[INFO] Ignoring object = before, action =
<IP_ADDRESS> - - [10/Feb/2020:15:55:47 +0000] "POST /github_webhook HTTP/1.1" 200 - 0.0007
<IP_ADDRESS> - - [10/Feb/2020:15:55:47 UTC] "POST /github_webhook HTTP/1.1" 200 0
-> /github_webhook
[INFO] Ignoring object = ref_type, action =
<IP_ADDRESS> - - [10/Feb/2020:15:55:48 +0000] "POST /github_webhook HTTP/1.1" 200 - 0.0008
<IP_ADDRESS> - - [10/Feb/2020:15:55:48 UTC] "POST /github_webhook HTTP/1.1" 200 0
-> /github_webhook
[INFO] Checking existance of README.md:  method= Get, url= https://api.github.com/repos/StrategicDevOps/docker3/contents/README.md
[INFO] Defaulting Repository Settings:  method= Patch, url= https://api.github.com/repos/StrategicDevOps/docker3
[INFO] Protecting master branch:  method= Put, url= https://api.github.com/repos/StrategicDevOps/docker3/branches/master/protection
[INFO] Defaulting Repository Settings:  method= Post, url= https://api.github.com/repos/StrategicDevOps/docker3/issues
<IP_ADDRESS> - - [10/Feb/2020:15:56:18 +0000] "POST /github_webhook HTTP/1.1" 200 - 32.2684
<IP_ADDRESS> - - [10/Feb/2020:15:55:46 UTC] "POST /github_webhook HTTP/1.1" 200 383
-> /github_webhook
[INFO] Ignoring object = issue, action = opened
<IP_ADDRESS> - - [10/Feb/2020:15:56:19 +0000] "POST /github_webhook HTTP/1.1" 200 - 0.0006
<IP_ADDRESS> - - [10/Feb/2020:15:56:19 UTC] "POST /github_webhook HTTP/1.1" 200 0
-> /github_webhook
[INFO] Ignoring object = repository, action = deleted
<IP_ADDRESS> - - [10/Feb/2020:15:56:45 +0000] "POST /github_webhook HTTP/1.1" 200 - 0.0008
<IP_ADDRESS> - - [10/Feb/2020:15:56:45 UTC] "POST /github_webhook HTTP/1.1" 200 0
-> /github_webhook

Test 2 - New repo NOT initialized with README.md
[INFO] Ignoring object = label, action = created
<IP_ADDRESS> - - [10/Feb/2020:15:57:30 +0000] "POST /github_webhook HTTP/1.1" 200 - 0.0011
<IP_ADDRESS> - - [10/Feb/2020:15:57:30 UTC] "POST /github_webhook HTTP/1.1" 200 0

-> /github_webhook
[INFO] Processing object= repository, action= created on repo= StrategicDevOps/docker3 by jimzucker
[INFO] Getting Authorized User:  method= Get, url= https://api.github.com/user
[INFO] Checking existance of README.md:  method= Get, url= https://api.github.com/repos/StrategicDevOps/docker3/contents/README.md
[INFO] Creating README.md(Note:repository must be initialized for branch permissions api to work).:  method= Put, url= https://api.github.com/repos/StrategicDevOps/docker3/contents/README.md
[INFO] Defaulting Repository Settings:  method= Patch, url= https://api.github.com/repos/StrategicDevOps/docker3
[INFO] Ignoring object = before, action =
<IP_ADDRESS> - - [10/Feb/2020:15:58:03 +0000] "POST /github_webhook HTTP/1.1" 200 - 0.0006
<IP_ADDRESS> - - [10/Feb/2020:15:58:03 UTC] "POST /github_webhook HTTP/1.1" 200 0
-> /github_webhook
[INFO] Protecting master branch:  method= Put, url= https://api.github.com/repos/StrategicDevOps/docker3/branches/master/protection
[INFO] Ignoring object = ref_type, action =
<IP_ADDRESS> - - [10/Feb/2020:15:58:04 +0000] "POST /github_webhook HTTP/1.1" 200 - 0.0010
<IP_ADDRESS> - - [10/Feb/2020:15:58:04 UTC] "POST /github_webhook HTTP/1.1" 200 0
-> /github_webhook
[INFO] Defaulting Repository Settings:  method= Post, url= https://api.github.com/repos/StrategicDevOps/docker3/issues
<IP_ADDRESS> - - [10/Feb/2020:15:58:05 +0000] "POST /github_webhook HTTP/1.1" 200 - 34.9111
<IP_ADDRESS> - - [10/Feb/2020:15:57:30 UTC] "POST /github_webhook HTTP/1.1" 200 383
-> /github_webhook
[INFO] Ignoring object = issue, action = opened
<IP_ADDRESS> - - [10/Feb/2020:15:58:05 +0000] "POST /github_webhook HTTP/1.1" 200 - 0.0006
<IP_ADDRESS> - - [10/Feb/2020:15:58:05 UTC] "POST /github_webhook HTTP/1.1" 200 0
-> /github_webhook


Add an Aria Label to the nested list dropdown button.

Can you add an aria-label prop to the buttons for aria labels, particularly the dropdown triangle button on the nested list item component?
Here's the accessibility rule it's breaking -
https://github.com/GoogleChrome/accessibility-developer-tools/wiki/Audit-Rules#ax_text_01

:+1:
Would very useful for screenreader.

We are addressing aria-labels generally in the next branch, so closing this more specific request.


Rewards for block propose alignment

Describe the feature request
Poposer gets reward - 3 TTKOj for block proposed.
At the same Prover set a bond - 2.5 TTKOj for block proof.
If user runs proposer and prover at the same time and gets managed propose to be the 1st in the L1 block to be aligible for TTKOj reward, then every time when it assigns  block to prover, it even don't need to prove it, as it gets 0.5 x TTKOj profit anyway.
While it may or may not make sense on mainnet,  it is still an opportunity for gambling Testnet.
Describe alternatives you've considered
Description of the alternatives you've considered here.
Additional context
Additional context here.

This is a configuration issue and should be easily avoided. This PR makes it posssible to validate configs after the L2 has been initlaized.

Yes and we changed the A5 L1 proposing reward in each L1 block to ~1.2 TTKO around one week ago.


F&O - OData: Contains OData example format is wrong

Example for Contains OData call is defined wrong in section OData Services/Filter Details.
http://host/service/EntitySet?$filter=StringField eq '\*retail\*'
should be
http://host/service/EntitySet?$filter=StringField eq '*retail*'
The asterisk character shouldn't be escaped in the query string.

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

ID: 4d7c8b45-1531-ebbf-d417-4e1fe5bf4f1b
Version Independent ID: c543a5fc-90c9-9edb-11d7-6d6d0f2c10a9
Content: Open Data Protocol (OData) - Finance & Operations | Dynamics 365
Content Source: articles/fin-ops-core/dev-itpro/data-entities/odata.md
Service: dynamics-365-cross-app
Product: ****
Technology: ****
GitHub Login: @Sunil-Garg
Microsoft Alias: sunilg

@Sunil-Garg - Can you take a look? Thanks.

Created bug 572048 to track this issue.


Is this project still maintained / working?

It's been over a year since any contributions were made, so just taking the project's pulse.

The project will always be a work in progress.
As a maintainer, I have done the best I could with searching and adding the least privileged permissions into the project.
However, This should be a crowdsources project because one maintainer cannot implement all the permutations of serverless project deployments.
I am more than happy to hear new ideas or feedback to improve the project.


How to map security to operations?

Hello,
Can you please explain in the v2.0.0 documentation how to map the security definition applicable to a specific operation? I couldn't find it..
Thanks for help

I found this specification feature request, I think it's the same issue. I close this one.


Alluxio master failed to flush journal entry

Alluxio Version:
2.8.0
Describe the bug
Last month we found an alluxio cluster had a large number of requests failed and the master prints the following log
2023-01-30 05:48:54,376 WARN  AsyncJournalWriter - Failed to flush journal entry: Timed out after waiting 30000 milliseconds for journal entries to be processed
java.io.IOException: Timed out after waiting 30000 milliseconds for journal entries to be processed
        at alluxio.master.journal.raft.RaftJournalWriter.flush(RaftJournalWriter.java:134)
        at alluxio.master.journal.AsyncJournalWriter.doFlush(AsyncJournalWriter.java:323)
        at java.base/java.lang.Thread.run(Thread.java:829)
Caused by: java.util.concurrent.TimeoutException
        at java.base/java.util.concurrent.CompletableFuture.timedGet(CompletableFuture.java:1886)
        at java.base/java.util.concurrent.CompletableFuture.get(CompletableFuture.java:2021)
        at alluxio.master.journal.raft.RaftJournalWriter.flush(RaftJournalWriter.java:123)
        ... 2 more

2023-01-30 05:48:54,392 WARN  AsyncJournalWriter - Failed to flush journal entry: Server coarserankfeaturefile-master-1_20022@group-ABB3109A44C1 is not the leader
org.apache.ratis.protocol.exceptions.NotLeaderException: Server coarserankfeaturefile-master-1_20022@group-ABB3109A44C1 is not the leader
        at org.apache.ratis.server.impl.RaftServerImpl.generateNotLeaderException(RaftServerImpl.java:644)
        at org.apache.ratis.server.impl.RaftServerImpl.checkLeaderState(RaftServerImpl.java:609)
        at org.apache.ratis.server.impl.RaftServerImpl.submitClientRequestAsync(RaftServerImpl.java:737)
        at org.apache.ratis.server.impl.RaftServerProxy.lambda$submitClientRequestAsync$9(RaftServerProxy.java:417)
        at org.apache.ratis.server.impl.RaftServerProxy.lambda$null$7(RaftServerProxy.java:412)
        at org.apache.ratis.util.JavaUtils.callAsUnchecked(JavaUtils.java:115)
        at org.apache.ratis.server.impl.RaftServerProxy.lambda$submitRequest$8(RaftServerProxy.java:412)
        at java.base/java.util.concurrent.CompletableFuture.uniComposeStage(CompletableFuture.java:1106)
        at java.base/java.util.concurrent.CompletableFuture.thenCompose(CompletableFuture.java:2235)
        at org.apache.ratis.server.impl.RaftServerProxy.submitRequest(RaftServerProxy.java:411)
        at org.apache.ratis.server.impl.RaftServerProxy.submitClientRequestAsync(RaftServerProxy.java:417)
        at alluxio.master.journal.raft.RaftJournalAppender.sendLocalRequest(RaftJournalAppender.java:94)
        at alluxio.master.journal.raft.RaftJournalAppender.sendAsync(RaftJournalAppender.java:77)
        at alluxio.master.journal.raft.RaftJournalWriter.flush(RaftJournalWriter.java:122)
        at alluxio.master.journal.AsyncJournalWriter.doFlush(AsyncJournalWriter.java:323)
        at java.base/java.lang.Thread.run(Thread.java:829)

In order to solve this problem quickly, I restart all masters but useless. Finally I clear the meta directory on all masters and reload metadata from ufs, the cluster can reponse these requests as usual.
During solve this problem, I only save the above log, so can’t provide more information
To Reproduce
This problem only happened once，I can't reproduce it
Expected behavior
A clear and concise description of what you expected to happen.
Urgency
Describe the impact and urgency of the bug.
Are you planning to fix it
Please indicate if you are already working on a PR.
Additional context
Add any other context about the problem here.

@elega for visibility

Hi thanks for reporting the issue.
I noticed this log:
org.apache.ratis.protocol.exceptions.NotLeaderException: Server coarserankfeaturefile-master-1_20022@group-ABB3109A44C1 is not the leader
Seems like the cluster failover happened before you encountered the issue. When a failover happens, the previous primary master would lost its primacy and a new primary master will be elected. The previous primary master will not be allowed to flush new journals as it has converted to a standby master.
The reason of failover can be various. For example, if a network partition happened between the primary master and two standby masters, a failover can happen. If primary master is dead, a failover can happen. If primary master is overloaded by excessive requests and fails to respond RAFT heartbeat, a failover can also happen. It's hard to tell based on the information you provided.
 These clients will disconnect and retry. Once a new primary master is elected, the clients should connect to the new primary master instead and start getting success responses. So probably you just need to be a bit more patient and wait for a longer while. The failover process is not as fast as you thought. Workers need to register to the new master to report it block location and based on your cluster size, this process might take you up to 10-20 minutes.
The reason why you was still not able to use your cluster normally after you restart is probably also because it takes time for the alluxio masters to

apply the previous journals
wait for the worker registration.
The cluster will not be in service until these are done.

If possible, i recommend you do some failover drill on staging clusters. You can just kill the primary master and observe how the cluster recovers from a primary master failure.
Thanks a lot!

@Yang9613, please reopen this issue if you reencounter this bug, will close it since it's hard to reproduce


Add xml definition for service area cluster

Fixes https://github.com/project-chip/connectedhomeip/issues/33363.
This is the draft PR intended to facilitate development. It should not be merged.

Closing as this PR was moved to CHIP.


⚠ Auth has degraded performance

In 2d935bc, Auth (https://auth.k2lin.com) experienced degraded performance:

HTTP code: 200
Response time: 13435 ms

Resolved: Auth performance has improved in f119fe5.


DOC-4269 - Deleted duplicate copy of platform-support-matrix.md

There's two versions of the file platform-support-matrix.md, almost identical but out of sync:
"C:\Repos\corda-docs-portal\content\en\platform\corda\4.9\enterprise\platform-support-matrix.md"
"C:\Repos\corda-docs-portal\content\en\platform\corda\4.9\enterprise\node\deploy\platform-support-matrix.md"
The first one is the most recently updated and contains updates to more recent version numbers I'm guessing it's the correct one so I'm going to remove "C:\Repos\corda-docs-portal\content\en\platform\corda\4.9\enterprise\platform-support-matrix.md" and its equivalent from 4.9, 4.10 and previous versions.

Closing this as my description was wrong and it's the wrong file - doing the PR again.


Swagger Spec -> Moya Target Generator

I may end up doing this in anger, so I'm dropping a note here in case anyone else is interested. Probably a separate project? It uses mustache templates so how hard can it be?!

This would be super awesome! I have thought about doing it myself, but never took a look at it.
The problem I see, is with JSON (de)serialization, because Swift does not have a good reflection system (as of 1.2 at least) to support a reflection library, so all must be done manually. If the generator takes care of that too, would be great. :)

https://github.com/lkuczborski/SwiftMoyaCodeGenerator from @lkuczborski does some of this

and for people who care about Swagger: https://github.com/luckymarmot/Paw-SwaggerImporter

Thanks for the mention @orta! :) I am planning to update the generator soon with new features, including sample data generation and header values parsing.
@orta It would be great if you could quickly test/have a look at the extension and let me know what fundamentals are still missing there before I could launch it officially on Paw Extensions page.

Delegating that responsibility to  @ashfurrow :u5408:

@lkuczborski I can take a look, want to point me to a PR or something?

No PR currently, but you can take a look at what is currently in master.

Will try to take a look tomorrow and let you know :+1:

Great, thanks! 🙌

@lkuczborski Hey there! Apologies for the delay – I've taken a look and it all seems :100: to me. Note: I am not an Paw extension expert :grimacing: But from a Moya perspective it all looks :+1:

Awesome, thanks! 😃

Is there any more discussion/movement here or should we close this?

Since there hasn't been any activity on this thread for some time, I am going to go ahead and close it. Please re-open or create a new issue if you would like to discuss further. Thanks.

Hey guys, I just created a Moya Generator from Swagger Spec by using SwagGen. At the beginning, I was successful create it by using original Swagger Codegen but it has many limitations and hard to modify.
Luckily @yonaskolb created another Codegen written in Swift, more flexible and simple. I am very happy it now. kudos for him.
You can get the template here: https://github.com/dangthaison91/SwagGen/tree/master/Templates/Swift-Moya
It supports upload file, all parameter types.
But It also has some issues: not support multi-authentication method, the Model generator is not perfect with Realm.


dkim issue after last update

I'm using latest docker image, dkim sign worked fine for last 6-7 months, but with latest docker image (recreated) it stopped working.
I did dry to use previus versions, but no luck. Still same issue (docker logs):

xxx-postfix-1  | DNS records:
xxx-postfix-1  | vps._domainkey	IN	TXT	( "v=DKIM1; h=sha256; k=rsa; p=xxx" )
xxx-postfix-1  | Starting OpenDKIM: opendkim.
xxx-postfix-1  | Starting Postfix Mail Transport Agent: postfix.
xxx-postfix-1  | 2023-09-01T16:49:24.562639+00:00 55c29361f16a rsyslogd:  [origin software="rsyslogd" swVersion="8.1901.0" x-pid="147" x-info="https://www.rsyslog.com"] start
xxx-postfix-1  | 2023-09-01T16:49:24.563632+00:00 55c29361f16a postfix/master[145]: daemon started -- version 3.4.23, configuration /etc/postfix
xxx-postfix-1  | 2023-09-01T16:49:32.484746+00:00 55c29361f16a postfix/smtpd[152]: connect from xxx_default[<IP_ADDRESS>]
xxx-postfix-1  | 2023-09-01T16:49:32.495255+00:00 55c29361f16a postfix/smtpd[152]: 78E23E0137: client=xxx-1.xxx[<IP_ADDRESS>]
xxx-postfix-1  | 2023-09-01T16:49:32.496170+00:00 55c29361f16a postfix/cleanup[155]: 78E23E0137<EMAIL_ADDRESS>xxx-postfix-1  | 2023-09-01T16:49:32.537913+00:00 55c29361f16a opendkim[33]: vps._domainkey.xxx: key data is not secure: /etc/opendkim/keys/xxx/vps.private
xxx-postfix-1  | 2023-09-01T16:49:32.537923+00:00 55c29361f16a opendkim[33]: 78E23E0137: error loading key 'vps._domainkey.xxx'
xxx-postfix-1  | 2023-09-01T16:49:32.537963+00:00 55c29361f16a postfix/cleanup[155]: 78E23E0137: milter-reject: END-OF-MESSAGE from xxx-1.xxx[<IP_ADDRESS>]: 4.7.1 Service unavailable - try again later; from=develop@xxx <EMAIL_ADDRESS>proto=ESMTP helo=<dev.xxx>
xxx-postfix-1  | 2023-09-01T16:49:32.600292+00:00 55c29361f16a postfix/smtpd[152]: disconnect from xxx-1.xxx[<IP_ADDRESS>] ehlo=1 mail=1 rcpt=1 data=0/1 quit=1 commands=4/5

File permissions:

-rw------- 1 opendkim opendkim 1704 Aug 29 10:49 vps.private`
-rwx--x--- 1 opendkim opendkim  449 Aug 29 10:49 vps.txt

I did try to change to only u+rw to vps.txt (but no change).
I tried to generate new keys and same issue.
What could cause this?

I have added

OPENDKIM_RequireSafeKeys=no

and it works again. But this does not feel good

Hey, that is strange. The permissions look more restricted than the ones set by default after generating new keys https://github.com/wader/postfix-relay/blob/master/run#L29-L31
Any idea if postfix has done any change to what is concerned secure etc? i would probably read postfix doc or code to see what the requirement is.
Looking at https://github.com/wader/postfix-relay/issues/14 which was a similar issue i get a feeling there might be some volume permission magic/weirdness going on between different docker versions or configurations.

Docker version 23.0.3, build 3e7cbfd
Host: Debian 11 (bullseye)
And I'm using docker volume and not host mounting. So it should not have any issue with that. :/

Ok thanks, yes then it feels even weirder. I would probably exec into a container play around with the permissions and strace a bit and see if you would get any wiser. Is is actually read/stating the files your expecting etc


add support for .aia files

add support for .aia for app inventor http://appinventor.mit.edu/explore/ such as in this repo : https://github.com/dotcomboom/AIA

Please have a look at the guidelines to add support for a new language to Linguist. It .aia files meets the requirement on in-the-wild usage, we'd welcome a pull request!

only detect file ^^_ no need grammar

only detect file ^^_ no need grammar

That file is never going to be recognised as a language as it's a zip file and all binary files are expressly not analysed by Linguist...
https://github.com/github/linguist/blob/8cd9d744caa7bd3920c0cb8f9ca494ce7d8dc206/lib/linguist.rb#L19-L21

I've taken another look at those files and it would be more apt for linguist to recognise the language(s) of the files in the src directory, if it doesn't already, but those files would need to be committed a repo, not the .aia files.

ok thought it recognised by file extention
Abdur-Rahmaan Janhangeer
https://github.com/Abdur-rahmaanJ
On Tue, 25 Sep 2018, 21:19 Colin Seymour<EMAIL_ADDRESS>wrote:

only detect file ^^_ no need grammar
That file is never going to be recognised as a language as it's a zip
file and all binary files are expressly not analysed by Linguist...
https://github.com/github/linguist/blob/8cd9d744caa7bd3920c0cb8f9ca494ce7d8dc206/lib/linguist.rb#L19-L21
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/github/linguist/issues/4275#issuecomment-424426990,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AVlRHFRVF-qtZ_D7RMmcYsVS2FD7wxjrks5uemWDgaJpZM4W48e-
.


Add ft/back-to-top

Repo URL:
https://github.com/...
Checklist:

[ ] The plugin is specifically built for Neovim, or if it's a colorscheme, it supports treesitter syntax.
[ ] The lines end with a .. This is to conform to awesome-list linting and requirements.
[ ] The title of the pull request is Add/Update/Remove `username/repo`  (notice the backticks around `username/repo`) when adding a new plugin.
[x] The description doesn't mention that it's a Neovim plugin, it's obvious from the rest of the document. No mentions of the word plugin unless it's related to something else. No .. for Neovim.
[x] The description doesn't contain emojis.
[x] Neovim is spelled as Neovim (not nvim, NeoVim or neovim), Vim is spelled as Vim (capitalized), Lua is spelled as Lua (capitalized), Tree-sitter is spelled as Tree-sitter.
[x] Acronyms should be fully capitalized, for example LSP, TS, YAML, etc.

Thanks for the PR, unfortunately this fails the official awesome linter.
Maybe this helps?
<!--lint disable remark-link:double-lint-->
**[⬆ back to top](#contents)**
<!--lint enable remark-link:double-lint-->

Thanks for the PR, unfortunately this fails the official awesome linter.
Maybe this helps?
<!--lint disable remark-lint:double-link -->
**[⬆ back to top](#contents)**
<!--lint enable remark-lint:double-link -->

Thanks for the solution. I have applied this at inline according to the linter documentation. But still same error occurs.


Track user code context

ProblemDiagnostics exposes the source of the user code which triggered the problem. The source is provided by the UserCodeApplicationContext
This makes the current executing plugin accessible to the DeprecationLogger

@bot-gardle test this

@bot-gradle test this

I've triggered the following builds for you. Click here to see all build failures.

PullRequestFeedback build

@bot-gradle test and merge

I've triggered a build for you. Click here to see all failures if there's any.


[Question] Discrepancy Between Dashboard and Website Version Updates

Hi
Are you sure the update has been released? My dashboard shows "Latest Version 2024.11.6, 1 worker ready for updates." However, your website lists version 2024.11.5, and there's no update available. I tried updating via compose.

Hi! Oh, sorry, the last build failed :( Restart, now it should be 2024.11.6 if you fetch the latest version! :crossed_fingers:
Thank you for the issue!


Error objects instead of strings

I've noticed strings are used as the first argument in the callback functions, instead of error objects. I don't mind making a pull request if it's likely to be merged. Any arguments against it?

Please send the PR, thanks!


Anti-spam solution

I'd like to start a discussion about anti-spam - because we love it so much :)
But seriously, we're wanting to put in the best anti-spam solutions around. Feel free to add your suggestions - be they methods to implement, or even third-party solutions.
We're looking at integrating with craft.spamguard, Snaptcha and Invisible Captcha. We may also incorporate some of these methods directly into the plugin.
Discuss!

@engram-design Do you plan on integrating any type of flagging along with anti-spam measures?
Spam Guard has the ability to log all submissions to minimize the risk of false/positives but this seems like a feature that core can provide if at all desired.
There are two battles to fight, one against robots (direct submissions, headless browsers, etc) and the other against human spam.
Robot spam can be reduced by doing a few things...

Adding a honeypot field (not very effective on it's own)
Making sure javascript is required
Timing form rendering and form submission
Running some sort of user agent and IP validation

I see this as something that core could provide as its basic anti-spam measure or use Invisible Captcha since it is open source. Snaptcha as pointed out, is another solid option for fighting robot spam.
Human spam on the other hand is a little more advanced, in this cases the options are to...

Have a review/approval process (can get tedious)
Use a third party service like Akismet

This is something that Spam Guard could provide and bake into core eventually if it makes sense.
These comments are largely based on personal experience and observations, I'm not a Spam expert by any means.

Awesome comments Selvin! I've already got some basic flagging functionality in the plugin, which is a good start. This allows users to flag inappropriate content, and if the flag limit is set low enough, it can easily be hidden quickly. You can also choose to moderate all comments before being publicly available.
I would be really interested in integrating Invisible Captcha, or a similar setup. This will likely be something built-in though, as I don't want to rely on other plugins for these sort of simple methods.
Then, as an option, I'd integrate Akismet (through Spam Guard) as more of an add-on option.
Again - great summary!

Closed for now. Most of the functionality from Invisible Captcha is built-in. Will discuss Spam Guard integration with @selvinortiz for pre-1.0 release.


order_by in JS client

This PR adds a missing feature to the JS client. Now we can specify ordering for query response from the JS library.
Note that ordering is neither restored nor verified by the client itself. A server may choose to ignore it completely, or, as is the case with Firebase, the ordering may be lost when transporting data from server to client.
Since the limit parameter requires presence of order_by, this feature is vital for users who may want to use limit, even if strict ordering is not supported.

@armiol, PTAL.


doc/hacking.md doesn't contain information on how to install Gemfile dependencies

doc/hacking.md doesn't contain information on how to install the dependencies in the Gemfile, such as those required to run the tests (the invocation of which is documented). Did I miss documentation for this elsewhere?
Including this information would be really helpful for new contributors who have never worked with Ruby projects before and have no idea how to pull in dependencies.

Hi,
sorry for being negative here, but I'm :-1: on this.
Any Ruby dev, even beginner IMO needs to know Bundler and if (s)he doesn't, it's literally 1 Google search away.
Can you give an example of any popular Ruby project that is giving some more hints in its own docs?

In fact, after re-reading the docs, we may fit in something very brief as it's not mentioned there at all...
https://github.com/caskroom/homebrew-cask/blob/master/doc/hacking.md#setup
It's sometimes hard to find the balance between duplicating docs from elsewhere (and cluttering our own docs) and being actually useful, which is my concern.

I give Jekyll's approach a :+1:: http://jekyllrb.com/docs/contributing/#test-dependencies
I'm not a Ruby developer at all. Searching online for gemfile will indeed point you to bundler. But, I had no idea that the gemfile had anything to do with installing dependencies, so I did not think to search using that term. From years of just cursory looks at Ruby project structures, I had at some point made the assumption that gemfiles were just manifests for this project as a gem.
Say we had an example such as this:
$ bundle # Install dependencies
$ rake test

This clearly gives the command you have to run, and also a search term to find and install it. Searching online for bundle command or bundle ruby take you straight to bundler.
With this project in particular, I think it's important to remember that not everyone contributing is a Ruby developer or is interested in becoming one. Someone who only wants to maintain a Cask should not have to care about Ruby much beyond the Cask DSL itself. :-)

Someone who only wants to maintain a Cask should not have to care about Ruby much beyond the Cask DSL itself.

Don't you only need Bundler to install test tools for testing the core? I believe you should not need it when only maintaining casks - am I wrong?
Agreed with all other points though. I like Jekyll's approach, sending a PR to docs will be much appreciated. :wink:

@radeksimko It's also useful for running rake rubocop to check for style errors before submitting a PR.


check whether decocare-0.0.31 has been installed

and only easy_install it if not

Tested successfully and ready to merge if no objections.

If no objections, I'd like to merge this to dev for testing for a 0.5.3 release before we start merging new features (like exponential curves) for an eventual 0.6.0 release.


BitmapText  tint error

https://github.com/pixijs/pixi.js/blob/dev/packages/text-bitmap/src/BitmapText.ts
style.tint does not affect _tint, so it is invalid to set the color during construction, they should use the same variable to control the color

Right, this is confusing! Good pointing this out. My suggestion is that style.tint should set _tint in the constructor. While we are at it, would be nice to allow setting style like letterSpacing, maxWidth to the style object. This mix of font properties and style properties is super unclear.
Anyone want to work on a clean-up for this?


[Event Request] Report 7304 "Get Outbound Source Documents" – New Event “OnBeforeWhsePickRequestOnPreDataItem”

Could we please have a new publisher “OnBeforeWhsePickRequestOnPreDataItem” in the new trigger “OnPreDataItem” (DataItem “Whse. Pick Request”), Report "Get Outbound Source Documents”?
*** start new code ***
            trigger OnPreDataItem()
            begin
                OnBeforeWhsePickRequestOnPreDataItem("Whse. Pick Request");
            end;
*** stop new code ***
…
*** start new code ***
    [IntegrationEvent(false, false)]
    local procedure OnBeforeWhsePickRequestOnPreDataItem(var WhsePickRequest: record "Whse. Pick Request")
    begin
    end;
*** stop new code ***

Thanks for reporting this. We agree, and we’ll publish a fix asap, either in an update for the current version or in the next major release. We will update this issue with information about availability.


Epic template.

I created an epic template using github's legacy issue template method. Admins can create issue templates with more features in the repo's settings tab.
Template google doc.

Oh interesting, I haven't seen the new fancy templates system. I've only used the markdown based stuff. Are there other features that would be useful to integrate?


chore: test Restify 8 in the install tests

Fixes #319

@DominicKramer is this ready to go?

I was just waiting for the tests to re-run after doing a rebase.  I've merged it.


Importing grpc._interceptor before mprofile causes SIGABRT with free(): invalid pointer

What version of gRPC and what language are you using?
1.28.1 on Python 3.7.5
What operating system (Linux, Windows,...) and version?
Linux, Ubuntu 18.04
What runtime / compiler are you using (e.g. python version or version of gcc)
N/A , due to the use of wheels, I think, please correct me if I'm wrong here.
What did you do?
$ python3.7 -m venv /tmp/mprofile-repro
$ source /tmp/mprofile-repro/bin/activate
$ python --version
Python 3.7.5

$ pip install --upgrade pip
Cache entry deserialization failed, entry ignored
Collecting pip
  Using cached https://files.pythonhosted.org/packages/54/2e/df11ea7e23e7e761d484ed3740285a34e38548cf2bad2bed3dd5768ec8b9/pip-20.1-py2.py3-none-any.whl
Installing collected packages: pip
  Found existing installation: pip 9.0.1
    Uninstalling pip-9.0.1:
      Successfully uninstalled pip-9.0.1
Successfully installed pip-20.1

$ pip install grpcio==1.28.1
Collecting grpcio==1.28.1
  Using cached grpcio-1.28.1-cp37-cp37m-manylinux2010_x86_64.whl (2.8 MB)
Collecting six>=1.5.2
  Using cached six-1.14.0-py2.py3-none-any.whl (10 kB)
Installing collected packages: six, grpcio
Successfully installed grpcio-1.28.1 six-1.14.0

$ pip install mprofile==0.0.10
Collecting mprofile==0.0.10
  Using cached mprofile-0.0.10-cp37-cp37m-manylinux2010_x86_64.whl (555 kB)
Installing collected packages: mprofile
Successfully installed mprofile-0.0.10

$ cat <<EOF > /tmp/mprofile-repro.py
import grpc._interceptor
import mprofile
EOF

$ python /tmp/mprofile-repro.py
free(): invalid pointer
Aborted

$ cat <<EOF > /tmp/mprofile-no-repro.py
import mprofile
import grpc._interceptor
EOF

$ python /tmp/mprofile-no-repro.py # success

What did you expect to see?
I expected to not see SIGABRT . This is what happens when mprofile is imported before grpc._interceptor.
What did you see instead?
SIGABRT with free(): invalid pointer.
Anything else we should know about your project / environment?
A colleague on Mac OS can not reproduce this. Will try to post additional info about their setup later. Updated: Catalina 10.15.4 , python 3.7.6 from NixOS. Note that same NixOS setup on Linux, Ubuntu 18.04, also with python 3.7.6 fails, so python minor version is likely irrelevant here.

@evgenii-petrov-arrival Thank you for reporting this issue. Do you think you can help us further analysis this issue? 1) Can you check if the problem exist with v1.29.0? 2) Can you use gdb (any debugger) to trace what caused the failure?

Do you think you can help us further analysis this issue?
I'd be happy to.

Can you check if the problem exist with v1.29.0?

Checked, it does.

Can you use gdb (any debugger) to trace what caused the failure?

I've posted a log of running backtrace in gdb -ex r --args python /tmp/mprofile-repro.py to this gist.
Note that I can not reproduce this using python3.7-dbg on Ubuntu 18.04, but I'm not sure if mprofile or grpcio can be used with this build, due to Third party extensions need a separate build to be used by this interpreter. warning on the python3.7-dbg package.
I'd appreciate some guidance on what specific things in gdb to do, or which python builds to use.

Thanks for the tracing log. It shows that the SIGABRT was sent by mprofiler package. I can't yet find which pointer caused the "free(): invalid pointer" error. Normal gdb doesn't directly display Python frame information, you can use follow DebuggingWithGdb to setup gdb with Python debugging extensions. Can you try to find the culprit pointer?

you can use follow DebuggingWithGdb to setup gdb with Python debugging extensions

DebuggingWithGdb you've linked suggests using python-dbg package on Ubuntu, and I can't reproduce this issue with python from that package.
I'll try and see if I can reproduce this with a non-debug/debug builds created by pyenv and will report back with what I find.
In case that fails, any additional suggestions on how to move forward would be welcome.

I've got pyenv working with following results:
pyenv install 3.7.5 produces a build of python that has the same issue.
pyenv install --debug 3.7.5 produces a build of python that does not have the same issue. Same build but with gcc flag -O3, instead of the usual -O0 for the debug build also doesn't have this issue.
I tried producing debug symbols for the mprofile package, and ended up discovering that local build of mprofile, instead of the one uploaded to pypi, with no modifications, doesn't produce this error.
I no longer think that there is much point in trying to figure out why import ordering causes this invalid free, so I'm going to close this issue.


[BUG]: code:-1001, domain:NSURLErrorDomain, target:319

Version
5.1.1, 6.0.0
What platforms are you having the problem on?
iOS, Android
System Version
ios16.1
On what device are you experiencing the issue?
Real device
Architecture
Old architecture
What happened?
点开展示video的view,播放正常，然后关闭销毁view，再次点开播放，连续超过3次后报错，code:-1001, domain:NSURLErrorDomain, target:319
Reproduction Link
repository link
Reproduction
点开展示video的view,播放正常，然后关闭销毁view，再次点开播放，连续超过3次后报错，code:-1001, domain:NSURLErrorDomain, target:319

Please reopen in English...


Update Docker Compose for Balena

Codecov Report

Merging #21 (2dff34b) into main (63f1723) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main      #21   +/-   ##
=======================================
  Coverage   55.42%   55.42%
=======================================
  Files          39       39
  Lines         415      415
  Branches       57       57
=======================================
  Hits          230      230
  Misses        170      170
  Partials       15       15

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 63f1723...2dff34b. Read the comment docs.


npm install dpd-dashboard needs a package.json.

Deployd doesn't create a package.json during dpd install.
But
npm install dpd-dashboard needs a package.json.
npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\Downloads\dpd1.0test\package.json'
npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\Downloads\dpd1.0test\node_modules\dpd-old-dashboard\package.json'
npm WARN dpd1.0test No description
npm WARN dpd1.0test No repository field.
npm WARN dpd1.0test No README data
npm WARN dpd1.0test No license field.
npm ERR! Windows_NT 10.0.15063
npm ERR! argv "C:\Program Files\nodejs\node.exe" "C:\Program Files\nodejs\node_modules\npm\bin\npm-cli.js" "install" "dpd-dashboard"
npm ERR! node v6.11.3
npm ERR! npm  v3.10.10
npm ERR! path C:\Users\Downloads\dpd1.0test\node_modules\dpd-dashboard
npm ERR! code ENOENT
npm ERR! errno -4058
npm ERR! syscall access
npm ERR! enoent ENOENT: no such file or directory, access 'C:\Users\Downloads\dpd1.0test\node_modules\dpd-dashboard'
npm ERR! enoent ENOENT: no such file or directory, access 'C:\Users\Downloads\dpd1.0test\node_modules\dpd-dashboard'
npm ERR! enoent This is most likely not a problem with npm itself
npm ERR! enoent and is related to npm not being able to find a file.
npm ERR! enoent
npm ERR! Please include the following file with any support request:
npm ERR!     C:\Users\Downloads\dpd1.0test\npm-debug.log

Probably deployd-cli should create a package.json.
In the mean time, you can run npm init in the folder.

Reopen this issue in the deployd-cli repository.

Hi, @andreialecu  The question is why is this module needs a package.json ? The previous version didn't needed it. So I was able to run dashboard and  create resources . This new version is breaking and making the install sequence  complex.

As I said, if I don't use 'dpd create' (which is working fine . creates a package.json'.). But dpd-dashboard - previous version didn't depend on 'package.json'. The new version also shouldn't.


update version numbers for 2018 2 0

remove until limit though may be an idea not to version jar so it gets replaced when updated instead of the maybe manual deletion it will require now due to the limit removed.
If you prefer to do that let me know. This way you might night get annoyed again until a shift to Scala 2.13

Yeah I had the until version removed once but then an updated caused the integration to throw big fat exceptions which - at that point I thought - would be worse than a delayed update. But agreed, from the maintenance perspectives and to avoid you guys depending on my mood and free time this might be the better way :). Thanks for your input, time and for using this plugin!

release will follow. Hope it wont take too long :)


Use ArrowScan.to_table to replace project_table

PR #1119

Use ArrowScan.to_table to replace project_table in these files:

pyiceberg\table_init_.py
pyiceberg\io\pyarrow.py
pyiceberg\test_pyarrow.py

Hi @JE-Chen thank you for putting together this PR! It looks like these were missed in the initial refactoring. Running the CI now.

Hi @sungwy I have already fixed the problem that ruff found.

make test log:

======================================================================================== warnings summary ========================================================================================
tests/catalog/test_base.py: 17 warnings
tests/catalog/test_dynamodb.py: 22 warnings
tests/catalog/test_glue.py: 29 warnings
tests/catalog/test_hive.py: 12 warnings
tests/catalog/test_rest.py: 18 warnings
tests/catalog/test_sql.py: 499 warnings
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:51: DeprecationWarning: Deprecated in 0.8.0, will be removed in 0.9.0. Table.identifier property is deprecated. Pase use Table.name() function instead.
    _deprecation_warning(message)

tests/catalog/test_base.py: 5 warnings
tests/catalog/test_dynamodb.py: 5 warnings
tests/catalog/test_glue.py: 13 warnings
tests/catalog/test_hive.py: 8 warnings
tests/catalog/test_rest.py: 4 warnings
tests/catalog/test_sql.py: 690 warnings
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:51: DeprecationWarning: Deprecated in 0.8.0, will be removed in 0.9.0. Support for parsing catalog level identifi in Catalog identifiers is deprecated. Please refer to the table using only its namespace and its table name.
    _deprecation_warning(message)

tests/catalog/test_dynamodb.py::test_passing_provided_profile
tests/catalog/test_dynamodb.py::test_passing_glue_session_properties
tests/catalog/test_dynamodb.py::test_passing_unified_session_properties_to_dynamodb
tests/catalog/test_glue.py::test_passing_profile_name
tests/catalog/test_glue.py::test_passing_glue_session_properties
tests/catalog/test_glue.py::test_passing_unified_session_properties_to_glue
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:51: DeprecationWarning: Deprecated in 0.7.0, will be removed in 0.8.0. The property aws_access_key_id is deprecat. Please use properties that start with client., glue., and dynamo. instead
    _deprecation_warning(message)

tests/catalog/test_dynamodb.py::test_passing_provided_profile
tests/catalog/test_dynamodb.py::test_passing_glue_session_properties
tests/catalog/test_dynamodb.py::test_passing_unified_session_properties_to_dynamodb
tests/catalog/test_glue.py::test_passing_profile_name
tests/catalog/test_glue.py::test_passing_glue_session_properties
tests/catalog/test_glue.py::test_passing_unified_session_properties_to_glue
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:51: DeprecationWarning: Deprecated in 0.7.0, will be removed in 0.8.0. The property region_name is deprecated. Plse use properties that start with client., glue., and dynamo. instead
    _deprecation_warning(message)

tests/catalog/test_dynamodb.py::test_passing_provided_profile
tests/catalog/test_dynamodb.py::test_passing_glue_session_properties
tests/catalog/test_dynamodb.py::test_passing_unified_session_properties_to_dynamodb
tests/catalog/test_glue.py::test_passing_profile_name
tests/catalog/test_glue.py::test_passing_glue_session_properties
tests/catalog/test_glue.py::test_passing_unified_session_properties_to_glue
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:51: DeprecationWarning: Deprecated in 0.7.0, will be removed in 0.8.0. The property aws_secret_access_key is deprated. Please use properties that start with client., glue., and dynamo. instead
    _deprecation_warning(message)

tests/catalog/test_dynamodb.py::test_passing_provided_profile
tests/catalog/test_dynamodb.py::test_passing_glue_session_properties
tests/catalog/test_dynamodb.py::test_passing_unified_session_properties_to_dynamodb
tests/catalog/test_glue.py::test_passing_profile_name
tests/catalog/test_glue.py::test_passing_glue_session_properties
tests/catalog/test_glue.py::test_passing_unified_session_properties_to_glue
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:51: DeprecationWarning: Deprecated in 0.7.0, will be removed in 0.8.0. The property aws_session_token is deprecat. Please use properties that start with client., glue., and dynamo. instead
    _deprecation_warning(message)

tests/catalog/test_dynamodb.py::test_passing_glue_session_properties
tests/catalog/test_dynamodb.py::test_passing_unified_session_properties_to_dynamodb
tests/catalog/test_glue.py::test_passing_profile_name
tests/catalog/test_glue.py::test_passing_glue_session_properties
tests/catalog/test_glue.py::test_passing_unified_session_properties_to_glue
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:51: DeprecationWarning: Deprecated in 0.7.0, will be removed in 0.8.0. The property profile_name is deprecated. Pase use properties that start with client., glue., and dynamo. instead
    _deprecation_warning(message)

tests/catalog/test_rest.py: 10 warnings
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:51: DeprecationWarning: Deprecated in 0.8.0, will be removed in 1.0.0. Iceberg REST client is missing the OAuth2 rver URI configuration and defaults to https://iceberg-test-catalog/oauth/tokens. This automatic fallback will be removed in a future Iceberg release.It is recommended to configure the OAuth2 endpoint using the 'oauth2-server-uri'property to be prepared. This warning will disappear if the OAuth2endpoint is explicitly configured. See https://github.com/apache/iceberg/issues/10537
    _deprecation_warning(message)

tests/catalog/test_rest.py::test_drop_view_invalid_namespace
tests/catalog/test_rest.py::test_drop_view_404
tests/catalog/test_rest.py::test_drop_view_204
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:35: DeprecationWarning: Call to identifier_to_tuple_without_catalog, deprecated in 0.8.0, will be removed in 0.9. Support for parsing catalog level identifier in Catalog identifiers is deprecated. Please refer to the table using only its namespace and its table name..
    _deprecation_warning(message)

tests/catalog/test_sql.py: 6 warnings
tests/io/test_pyarrow.py: 23 warnings
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:35: DeprecationWarning: Call to project_table, deprecated in 0.8.0, will be removed in 0.9.0. project_table is deecated. Use ArrowScan.to_table instead..
    _deprecation_warning(message)

tests/expressions/test_parser.py::test_is_null
tests/expressions/test_parser.py::test_is_null
tests/expressions/test_parser.py::test_is_null
tests/expressions/test_parser.py::test_is_null
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:51: DeprecationWarning: Deprecated in 0.8.0, will be removed in 0.9.0. Parsing expressions with table name is deprecated. Only provide field names in the row_filter.
    _deprecation_warning(message)

tests/table/test_name_mapping.py::test_mapping_lookup_by_name
tests/table/test_name_mapping.py::test_mapping_lookup_by_name
tests/table/test_name_mapping.py::test_mapping_lookup_by_name
tests/table/test_name_mapping.py::test_mapping_lookup_by_name
tests/table/test_name_mapping.py::test_mapping_lookup_by_name
  /home/jeffrey/desktop/GItHub_Project/iceberg-python/pyiceberg/utils/deprecated.py:35: DeprecationWarning: Call to find, deprecated in 0.8.0, will be removed in 0.9.0. Please use `apply_name_mappi` instead.
    _deprecation_warning(message)

-- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html
====================================================================== 2791 passed, 849 deselected, 1402 warnings in 39.29s ======================================================================

make test-integration have so many error, any ideas?

$ make test-integration
docker compose -f dev/docker-compose-integration.yml kill
WARN[0000] /home/jeffrey/Desktop/GItHub_Project/iceberg-python/dev/docker-compose-integration.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Killing 5/5
 ✔ Container pyiceberg-minio  Killed                                                                                0.3s
 ✔ Container pyiceberg-mc     Killed                                                                                0.1s
 ✔ Container pyiceberg-rest   Killed                                                                                0.2s
 ✔ Container hive             Killed                                                                                0.2s
 ✔ Container pyiceberg-spark  Killed                                                                                0.3s
docker compose -f dev/docker-compose-integration.yml rm -f
WARN[0000] /home/jeffrey/Desktop/GItHub_Project/iceberg-python/dev/docker-compose-integration.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
Going to remove pyiceberg-spark, pyiceberg-mc, pyiceberg-rest, hive, pyiceberg-minio
[+] Removing 5/0
 ✔ Container pyiceberg-minio  Removed                                                                                0.0s
 ✔ Container pyiceberg-spark  Removed                                                                                0.0s
 ✔ Container pyiceberg-rest   Removed                                                                                0.0s
 ✔ Container pyiceberg-mc     Removed                                                                                0.0s
 ✔ Container hive             Removed                                                                                0.0s
docker compose -f dev/docker-compose-integration.yml up -d
WARN[0000] /home/jeffrey/Desktop/GItHub_Project/iceberg-python/dev/docker-compose-integration.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Running 5/5
 ✔ Container pyiceberg-minio  Started                                                                                0.5s
 ✔ Container hive             Started                                                                                0.4s
 ✔ Container pyiceberg-rest   Started                                                                                0.7s
 ✔ Container pyiceberg-mc     Started                                                                                0.9s
 ✔ Container pyiceberg-spark  Started                                                                                1.0s
sleep 10
docker compose -f dev/docker-compose-integration.yml cp ./dev/provision.py spark-iceberg:/opt/spark/provision.py
WARN[0000] /home/jeffrey/Desktop/GItHub_Project/iceberg-python/dev/docker-compose-integration.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
[+] Copying 1/0
 ✔ pyiceberg-spark copy ./dev/provision.py to pyiceberg-spark:/opt/spark/provision.py Copied                                                                                0.0s
docker compose -f dev/docker-compose-integration.yml exec -T spark-iceberg ipython ./provision.py
WARN[0000] /home/jeffrey/Desktop/GItHub_Project/iceberg-python/dev/docker-compose-integration.yml: the attribute `version` is obsolete, it will be ignored, please remove it to avoid potential confusion
Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
24/09/18 11:02:25 WARN NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Could not initialize FileIO: pyiceberg.io.pyarrow.PyArrowFileIO
Could not initialize FileIO: pyiceberg.io.pyarrow.PyArrowFileIO
Could not initialize FileIO: pyiceberg.io.pyarrow.PyArrowFileIO
Could not initialize FileIO: pyiceberg.io.pyarrow.PyArrowFileIO
poetry run pytest tests/ -v -m integration

====================================================================================== test session starts =======================================================================================
platform linux -- Python 3.11.9, pytest-7.4.4, pluggy-1.5.0 -- /home/jeffrey/Desktop/GItHub_Project/iceberg-python/venv/bin/python
cachedir: .pytest_cache
rootdir: /home/jeffrey/Desktop/GItHub_Project/iceberg-python
configfile: pyproject.toml
plugins: lazy-fixture-0.6.3, mock-3.14.0, requests-mock-1.12.1, checkdocs-2.10.1
collected 3640 items / 2840 deselected / 800 selected

... tests ...
====================================================== 501 passed, 7 skipped, 2840 deselected, 731 warnings, 292 errors in 99.24s (0:01:39) ======================================================

Log of make test-integration on my VM has so many errors. Any ideas? (It succeeds on CI Test).

What kind of errors are you running into @JE-Chen ? Could you provide us an example?

Open Pycharm
Open iceberg project
Create new venv using python 3.11.9
pip install poetry
make install
make test-integration
Get this message four time Could not initialize FileIO: pyiceberg.io.pyarrow.PyArrowFileIO
Start run tests and get so many error (501 passed, 7 skipped, 2840 deselected, 731 warnings, 292 errors in 99.24s (0:01:39))

Thank you for sending over the reproducible steps @JE-Chen - I do not use PyCharm for my development (I'm a VSCode user) so it might take a while for me to reproduce your setup.
Could not initialize FileIO: pyiceberg.io.pyarrow.PyArrowFileIO
https://github.com/apache/iceberg-python/blob/de47590c6ac4f507cb2337c20504a62c484339f9/pyiceberg/io/__init__.py#L320-L322
This is a warning message and I'm familiar with seeing that in my integration tests as well, but it didn't result in any of the tests failing in my case. Are you able to share the verbose error trace for a failing test case, so we can investigate what its failing on?

Look like all error cause by: pyspark.errors.exceptions.base.PySparkRuntimeError: [JAVA_GATEWAY_EXITED] Java gateway process exited before sending its port number.
There are full log.
[test.log](https://gist.github.com/JE-Chen/d29aa4ab86d256cfe79788157ff83983)

	Suppressed: org.apache.spark.util.TaskCompletionListenerException: Memory was leaked by query. Memory leaked: (3227648)
Allocator(toArrowBatchIterator) 0/3227648/3227648/9223372036854775807 (res/actual/peak/limit)

What VM are you running the integration tests on?
I have a theory that a previous change is causing memory leaks (see #1167). Can you try to revert it and run the integration test?
https://github.com/apache/iceberg-python/commit/1971fcfe0875eeb200dbcb66f385e504cfad6609
git revert 1971fcfe0875eeb200dbcb66f385e504cfad6609

	Suppressed: org.apache.spark.util.TaskCompletionListenerException: Memory was leaked by query. Memory leaked: (3227648)
Allocator(toArrowBatchIterator) 0/3227648/3227648/9223372036854775807 (res/actual/peak/limit)

What VM are you running the integration tests on?
I have a theory that a previous change is causing memory leaks (see #1167). Can you try to revert it and run the integration test? 1971fcf
git revert 1971fcfe0875eeb200dbcb66f385e504cfad6609

VMware Workstation 17 pro with these setting:

Gotcha, thanks! I think the CI runs in ubuntu, so it should mirror your own setup

seems like its an issue with your docker installation.
https://github.com/apache/iceberg-python/blob/41a3c8ea4e9c3592331755970bfc38f52eaf3fd8/dev/docker-compose-integration.yml#L21
here's what I found for "VMware Workstation 17 Pro "
https://www.reddit.com/r/vmware/comments/167rurt/easy_way_to_run_docker_container_in_vmware/

My Windows environment has the same pull issue.

@JE-Chen I was able to run integration tests for this PR locally. And given that CI also pass, let's merge this and debug your VM environment issue separately.
How does that sound?

@JE-Chen I was able to run integration tests for this PR locally. And given that CI also pass, let's merge this and debug your VM environment issue separately. How does that sound?

Sounds great.

Thank you @JE-Chen for the contribution and @sungwy for the review


Add Community Description to User Response

Description
This PR includes the following proposed change(s):

Addition of community description to the community object returned from the user endpoint

Requires
Add 'Requires Attention' label if appropriate.

[ ] Requires an update to the .env file
[ ] Requires adding a file listed in the .gitignore
[ ] Requires an opinion or answer to a question, see comments.
[ ] Requires other attention, see below.

If there are any requirements for the developer to make after this PR is merged please list them here.
Type of change

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Refactoring / Documentation
[ ] Version change

if your change is a breaking change, please add breaking change label to this PR
How Has This Been Tested?
Please describe the tests that you ran to verify your changes.
For pull requests that are not just a simple fix, please check that the branch works on your local machine.

[ ] Tested by Zach.
[ ] Tested by Brandon.
[ ] Tested by Brady.

Does the change impact or break the Docker build?

[ ] Yes
[ ] No

If Yes: Has Docker been updated accordingly?

[ ] Yes
[ ] No

Checklist:

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have made corresponding changes to the documentation
[ ] New and existing unit tests pass locally with my changes
[ ] If attention is required by the developer such as updating the .env file, these requirements have been listed.

If you're adding something to get api/user/{username} id also add it to get api/user

Sounds good! Thanks for pointing that out


"Nautobot Golden Config Repo" link on "Git as a Data Source" documentation is broken

Environment

Nautobot version (Docker tag too if applicable): n/a
Python version: n/a
Database platform, version: n/a
Middleware(s): n/a

Steps to Reproduce

Navigate to either https://docs.nautobot.com/projects/core/en/v1.6.8/user-guides/git-data-source/#additional-git-data-sources or https://docs.nautobot.com/projects/core/en/stable/user-guide/feature-guides/git-data-source/#additional-git-data-sources
Locate the "Nautobot Golden Config Repo" link; it currently points to https://github.com/nautobot/nautobot-plugin-golden-config/blob/develop/docs/navigating-golden.md#git-settings
Click the link, witness the joy of a 404

Note that per the above, this seems to affect both the 1.6 and 2.0 branches at the very least.

Expected Behavior
I expected to see a page with some git docs (should the link point to: https://github.com/nautobot/nautobot-app-golden-config/blob/develop/docs/user/app_use_cases.md#git-settings ?)

Observed Behavior
404

Confirmed still an issue in the v2.1.0 docs. The link should probably point to the rendered docs at https://docs.nautobot.com/projects/golden-config/en/latest/user/app_use_cases/#git-settings now.

I got curious a ran a pass at the docs using linkcheckmd and found a couple more dead links. Would you prefer I add them to this ticket or open a new one?

Oh nice, I hadn't heard of linkcheckmd before. Please add them to this ticket and we can fix them all in one pass.

@glennmatthews Is this still an issue or should we close it out? If we want a links check added yet, I would look at this - https://github.com/jeffkala/pyurlcheck

Looks to still be an issue. I haven't used pyurlcheck or linkcheckmd to be able to intelligently choose between the two projects but seems like we should definitely adopt one of them.


Compilation problem using repeat filter

Hey,
Really nice library. I really like it. Everything goes well except for one thing that I will describe below.
Steps to Reproduce
So it is very simple, I just want to use a repeat filter but for some reason using repead does not compile the code. Example of code below.
I am using the code in a Transaction because I am doing multiple operations but those are no relevant for the scenario. So I only added the part with the repead filter.
Code sample
final items = DatabaseUtil().getConnection().writeTxnSync((conn) {
   return conn.houses
          .filter()
          .repeat(
            [2, 3],
            (q, int element) =>
                q.roomsEqualTo(element).or(),
          )
          .findAllSync();
 });

The error that I get is:
The method 'findAllSync' isn't defined for the type 'QueryBuilder'

Am I missing something here?
Version

Platform: not aplicable
Flutter version: 3.0.0
Isar version: 2.5.0
Isar Generator version: 2.5.0

Fixed in 3.0.0-dev.2


Add a cfg flag to build Forest in Devnet mode

Summary of changes
Changes introduced in this pull request:
On enabling the devnet flag,

Allows for 2k sectors
Sets the min consensus power to 2048

In draft because I need write access to the actor_v0 repo to add the flag on v0 actors. @austinabell
Reference issue to close (if applicable)

Closes
Other information and links

Gave permissions. As for these changes, it would be nice if the deal minimum (MINIMUM_VERIFIED_DEAL_SIZE) and other parameters associated with the devnet are changed. Things like block delay and other parameters might be nice to also lower for testing, and we can consider changing the upgrade schedule too maybe?

Cool, I can do the block delay and minimum verified deal size. The upgrade schedule is a little bit more tricky. I dont think it's worth adding that right now. When im doing storage miner testing, i actually have been disabling all the upgrades.


(feat): Multiple GitLab CI tokens

I would love to see this construct library being able to handle multiple GitLab CI tokens for one runner.
Use Case
Creating a runner that is supposed to cover multiple projects but not a whole group.
Proposed Solution
This...
new GitlabRunnerAutoscaling(stack, 'foo', {
  gitlabToken: 'bar'
});

...becomes this:
new GitlabRunnerAutoscaling(stack, 'foo', {
  gitlabTokens: ['bar', 'baz']
});

[x] :wave: I may be able to implement this feature request
[x] :warning: This feature might incur a breaking change

This is a :rocket: Feature Request

Hi @Obirah , I think maybe become to this will been well.
new GitlabRunnerAutoscaling(stack, 'foo', {
  runners: [
  {
     gitlabTokens: 'foo',
     tags: ['a', 'dev'],
     dockerVolumes: [{
      hostPath: '/tmp/cahce',
      containerPath: '/tmp/cahce',
    }],
}, {
     gitlabTokens: 'bar',
     tags: ['b', 'dev'],
     ...
}
  ],
});

wdyt @gotodeploy

@neilkuan I think what @Obirah needs is just one runner for multiple projects rather than multiple runners for multiple projects. Probably registering multiple tokens via gitlab register command at once is impossible. So we should have a feature to edit config.toml.

@Obirah , what do you think ?!

@neilkuan the scenario that @gotodeploy described is exactly what I need. 👍🏻

@Obirah Have you started implementing this feature by yourself?

@Obirah Have you started implementing this feature by yourself?
P.S. @neilkuan FYI: https://forum.gitlab.com/t/run-runners-in-parallel-on-the-same-server/9213/3
Nope, unfortunately I will not have time for that in the next weeks. :/ But I'll keep it in the back of my head and look back into it if the issue stays open.


Move cl_icd_layer.h from OpenCL-ICD-Loader to OpenCL-Headers.

As discussed in https://github.com/KhronosGroup/OpenCL-Docs/pull/521, moving the layer definition header here.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

LGTM.
I did wonder if the header should be cl_loader_layer.h or similar to match the cl_loader_layers extension name. However, there is already a cl_icd.h header, so following that makes sense.

Thanks for raising this point, the file was renamed to cl_layer.h.


Add deprecation warning to low usage programs

We need to deprecate the following programs with a 7-day deprecation warning(both in the UX and programmatically):
torch-train
torch-infer
sample-expval
quantum-kernel-alignment

No longer relevant since backend.run() doesn't call these programs.


Feature request to support microservices / serviceDiscovery / cloud

Sorry, it is not an issue, it is a feature request.
I think there should be many more like me who are waiting on etcd to start supporting service discovery.
We are already using a 5 member cluster in production and following etcd desperately for this additional use cases other than just kv storage for more than a year. :smile:
etcd is amazing and the only 2 things that would make it absolutely useful across the domains imo are service discovery and multi data center support.
Something like consul services to register and discover. I'm aware that there are solutions available but none are stable and not at all customizable. In this age of micro services architecture, if etcd starts supporting service discovery, it will be amazing.
Can we have something like below for etcd as well?
http://cloud.spring.io/spring-cloud-consul/

@raoofm You can use skydns (https://github.com/skynetservices/skydns) to achieve the similar thing. We do not have plan to support this directly in etcd project at the moment.

@xiang90 Thanks


Added wrapper for ReactJS and cleaned a couple of things

hell yeah

:poultry_leg:

Now I need to figure out a way to release two different packages out of a single repo...


Jwt issue - wrong jwt

Describe the bug
Getting wrong jwt code from master.
C:\Users\lennie>curl -i "http://<IP_ADDRESS>:9351/dir/lookup?volumeId=1,18ee7f3466&read=yes"
HTTP/1.1 200 OK
Authorization: BEARER eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWQiOiIiLCJleHAiOjE2MTM1MTI0NDN9.AxGUN17e_RZ5g4tSZLFWfzqnIuYQqxDCMBPTxvnFpdk
Content-Type: application/json
Date: Tue, 16 Feb 2021 21:52:03 GMT
Content-Length: 90

{"volumeId":"1","locations":[{"url":"<IP_ADDRESS>:9831","publicUrl":"<IP_ADDRESS>:9831"}]}

And then volume query.
C:\Users\lennie>curl -i "http://<IP_ADDRESS>:9831/1,18ee7f3466" -H "Authorization: BEARER eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWQiOiIiLCJleHAiOjE2MTM1MTI0NDN9.AxGUN17e_RZ5g4tSZLFWfzqnIuYQqxDCMBPTxvnFpdk"
HTTP/1.1 401 Unauthorized
Content-Type: application/json
Server: SeaweedFS Volume 30GB 2.26
Date: Tue, 16 Feb 2021 21:52:27 GMT
Content-Length: 21

{"error":"wrong jwt"}

I Have read issue https://github.com/chrislusf/seaweedfs/issues/1399
But i only have one server and the time is correct on the system.
When i do some request to the master to get the jwt token i can se this.
curl -i "http://<IP_ADDRESS>:9351/dir/lookup?volumeId=1,18ee7f3466&read=yes"

Jwt response.
Authorization: BEARER eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWQiOiIiLCJleHAiOjE2MTM1MTM2MTN9.VfbCVHEhBMHMxWZrTpzOTYSU8DqWtKGs5_vaopdLiwY

Authorization: BEARER eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWQiOiIiLCJleHAiOjE2MTM1MTM2MTd9.9yPL3dNuW3J4p68KARMWIAp_XlqDYkAN-NHHnYUrY4Q

Authorization: BEARER eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWQiOiIiLCJleHAiOjE2MTM1MTM2MjB9.crUaZYFBCEDu57dOKAE-rJPw5nS-fpJP11Oz6Bv0Pok

Authorization: BEARER eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWQiOiIiLCJleHAiOjE2MTM1MTM2MjF9.mRJQ0WtXu5JNfPAKIGiJP0CGrodiM_i8tOws9H7PRdA

There should not be underscore or dash in the base64 encoded values?
So the question is. Why do I get underscores?
I am running: OS: Ubuntu 18.04.4 LTS
And weed version : version 30GB 2.26 b9b5b932 linux amd64
The Master is starting whit this command.
weed master -mdir="/home/raid6/seaweed/mastershare" -ip="<IP_ADDRESS>" -ip.bind="<IP_ADDRESS>" -port=9351

Log
I0216 22:42:56 19422 file_util.go:23] Folder /home/raid6/seaweed/mastershare Permission: -rwxr-xr-x
I0216 22:42:56 19422 master.go:168] current: <IP_ADDRESS>:9351 peers:
I0216 22:42:56 19422 master_server.go:107] Volume Size Limit is 30000 MB
I0216 22:42:56 19422 master_server.go:192] adminScripts:
I0216 22:42:56 19422 master.go:122] Start Seaweed Master 30GB 2.26 b9b5b932 at <IP_ADDRESS>:9351
I0216 22:42:56 19422 raft_server.go:70] Starting RaftServer with <IP_ADDRESS>:9351
I0216 22:42:56 19422 raft_server.go:129] current cluster leader:
I0216 22:42:56 19422 master.go:146] Start Seaweed Master 30GB 2.26 b9b5b932 grpc server at <IP_ADDRESS>:19351
I0216 22:42:57 19422 masterclient.go:78] No existing leader found!
I0216 22:42:57 19422 raft_server.go:154] Initializing new cluster
I0216 22:42:57 19422 master_server.go:141] leader change event:  => <IP_ADDRESS>:9351
I0216 22:42:57 19422 master_server.go:143] [ <IP_ADDRESS>:9351 ] <IP_ADDRESS>:9351 becomes leader.
I0216 22:43:00 19422 master_grpc_server.go:252] + client filer@<IP_ADDRESS>:8888
I0216 22:43:01 19422 masterclient.go:126] redirected to leader <IP_ADDRESS>:9351
I0216 22:43:01 19422 master_grpc_server.go:252] + client master@<IP_ADDRESS>:37496
I0216 22:43:04 19422 node.go:322] topo adds child soder
I0216 22:43:04 19422 node.go:322] topo:soder adds child r1u1
I0216 22:43:04 19422 node.go:322] topo:soder:r1u1 adds child <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:71] added volume server <IP_ADDRESS>:9831
I0216 22:43:04 19422 volume_layout.go:354] Volume 13 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 10 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 8 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 7 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 6 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 3 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 1 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 11 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 2 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 12 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 5 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 4 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 9 becomes writable
I0216 22:43:04 19422 volume_layout.go:354] Volume 14 becomes writable
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 13 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 10 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 8 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 7 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 6 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 3 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 1 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 11 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 2 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 12 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 5 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 4 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 9 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:112] master see new volume 14 from <IP_ADDRESS>:9831
I0216 22:43:04 19422 master_grpc_server.go:157] master send to filer@<IP_ADDRESS>:8888: url:"<IP_ADDRESS>:9831" public_url:"<IP_ADDRESS>:9831" new_vids:13 new_vids:10 new_vids:8 new_vids:7 new_vids:6 new_vids:3 new_vids:1 new_vids:11 new_vids:2 new_vids:12 new_vids:5 new_vids:4 new_vids:9 new_vids:14 data_center:"soder"
I0216 22:43:04 19422 master_grpc_server.go:157] master send to master@<IP_ADDRESS>:37496: url:"<IP_ADDRESS>:9831" public_url:"<IP_ADDRESS>:9831" new_vids:13 new_vids:10 new_vids:8 new_vids:7 new_vids:6 new_vids:3 new_vids:1 new_vids:11 new_vids:2 new_vids:12 new_vids:5 new_vids:4 new_vids:9 new_vids:14 data_center:"soder"

The volume is starting whit this command.
root@spinky:/home/raid6/seaweed# weed volume -max=100 -ip="<IP_ADDRESS>" -ip.bind="<IP_ADDRESS>" -port=9831 -mserver="<IP_ADDRESS>:9351" -dir="/home/raid6/seaweed/voltesting" -dataCenter="soder" -rack="r1u1"

Log

I0216 22:25:09  9983 file_util.go:23] Folder /home/raid6/seaweed/voltesting Permission: -rwxr-xr-x
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/2.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/filestorage_12.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/5.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/3.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/1.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/7.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/6.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/4.idx to memory
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/2.dat, replicaPlacement=000 v=3 size=8 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/3.dat, replicaPlacement=000 v=3 size=8 ttl=
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/filestorage_10.idx to memory
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/7.dat, replicaPlacement=000 v=3 size=8 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/filestorage_12.dat, replicaPlacement=000 v=3 size=1864 ttl=
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/filestorage_13.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/filestorage_11.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/filestorage_8.idx to memory
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/filestorage_14.idx to memory
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/4.dat, replicaPlacement=000 v=3 size=8 ttl=
I0216 22:25:09  9983 volume_loading.go:127] loading index /home/raid6/seaweed/voltesting/filestorage_9.idx to memory
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/1.dat, replicaPlacement=000 v=3 size=112 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/5.dat, replicaPlacement=000 v=3 size=104 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/6.dat, replicaPlacement=000 v=3 size=8 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/filestorage_10.dat, replicaPlacement=000 v=3 size=7900832 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/filestorage_13.dat, replicaPlacement=000 v=3 size=720 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/filestorage_9.dat, replicaPlacement=000 v=3 size=8 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/filestorage_11.dat, replicaPlacement=000 v=3 size=664 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/filestorage_8.dat, replicaPlacement=000 v=3 size=1600 ttl=
I0216 22:25:09  9983 disk_location.go:133] data file /home/raid6/seaweed/voltesting/filestorage_14.dat, replicaPlacement=000 v=3 size=30789912 ttl=
I0216 22:25:09  9983 disk_location.go:175] Store started on dir: /home/raid6/seaweed/voltesting with 14 volumes max 100
I0216 22:25:09  9983 disk_location.go:178] Store started on dir: /home/raid6/seaweed/voltesting with 0 ec shards
I0216 22:25:09  9983 volume_grpc_client_to_master.go:52] Volume server start with seed master nodes: [<IP_ADDRESS>:9351]
I0216 22:25:09  9983 volume.go:351] Start Seaweed volume server 30GB 2.26 b9b5b932 at <IP_ADDRESS>:9831
I0216 22:25:09  9983 volume_grpc_client_to_master.go:114] Heartbeat to: <IP_ADDRESS>:9351

This is the Log in volume when wrong jwt
I0216 22:27:26  9983 common.go:53] response method:GET URL:/1,18ee7f3466 with httpStatus:401 and JSON:{"error":"wrong jwt"}
I0216 22:27:27  9983 common.go:53] response method:GET URL:/1,18ee7f3466 with httpStatus:401 and JSON:{"error":"wrong jwt"}
I0216 22:28:32  9983 common.go:53] response method:GET URL:/1,18ee7f3466 with httpStatus:401 and JSON:{"error":"wrong jwt"}
I0216 22:28:34  9983 common.go:53] response method:GET URL:/1,18ee7f3466 with httpStatus:401 and JSON:{"error":"wrong jwt"}

Security.toml file syntax:
# Put this file to one of the location, with descending priority
#    ./security.toml
#    $HOME/.seaweedfs/security.toml
#    /etc/seaweedfs/security.toml
# this file is read by master, volume server, and filer

# the jwt signing key is read by master and volume server.
# a jwt defaults to expire after 10 seconds.
[jwt.signing]
key = "NotShownToThePublic"
expires_after_seconds = 120           # seconds  10 default

# jwt for read is only supported with master+volume setup. Filer does not support this mode.
[jwt.signing.read]
key = "NotShownToThePublic"
expires_after_seconds = 120           # seconds

# volume server also uses grpc that should be secured.

# all grpc tls authentications are mutual
# the values for the following ca, cert, and key are paths to the PERM files.
# the host name is not checked, so the PERM files can be shared.
[grpc]
ca = "/home/certstrap/certstrap/out/smtCertAuth.crt"

[grpc.volume]
cert = "/home/certstrap/certstrap/out/volume01.crt"
key  = "/home/certstrap/certstrap/out/volume01.key"

[grpc.master]
cert = "/home/certstrap/certstrap/out/master01.crt"
key  = "/home/certstrap/certstrap/out/master01.key"

[grpc.filer]
cert = "/home/certstrap/certstrap/out/filer01.crt"
key  = "/home/certstrap/certstrap/out/filer01.key"

# use this for any place needs a grpc client
# i.e., "weed backup|benchmark|filer.copy|filer.replicate|mount|s3|upload"
[grpc.client]
cert = "/home/certstrap/certstrap/out/client01.crt"
key  = "/home/certstrap/certstrap/out/client01.key"

If I turn of the security (jwt). The server is working perfect.
I can save, show, delete object

can you use
curl -i "http://<IP_ADDRESS>:9351/dir/lookup?fileId=1,18ee7f3466&read=yes"

YES.......
It works.
I can read the data now.
The time is 00:37 am in Sweden. So I need to go to bed. But tomorrow I will test adding, deleting and changing file content.
curl -i "http://<IP_ADDRESS>:9351/dir/lookup?fileId=1,18ee7f3466&read=yes"
HTTP/1.1 200 OK
Authorization: BEARER eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWQiOiIxLDE4ZWU3ZjM0NjYiLCJleHAiOjE2MTM1MTg1NzN9.ZBeeKexOzG_ndZPte0596DCX9sYQjltDxo8RgYNt1OU
Content-Type: application/json
Date: Tue, 16 Feb 2021 23:34:13 GMT
Content-Length: 90

{"volumeId":"1","locations":[{"url":"<IP_ADDRESS>:9831","publicUrl":"<IP_ADDRESS>:9831"}]}

And...
curl -i "http://<IP_ADDRESS>:9831/1,18ee7f3466" -H "Authorization: BEARER eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJmaWQiOiIxLDE4ZWU3ZjM0NjYiLCJleHAiOjE2MTM1MTg1NzN9.ZBeeKexOzG_ndZPte0596DCX9sYQjltDxo8RgYNt1OU"
HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Disposition: inline; filename="test1.txt"
Content-Length: 21
Content-Type: text/plain; charset=utf-8
Etag: "dc79d203"
Last-Modified: Tue, 16 Feb 2021 20:43:28 GMT
Server: SeaweedFS Volume 30GB 2.26
Date: Tue, 16 Feb 2021 23:35:22 GMT

hej igen. allt bra?


Issue 366: Committed code for Group Id lower case validator

Closing this as pull 416 covers the changes.


Compiled the resources

Pros

No need to change the path to the resources for cx_Freeze and PyInstaller
User will not have to include qtmodern resources when bundling

Cons

Slower to do iterations on the resources because they now require an additional compile step

All in all makes it a lot "it just works" for users, but requires a bit of extra work from the maintainers.

Well spotted! Should depend on qtpy

also makes it a bit harder for the user to make changes to stylesheet etc, not that that matters for most people, but maybe include the uncompiled resources in the next PyPI release too?

That's a good point, we should maybe do something like this.
https://github.com/Jerakin/qtmodern/compare/compiling_resources...Jerakin:change_style?expand=1
That way they could at least monkey patch in their own stylesheet


use host name to filter pods

Daemon pods share the same UTS namespace with the host, so we can watch pods filtered by the hostname
This will bring 2 benefits:

The informer only watches a subset of pods, it will reduce memory usage and unnecessary reconciling
Get rid of fetching the host ip, which makes merbridge start faster in my env.

Codecov Report

Merging #181 (1751b95) into main (c276c72) will increase coverage by 1.36%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##             main     #181      +/-   ##
==========================================
+ Coverage   15.75%   17.11%   +1.36%
==========================================
  Files           5        5
  Lines         400      368      -32
==========================================
  Hits           63       63
+ Misses        327      295      -32
  Partials       10       10

Flag
Coverage Δ

unittests
17.11% <0.00%> (+1.36%)
:arrow_up:

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

Impacted Files
Coverage Δ

controller/localip/localip.go
23.80% <0.00%> (+0.61%)
:arrow_up:

pkg/linux/file.go
0.00% <ø> (ø)

pkg/linux/ip.go
100.00% <ø> (+81.81%)
:arrow_up:

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 c276c72...1751b95. Read the comment docs.


CSHARP-2260: MongoNodeIsRecoveringException message should include actual error code and codeName.

The SDAM spec was recently changed to say that a number of error codes should be considered "node is recovering" errors.
We used to be able to assume that a MongoNodeIsRecoveringException unambiguously meant that a secondary was catching up with the oplog after restarting (the usual definition of "recovering").
We are adding the error code and codeName to the exception message so that applications (and we!) can tell exactly which error code caused a MongoNodeIsRecoveringException to be thrown.
Evergreen patch:
https://evergreen.mongodb.com/version/5aeb1320c9ec4469219a7091

Rebased and merged.


Feature/client package

Integrates webpa-common/client package.

Solves #100

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.0 out of 2 committers have signed the CLA.:x: schmidtw:x: githubsandsYou have signed the CLA already but the status is still pending? Let us recheck it.