Strip prefix in the forwarded request

Scenario:

I have fabio set up to listen to http://fabioserver/
I have a route configured for a service, with prefix /myservice

When making a request to http://fabioserver/myservice/index.html, the service currently receives the forwarded request from fabio to /myservice/index.html
I would like to have the option to strip the prefix in fabio, so that the service would receive a request to /index.html
I currently have a homemade go proxy that does that, using http.StripPrefix. I may have the time to prepare a PR for this at some point, but no promises...

This is a duplicate of issue #2 for which I've decided not to support this. See the reasoning in the closing comment.

OK I get the reasoning.
I would argue that this introduces a requirement that services need to know the route they serve.
You can't change the "mount" path for a service, say from /myservice to /legacy/myservice without changing the service itself (which may not be an option).

I would counter that argument that it is better to add another handler to the service than splitting up your configuration across services and load balancer. I know you can do and lots of other load balancers allow you to do it but in our own setup we have had enough additional complexity with this that this actually led to the development of fabio in the first place.

... And I'm back...
It turns out I really need this after all. I tried to make all services have their prefix configurable, but this introduces a bit of complexity everywhere in the service, which I really want to avoid.
I think you'll agree that the services should not depend on the host where they are deployed. I believe the same is true for the path.
Stripping the prefix would allow services to work the same, regardless of the path where they are deployed.
Note that I do not suggest rewriting the urls in the responses (or maybe just Location headers), but instead encourage services to use relative urls.
Anyway, would you accept a pull request to add this option, or should I maintain my own fork ?

I agree on the host but not the path but that doesn't really matter. Please start this discussion with a suggestion on how this should work from the configuration perspective so that we can decide what the best approach is. No promises since I'd like to see how you want to solve that first and also want to think a bit about edge cases.

On the configuration side, I'm thinking a global configuration flag in fabio.properties (proxy.prefix.strip?).
It's probably not necessary to allow each service/route to override the behavior.
After a first look at the code, the global config case seems to be pretty straightforward. I'm not sure yet how to handle the websocket case, I'll look into it.

Why should this work only for a single, global prefix? Do you want to strip some of the path or all of it, for some of the services or for all of them, the same prefix for all services?
http://foo.com/service/user/index.html -> http://usersvc/index.html
or
http://foo.com/service/user/index.html -> http://usersvc/user/index.html

Can you explain a bit more what makes it so difficult to change the apps? Are these services you don't control or can't change or are they just too many?

I don't think it should work for a single global prefix. I think there should be a global option to strip the configured prefix for all services.
Basically to access an app behind a fabio proxy, you need to add a prefix to identify the app. I propose to remove the prefix from the requests so that the app works as if there were no proxy.
http://fabioserver/serviceprefix/user/index.html -> http://serviceserver/user/index.html

The idea for my case is that the services are third-party developed plugins, that should work the same regardless of where they are deployed.

Does http://serviceserver/user/index.html need to know that /serviceprefix was stripped from the original request? (i.e. do we need to inject a header?)
I could extend the route add command with a strip <prefix> option which would allow to control this per route/target. The only question is how to encode that in the service registration.
In issue #42 I've outlined a more flexible notation for the tags, i.e. p-host/path?key=val&key=val... which would provide the mechanism to add a strip=/serviceprefix option.

+1 for stripping service prefix.
In my case, I have multiple version of a web api, I'll have version prefix in the url.
I would like the option of striping the prefix at fabio.
e.g:
http://api.client:9999/v1/clients/1234 (tag: urlprefix-api.client/v1) -> http://server1:8030/clients/1235, http://server2:8030/clients/1235

http://api.client:9999/v2/clients/1234 (tag: urlprefix-api.client/v2) -> http://server1:8041/clients/1235, http://server2:8041/clients/1235

I like the strip prefix to be per route/registration(at fabio) and ideally be managed as a consul tag(like urlprefix).

@SathishN Actually, that is the kind of use case that made me decide not to support stripping in the first place. If you have two different API endpoints then you shouldn't name them both /client since they are different. The full names for these endpoints are /v1/client and /v2/client. Your integration tests should be different since they need to talk to the compatible endpoint and by moving the version routing in the load balancer - any load balancer - you make your application routing dependent on that configuration.
One motivation for fabio was to gently nudge people in the direction of not doing that since your code most likely doesn't care whether it has a handler for /client or /v1/client. However, the difference is that if you do that then you can just publish that route, i.e. your service says "I accept /v1/client" and fabio can pick that up and send you that traffic without any extra magic. It is also more explicit if you want to test the service by itself.

@magiconair client is a resource, v1 and v2 are versions of the client resource, they are served under host name is api.client. Integration tests are contained with the code base/repository,  they don't need to know on api versions.
Your right on web api's should know it routes, yes it'll and when web api starts up, it will publish it's route to the consul. But I don't want to inject the version info in the source code, it's a config value. I have few ways to handle this routing within web api itself. If fabio handles it, it moves the complexity out of my web api.

This is interesting. I see @magiconair's point about how services should advertise the exact endpoint they respond to.
In my case though, I'm part of an infrastructure team and we work with dozens of existing services that are owned by about a dozen teams. Changing the services is not really an option.
But maybe fabio is not designed for this use case of integrating a bunch of legacy services.

@msabramo have you tried? The main message is that the app should work the same with or without a load balancer in front of it.

@magiconair Nope, I haven't tried. I just happened upon fabio yesterday while searching around for the latest on using consul-template to configure nginx or HAProxy. I've been thinking through what the possible roadblocks could be.
Thanks for sharing fabio!

Expanding a comment I made in #69 that linked to this issue.  I would not like to see a global option as that would not work with our current deployment.  We definitely need the ability to strip the route prefix from some applications but not others.
This requirement is absolutely due to the points raised by @msabramo about legacy and vendor applications were we do not have control over the observed prefix for the application without placing additional hacks before the application (htaccess/haproxy/etc..).  I find it much more convenient and sane to keep this logic in as few places as possible.  Spreading out individual hacks across several applications is much harder to maintain than keeping all of that close to the actual entry point (the load balancer).
We also run the majority of our applications out of docker containers including frontend javascript applications that don't have any real prefix knowledge and simply reference all resource relative to the request.  These applications benefit greatly from the ability to change routing prefixes without modifying the underlying code.

I get it. I'll add it but need the refactor of #111 to be able to express this.

The change in the branch allows to specify an opts "strip=/foo" option to be added to the urlprefix-/foo/bar tag in order to strip /foo from outgoing requests. The incoming request is still matched on /foo/bar.

Is there a way to pass this option via the Consul tags?

@jovandeginste yes, e.g. urlprefix-/foo/bar strip=/foo The example I gave is wrong since the opts "key=val key=val ..." syntax is used for the route add ...  statement. I'll fix it.

Just tried this, and it works! Although spaces in the tags give some very strange side-effects :-)

For completeness sake, the stripped part is not added as a Request header?

What kind of side effects do you mean? The original request URI is not added as a request header. If you want that you could just not strip the prefix?
I'm also wondering whether the strip=/path is the best way to express this. If you have an opinion on this then please let me know.

The side effects are completely unrelated to fabio. We use service name and tags to create some automatic entries in consul's kv store like /services/$service_name/$service_tag/$container_id/, for each tag of the container. This becomes weird when the tags now start containing / and spaces by design ;-)
About the stripping, I'm still not sure if I want to use it. It's nice to have, but dangerous in practice. It works for specific cases. Why the header would be useful? Because the web app could refer to it's root by the header (/$header/) for assets and thus work irrespective of that root.
The actual use case I have is on demand spawning of docker containers for our dev teams, running their git branches of different services for internal testing. Since there will be numerous parallel branches, they should be easily discernible. My two main options are branchname.servicename.commondomain/ and commondomain/servicename/branchname/. Not sure if I need to explain pro's and cons of each option... I sadly don't have a well funded opinion about the way you implemented it.

I thought about it a bit more and I now think the tag system is not ideal. The better way would be to use consuls kv store for all the parameters including the urlprefix. Not sure if this still fits inside the scope of this project then...?

@jovandeginste consul kv is not an option since there are not transactions between registering a service and modifying the kv store. What if the one works and the other doesn't? When a service dies entries would have to be cleaned up from the kv store by a separate process. That's a design decision I've made early on. I agree the tag prefixes are a workaround since there is no room to have meta-data in the service registration.

@magiconair maybe fabio does not need to care about populating and cleaning the kv store (just like it doesn't care about adding the service tags); this can be an entirely separate process indeed, like the registrator we use. Fabio would only be a consumer of that information.
In this story, fabio reads the (relevant part of the) consul kv store to find out what services it is supposed to serve, and in that kv store it will find what consul service it should forward incoming requests to. Fabio will then monitor those backend services like it does now (health checks). If there is configuration in the kv store but no (healthy) backend, it could respond with the proper http code (502?)
Then again, maybe this is entirely out of scope for this project.

Our services don't use the registrator and are self-contained. That means they register and de-register themself and therefore something else would need to cleanup afterwards. KV and service registrations will get out of sync especially in large scale installations. It is only a matter of time.

Merged to master


Unable to find Kernel Offsets iOS 11.1.2 Unc0ver 4.3.1

Describe the bug
I get 3 consecutive errors while trying to jailbreak, I’ve tried restarting my device, I’ve tried closing unc0ver and closing it. Nothing is working
To Reproduce
Steps to reproduce the behavior:

Go to 'Unc0ver'
Click on 'Jailbreak'
Scroll down to 'KernelUtilities.c(197): Assertion Failure
KernelUtilites.c(2720): Assertion Failure’
See error : Unable to find Kernel Offsets

Screenshots

Device (please complete the following information):

iOS Version: 11.1.2
iOS Device: IPad Air 2
unc0ver Version: 4.3.1

Place an "x" between the brackets if true:

[ ] this is a bug others will be able to reproduce
[ ] this issue is present with all tweaks uninstalled(except for default packages) or disabled
[ ] this issue is present after a rootfs restore
[x] this issue is present on the latest version of unc0ver

Logs

You might want to try 3.7.0beta4  or 3.8.0.

You might want to try 3.7.0beta4 or 3.8.0.

How do I download this onto my iPad with cydia impact or not working?

You will need to google the instructions on how to do this.  but its very easy to do.
You will need altstore for your pc.  Install that, then use a program called altserverpatcher.exe
What this does it trick the altstore installer into installing any IPA you want.  Just like impactor.

@Teague4 Post unc0ver diagstostics please. Then delete unc0ver app data, then try again.

I am having the same issue plz help me

@Teague4  @ki9come Post unc0ver diagstostics please. Then delete unc0ver app data, then try again.

@Teague4 @ki9come bump.

@Teague4 @ki9come bump. Why you guys say you have an issue but don't respond.

I have the exact same problem
iOS Version: 11.1
iOS Device: iPhone X
unc0ver Version: 4.3.1

@Teague4 @ki9come @orlandiux Post unc0ver diagstostics please. Then delete unc0ver app data, then try again. Also another bump lol.

The app closes itself when i tap view logs

@orlandiux literally don't jailbreak, just share diagnostics.

The “Share Diagnostic Data” on the settings tab makes the app to exit :( so i can’t see that data.
I literally did not jailbreak.

@orlandiux view log only happens when you press jailbreak. Reset app data, jailbreak, close app, open app, share diagnostics.

@Cryptiiiic Fixed it changing the “Exploit” from Async Wake to Voucher Swap... now i’m jailbroken but i don’t know what is that :/
Did i do wrong changing that?

Downloaded Unc0ver 4.2.1 same issue
Donloaded Unc0ver 3.6.2 fixed everything.

@orlandiux the point is not to fix your issue but figure out why the issue happens in the first place. So need diagnostics. It can then be fixed in a future update.

Downloaded Unc0ver 4.2.1 same issue
Donloaded Unc0ver 3.6.2 fixed everything.

Where to download older uncover version without pc

Downloaded Unc0ver 4.2.1 same issue
Donloaded Unc0ver 3.6.2 fixed everything.

Where to download older uncover version without pc

-Change the Exploit to Voucher Swap on Unc0ver Settings
-Jailbreak
-Downgrade to 3.6.2 (download the older version from unc0ver dev webpage, install with Filza)
-Done.

@Teague4 - Did the 2020-06 instructions from @orlandiux resolve this for you? Please update or close this issue as applicable, thank you.

This thread is very old, but I would like to say that @Teague4 @orlandiux @ki9come. You need to listen to  @Cryptiiiic, by not responding all your doing its hurting yourself and can possibly get you banned from the repo

This thread is very old, but I would like to say that @Teague4 @orlandiux @ki9come. You need to listen to  @Cryptiiiic, by not responding all your doing its hurting yourself and can possibly get you banned from the repo

thanks

thanks


Elements doesn't work with NextJS out of the box

Using the latest version of Elements with vanilla Nextjs fails compilation with the following error:
Failed to compile.

<EMAIL_ADDRESS>Module parse failed: 'import' and 'export' may appear only with 'sourceType: module' (1:0)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
> import { Blob, FormData } from 'formdata-node';
| import { formDataIterator, isBlob } from './helpers/form-data.js';
| import { getHeaderName } from './helpers/headers.js';

Import trace for requested module:
<EMAIL_ADDRESS>./node_modules/.pnpm/@stoplight+elements-core@7.7.13_react-dom@17.0.2_react<EMAIL_ADDRESS>./node_modules/.pnpm/@stoplight+elements@7.7.13_react-dom@17.0.2_react<EMAIL_ADDRESS>
I believe that this is not a duplicate of #2146, #2085 nor #1966. If it is, then its somehow a regression.
Steps to Reproduce
I've created a quick demo repository which demonstrates the bug.
The repo is a scaffolded Next 12 app using create-next-app. I've added the package to the project and put the component on the / page.

Clone the repo
yarn install or pnpm install
yarn dev or pnpm dev
Navigate to http://localhost:3000

Environment
I can confirm that the bug is happening on multiple different environment / projects:

Node 16 - 18
Next 12 & 13
Typescript and Vanilla JS
MacOS / Arch Linux

The following git patch fixes a mis-configured transitive dependency httpsnippet-lite:
diff --git a/package.json b/package.json
index 53c491562460f631fc47f5af01b899ec3c46d62b..57dce839bb8ab8023210ddc98c476d219464f2fa 100644
--- a/package.json
+++ b/package.json
@@ -9,7 +9,6 @@
   "homepage": "https://github.com/P0lip/httpsnippet",
   "license": "MIT",
   "sideEffects": false,
-  "type": "commonjs",
   "main": "./dist/cjs/httpsnippet.js",
   "module": "./dist/esm/httpsnippet.js",
   "types": "./dist/types/httpsnippet.d.ts",

As this package uses Web Components, Next complains that the component requires DOM APIs in server-side pre-rendering.
A workaround to this is use Nextjs' Dynamic import as follows:
import dynamic from "next/dynamic";
const API = dynamic(() => import("@stoplight/elements").then((x) => x.API), { ssr: false });

@angeloanan I released a new version of httpsnippet-lite that should address that issue.
LMK if you still experience the issue.


docs/development.md: add gotext

gotext is required to generate translations

Good catch! Thank you very much!


Blazor Server Side App deployed on App Service need web socket on App Service.

I use .net Core 3 Preview 8, and have this strange behavior when running Blazor Server Side app i Azure App Service.
When not using Azure SignalR, I must use Web Socket on App Service in Azure. If not I got "Object reference not set to an instance of an object." when navigate to a page from a menu item. Everything work great on my localhost.
If I go to the address line, and set the cursor at the end of the line and push enter, it work as expected.
After added Azure SignalR, everything was fine when running app from server (without Web Socket), but this time, I got "Object reference not set to an instance of an object." when I'm running on localhost. And as with the server version without Web Socket or Azure SignalR I can set my cursor at end of the browsers address bar and push enter, everything work well.
My Setup is like this.
public void ConfigureServices(IServiceCollection services)
        {
            var identityServerConfig =
   Configuration.GetSection("auth:internal").Get<IdentityServerInfo>();
            var apiManagementInfo = Configuration.GetSection("ApiManagement").Get<ApiManagementInfo>();
            services.AddAuthentication(options =>
            {
                options.DefaultScheme = CookieAuthenticationDefaults.AuthenticationScheme;
                options.DefaultChallengeScheme = OpenIdConnectDefaults.AuthenticationScheme;
            })
            .AddCookie()
            .AddOpenIdConnect(options =>
            {
                options.SignInScheme = CookieAuthenticationDefaults.AuthenticationScheme;
                options.Authority = identityServerConfig.Authority;
                options.ClientId = identityServerConfig.ClientId;
                options.ClientSecret = identityServerConfig.ClientPwd;
                options.ResponseType = OpenIdConnectResponseType.Code;
                options.SaveTokens = true;

                foreach (var scope in identityServerConfig.Scopes.Split(";"))
                {
                    options.Scope.Add(scope);
                }
                options.CallbackPath = "/signin-oidc";
            });

            services.AddSignalR().AddAzureSignalR(Configuration["Azure:SignalR:ConnectionString"]);

            services.AddControllersWithViews(options =>
            {
                var policy = new AuthorizationPolicyBuilder()
                    .RequireAuthenticatedUser()
                    .Build();
                options.Filters.Add(new AuthorizeFilter(policy));
            });

            services.AddRazorPages();
            services.AddServerSideBlazor();

            // HttpContextAccessor
            services.AddHttpContextAccessor();
            services.AddScoped<HttpContextAccessor>();

            services.AddSingleton(new HttpClient
            {
                BaseAddress = new Uri(apiManagementInfo.Url)
            });
            services.AddSingleton(apiManagementInfo);

            services.AddScoped<IUserManagement, UserManagementHttp>();
        }

        // This method gets called by the runtime. Use this method to configure the HTTP request pipeline.
        public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
        {
            app.UseEmbeddedBlazorContent(typeof(MatBlazor.BaseMatComponent).Assembly);
            if (env.IsDevelopment())
            {
                app.UseDeveloperExceptionPage();
            }
            else
            {
                app.UseExceptionHandler("/Home/Error");
                // The default HSTS value is 30 days. You may want to change this for production scenarios, see https://aka.ms/aspnetcore-hsts.
                app.UseHsts();
            }

            app.UseHttpsRedirection();
            app.UseStaticFiles();

            app.UseRouting();
            app.UseAuthentication();
            app.UseAuthorization();

            app.UseEndpoints(endpoints =>
            {
                endpoints.MapControllers();
                endpoints.MapBlazorHub();
                endpoints.MapFallbackToPage("/_Host");
            });
        }

Thanks for contacting us, @snerting .
Can you please share the error stack trace so we can better understand what's going on here.
@BrennanConroy is this a known issue in SignalR?

I don't know of any null refs currently. The stack traces for them would be great.

When not using Azure SignalR, I must use Web Socket on App Service in Azure.

You shouldn't be required to enable WebSockets as the connections should fall back to LongPolling, but it is definitely prefered to use WebSockets.
And when you add the Azure SignalR Service you no longer need to turn on WebSockets because the Service is the one accepting WebSocket connections now and not the App Server.

Her is what i see in console log for browser when SignalR is enabled and running local, I have also added output from Visual Studio. Hope this can help.
Image below show what happend when click on Home, then on Customer(tenants)

Output from the web server (Visual Studio):
info: Management.Ui.Services.UserManagementHttp[0]
Retrieve all tenant who user has access to
info: Management.Ui.Services.UserManagementHttp[0]
Calling rest api with following request: tenants
Her is the log, if I refresh the site when i stand on the Customer(tenants).

Output from the web server (Visual Studio):
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2.0 GET https://localhost:44336/Tenant/Tenants
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint '/_Host'
info: Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker[3]
Route matched with {page = "/_Host", area = ""}. Executing page /_Host
info: Microsoft.AspNetCore.Authorization.DefaultAuthorizationService[1]
Authorization was successful.
info: Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker[103]
Executing an implicit handler method - ModelState is Valid
info: Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker[104]
Executed an implicit handler method, returned result Microsoft.AspNetCore.Mvc.RazorPages.PageResult.
info: Microsoft.AspNetCore.Authorization.DefaultAuthorizationService[1]
Authorization was successful.
info: Management.Ui.Services.UserManagementHttp[0]
Retrieve all tenant who user has access to
info: Management.Ui.Services.UserManagementHttp[0]
Calling rest api with following request: tenants
info: Microsoft.AspNetCore.Mvc.RazorPages.Infrastructure.PageActionInvoker[4]
Executed page /_Host in 64.1579ms
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint '/_Host'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished in 67.23ms 200 text/html; charset=utf-8
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2.0 GET https://localhost:44336/css/bootstrap/bootstrap.min.css
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[6]
The file /css/bootstrap/bootstrap.min.css was not modified
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished in 1.0857ms 304 text/css
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2.0 GET https://localhost:44336/css/site.css
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[6]
The file /css/site.css was not modified
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished in 0.5834ms 304 text/css
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2.0 GET https://localhost:44336/_framework/blazor.server.js
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[6]
The file /_framework/blazor.server.js was not modified
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished in 0.1685ms 304 application/javascript
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2.0 GET https://localhost:44336/css/open-iconic/font/css/open-iconic-bootstrap.min.css
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[6]
The file /css/open-iconic/font/css/open-iconic-bootstrap.min.css was not modified
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished in 0.5411ms 304 text/css
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2.0 GET https://localhost:44336/css/bootstrap/bootstrap.min.css.map
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[6]
The file /css/bootstrap/bootstrap.min.css.map was not modified
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished in 0.8864000000000001ms 304 text/plain
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2.0 POST https://localhost:44336/_blazor/negotiate text/plain;charset=UTF-8 0
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[0]
Executing endpoint '(null)'
info: Microsoft.AspNetCore.Routing.EndpointMiddleware[1]
Executed endpoint '(null)'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished in 5.333ms 200 application/json
info: Microsoft.AspNetCore.Hosting.Diagnostics[1]
Request starting HTTP/2.0 GET https://localhost:44336/favicon.ico
info: Microsoft.AspNetCore.StaticFiles.StaticFileMiddleware[2]
Sending file. Request path: '/favicon.ico'. Physical path: 'C:\Projects\Net\Src-Code\Web\management-ui\src\Management.Ui\wwwroot\favicon.ico'
info: Microsoft.AspNetCore.Hosting.Diagnostics[2]
Request finished in 3.8057000000000003ms 200 image/x-icon
info: Microsoft.AspNetCore.SignalR.HubConnectionContext[1]
Completed connection handshake. Using HubProtocol 'blazorpack'.
info: Microsoft.AspNetCore.Authorization.DefaultAuthorizationService[1]
Authorization was successful.

Could you check System.NullReferenceException in the Exception Settings in VS so you are able to see the null ref when it occurs? It looks like you might have a null ref in UserManagementHttp but it's hard to tell from the info here so far.

Hi @BrennanConroy
You have right, it's a null pointer. And reason is that HttpContectAccessor don't have any HttpContext, so this is the line of code who cause the problem:
var accessToken = await _httpContextAccessor.HttpContext.GetTokenAsync("access_token");

This give the following output:
Microsoft.AspNetCore.Routing.EndpointMiddleware: Information: Executing endpoint '(null)'
Microsoft.AspNetCore.Routing.EndpointMiddleware: Information: Executed endpoint '(null)'
Microsoft.AspNetCore.Hosting.Diagnostics: Information: Request finished in 30.7194ms 200 application/json
Microsoft.AspNetCore.SignalR.HubConnectionContext: Information: Completed connection handshake. Using HubProtocol 'blazorpack'.
Microsoft.AspNetCore.Authorization.DefaultAuthorizationService: Information: Authorization was successful.
Management.Ui.Services.UserManagementHttp: Information: Retrieve all tenant who user has access to
Management.Ui.Services.UserManagementHttp: Information: Calling rest api with following request: tenants
Exception thrown: 'System.NullReferenceException' in Microsoft.AspNetCore.Authentication.Abstractions.dll
Object reference not set to an instance of an object.
Why this behavior only when using SignalR, on local machine?
My questions now is, why does this problem only happen when SignalR is added, and why is it only problem when running on my developer machine (localhost), because it's running fine when it's deployed on App Service (Azure).

IHttpContextAccessor does not work with SignalR very well or in some cases, at all. This is because oftentimes you will be trying to access the HttpContext outside of the scope of an actual HTTP request.
Where are you using the TokenContainer from? And is it possible to refactor it to not rely on IHttpContextAccessor?

Hi @BrennanConroy
I use IHttpContextAccessor to reach HttpContext, so I can get the JWT token who is retrieved when I has logget inn through IdentityServer4. This JWT token is used (and this is where TokenContainer come into pictue, a very bad name by the way...) , when calling a API who require this Access token.
I'm gladly for a advise on how to do this in another way, and avoid IHttpContextAccessor if possible.

Could you show your usage of the TokenContainer class? Specifically how SignalR is involved when it is called into.
Even better would be if you had a repro app that we could take a look at.

@BrennanConroy
I have now created a trimmed version of My Code on github.
As describe in Readme.md you must add valid info for Azure SignalR.
When running code, set a breakpoint in TokenContainer.cs (on first line in code below)
protected async Task AddRequestHeaders(HttpClient httpClient)
        {
            var accessToken = await _httpContextAccessor.HttpContext.GetTokenAsync("access_token");
            httpClient.DefaultRequestHeaders.Accept.Add(
            new MediaTypeWithQualityHeaderValue("application/json"));
            httpClient.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key",_apiManagementInfo.OcpApimSubscriptionKey);
            httpClient.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", accessToken);
        }

To have the HttpContext be NULL (and cause the error), just use the Hamburger bar  in the app and select Customers.
To have it work as expected (HttpContext is not null), I refresh the browser when address is https://localhost:44336/Customer/Customers
I don't understand why implementing Azure SignalR cause trouble, and hope you can help me out.
Hope code work without problems

You should be grabbing the tokens during your auth process and setting them on the principal. This would avoid the usage of HttpContextAccessor and also you wouldn't need to get the tokens every time you want to call your API.
Also, you're using a Singleton HttpClient and setting sensitive headers on it.
This is a bad idea because another user could also be using the HttpClient and accidentally use the tokens from another connection.

@BrennanConroy  Thanks a lot for all your help and for the tip on my bad use of HttpClient 👍

Thanks @BrennanConroy!
Closing this issue as resolved.


Priority Queue #204

Issue Number: #204
This is the implementation of the priority queue it possesses the ability to destroy and create nodes.
As well as the basic methods of inserting and deleting based on priority using a linked list

@Mohamed-Ayaan358  make only one pr at a time .

pull request merged, now please close the issue, you can also contribute to other repo's-https://github.com/avinash201199/Hacktoberfest-Guide
Note- only 2 pr per day on a single repo is accepted.


unsupported operand type(s) for |: 'DefaultStr' and 'bool'

running
C:\WINDOWS\system32>az aks use-dev-spaces -n aksa -g aksarg
and getting
unsupported operand type(s) for |: 'DefaultStr' and 'bool'
Traceback (most recent call last):
File "C:\Users\trdai\AppData\Local\Temp\pip-install-4rn35c0b\knack\knack\cli.py", line 197, in invoke
File "C:\Users\trdai\AppData\Local\Temp\pip-install-4rn35c0b\azure-cli-core\azure\cli\core\commands_init_.py", line 336, in execute
File "C:\Users\trdai\AppData\Local\Temp\pip-install-4rn35c0b\six\six.py", line 693, in reraise
File "C:\Users\trdai\AppData\Local\Temp\pip-install-4rn35c0b\azure-cli-core\azure\cli\core\commands_init_.py", line 310, in execute
File "C:\Users\trdai\AppData\Local\Temp\pip-install-4rn35c0b\azure-cli-core\azure\cli\core\commands_init_.py", line 171, in call
File "C:\Users\trdai\AppData\Local\Temp\pip-install-4rn35c0b\knack\knack\commands.py", line 109, in call
File "C:\Users\trdai\AppData\Local\Temp\pip-install-4rn35c0b\azure-cli-core\azure\cli\core_init_.py", line 420, in default_command_handler
File "C:\Users\trdai\AppData\Local\Temp\pip-install-4rn35c0b\azure-cli-acs\azure\cli\command_modules\acs\custom.py", line 1516, in aks_use_dev_spaces
File "C:\Users\anskob.azure\cliextensions\dev-spaces-preview\azext_dev_spaces_preview\custom.py", line 38, in ads_use_dev_spaces
azds_cli = _install_dev_spaces_cli(update)
File "C:\Users\anskob.azure\cliextensions\dev-spaces-preview\azext_dev_spaces_preview\custom.py", line 118, in _install_dev_spaces_cli
should_install_azds = force_install | (not _is_dev_spaces_installed(azds_cli))
TypeError: unsupported operand type(s) for |: 'DefaultStr' and 'bool'

It looks like you may have an older version of the tools.  Can you verify that your azure cli version is at least 2.0.38 and your dev spaces extension is at least 0.1.6?  You can see the versions by running 'az --version'.
If they are older, you can get a newer Azure CLI from https://docs.microsoft.com/en-us/cli/azure/install-azure-cli?view=azure-cli-latest.  You can update the extension by running 'az extension update -n dev-spaces-preview'.


libc-wasi: Fix spurious poll timeout

This reverts the "Fix libc-wasi poll_oneoff hang issue" change. https://github.com/bytecodealliance/wasm-micro-runtime/pull/1300
My app usng poll(,,-1) timed out and surprised me today.

@wenyongh can you explain "libc-wasi poll_oneoff hang issue" which https://github.com/bytecodealliance/wasm-micro-runtime/pull/1300 fixed?

@wenyongh can you explain "libc-wasi poll_oneoff hang issue" which #1300 fixed?

@yamt Using -1 makes the following wasm app hang in some environments:
iwasm --dir=. qjs.wasm
QuickJS - Type "\h" for help
qjs > \h          ==> hang when we input "\h" or "console.log('hello')"

qjs.zip

@wenyongh can you explain "libc-wasi poll_oneoff hang issue" which #1300 fixed?

@yamt Using -1 makes the following wasm app hang in some environments:
iwasm --dir=. qjs.wasm
QuickJS - Type "\h" for help
qjs > \h          ==> hang when we input "\h" or "console.log('hello')"

qjs.zip

do you have a source of the wasm file?
are you sure if it was not a problem in the app?
which environment was it? i couldn't reproduce it on my env. (macOS x86-64, wamr version of this PR, fast interpreter)

a found a wasmtime gh issue with the identical qjs.wasm binary and a similar symptom.
i guess it's a problem in the wasm module itself.

a found a wasmtime gh issue with the identical qjs.wasm binary and a similar symptom. i guess it's a problem in the wasm module itself.

Yes, it is the same file that I tested, it works in Ubuntu 20.04 physical machine but fails in VirtualBox Ubuntu 18.04. And the issue was reported by my colleague long time ago.
The wasm file is really an old build since it uses wasi_unstable. Seems that it is the problem of case itself. If you are very sure that using -1 is correct, I think we can revert the change.

a found a wasmtime gh issue with the identical qjs.wasm binary and a similar symptom. i guess it's a problem in the wasm module itself.

Yes, it is the same file that I tested, it works in Ubuntu 20.04 physical machine but fails in VirtualBox Ubuntu 18.04. And the issue was reported by my colleague long time ago. The wasm file is really an old build since it uses wasi_unstable.

intersting. maybe some kind of race condition in somewhere.

Seems that it is the problem of case itself. If you are very sure that using -1 is correct, I think we can revert the change.

i'd suggest to revert it because it's clear it broke legitimate applications. eg. poll(,, -1)
on the other hand, what issue it has worked around is not clear. it might or might not even exist nowadays. (as wasmtime person speculated on their gh issue.)


Correcting validation error

Sometimes there is a problem with validation - when generated hash is valid integer (includes only digits - it rarely happens) - php converts that string to integer - then you get integer in array of hashes ($hashes). Comparing that integer to returned string from hash_file function results in false value while hash is the same but differs in variable type.

We definitely need a unit test for this before we can merge. The unit test should fail under current master, and pass after the patch is  applied.
I tend to agree with @webimpress - we should be casting hashes to strings when calling setHash() and/or in the constructor.

@weierophinney I've pushed changes to this branch. I am checking now if input hash is string, and if not I am throwing an exception. We do have that check when we provide just a hash, without algorithm, but with algorithm we haven't had this check. Please see test I've added.
@adamoki Are you satisfied with the solution I've provided?

Thanks, @adamoki!


[Profile - withdraw] - Balance on profile should be auto update as withdraw successful

Bug:

Currently Balance is not going to be auto update as we withdraw amount
Also Create button should be disable with empty space in Payment Request input field

Evidence:
https://www.loom.com/share/91316816142c42fbaa72fe6614899192?sid=2c552de5-1cbc-4a5f-8e45-247f20bf60ac
Acceptance Criteria:

[ ] Balance should be auto update when withdraw successfull
[ ] Create button should be disable with empty spaces OR show Required error message

@sutt Could you please review these issues if valid then please assign me?

@sutt please assign me?

@MahtabBukhari this sounds like a good idea: you are assigned.
I'll add a smallish reward for this issue now.
And I'll also add a reward for larger full implementation of  "balance updated when withdraw success". This is because it's the full implementation is trickier than it seems *.
But just implementing the basic case will claim this issue.
Further LightningPayment Explainer
*: To actually know when an outgoing lightning payment has succeeded (and thus the sats are deducted), we need to check if its status is pending. Currently the "Success" message just means the payment has been sent, but not that it has succeeded. The outgoing payment can be viewed in "Payment History" (the /history endpoint and might end up on pending=true for sometime as you can see for non-paid deposits, e.g the image below. But that's all for the other issue.


Swift 1.2 merge

When is the Xcode 6.3 branch going to be merged into master and pushed to Cocoapods?
I'm waiting on this right now! :) Thanks.

I'm planning to do that tonight! :)

Great thanks!

Hi @AnthonyMDev, I just pushed the 1.0.0 pod to trunk, so you should see it soon - that's Xcode 6.3 and Swift 1.2 support.


Multiple .yo-rc.json when project was created with subfolder

Category

[ ] Question
[ ] Typo
[x] Bug
[ ] Additional article idea

Expected or Desired Behavior
Single .yo-rc.json that contains the configuration of the SPFx yeoman generator.
Observed Behavior
When a project gets created with the "Create folder option" the result is an inconsistent configuration storage in Yeoman.

The result is that two .yo-rc.json files gets generated. One in the root folder form where the project have been created and on in the project folder directly.

Steps to Reproduce
Create a new SPFx project and use the create sub folder option.

Inconvenient, but clearly a bug which we should have a look sooner or later

Hey @StfBauer , totally correct in this, it is a bug.  We've spent some time trying to work within the generator to remove it, but it's not the highest priority task at the moment.  As such, we're going to close this.


Fix various misspellings of "archive"

@msvana Would it be possible to merge this? It solely consists of spelling fixes and should not affect the functionality of warcreader.

Thanks, merged.


Fix broken themes; enhance theme parsing test

Closes #342
Specific errors I fixed by theme:

NeonGlow (added by @farzher) - was missing a key-string pair of name at the top level <dict>
blockninja (added by @AlexDunmow) - wrong XML schema version
RamdaJS (added by @kenjikatahira )- had Ramda for both the <key> and <string> tags, where the <key> should've been name.

The tests I tweaked will catch errors like these.

thank you


License missing

Hey @FrecherxDachs, I'm from the Windows notifications team at Microsoft. Big thanks for figuring out how to use the COM server in .NET Core 3.0!
Your repo is missing a license... could you add a license if we can use your code in our DesktopNotificationManagerCompat library (which also gets included in the Windows Community Toolkit) so that everyone can benefit from this?

MIT would be the most agreeable with the Toolkit, thanks! 🙂

Nice to hear that I could help a bit.
MIT license added.


apollo-module incompatible with generate

Version
v4.0.0-beta.5
Reproduction link
https://github.com/nuxt-community/apollo-module
Steps to reproduce
npm run generate
What is expected ?
generated pages
What is actually happening?
Error: Network error: Cannot read property 'headers' of undefined
Additional comments?
in<EMAIL_ADDRESS>used req.headers.cookie, but req.headers not exist on generation stage

This bug report is available on Nuxt community (#c105)

@TrurlMcByte can you show a reproduction what you try to solve?

I've also been having issues getting generate to work with this version.
I had the "Cannot read property 'headers' of undefined" message from time to time, but I think that was only when I didn't have matching templates for all routes.
I'm using apollo-fetch to build a dynamic routes array and this is returning a promise, however none of the routes are getting generated—not even index.html.
I'm using the same code as another project, which is running 3.0.6 of this module and works.

Usual code for page content, like
export default {
  apollo: {
    pagebyhost: {
      includeNodeModules: true,
      query: pageGQL,
      prefetch: context => ({
        hostname: process.env.info.inHostName,
        url: context.route.params.url
      }),
      variables() {
        return {
          hostname: process.env.info.inHostName,
          url: this.$route.params.url
        };
      }
    }
  },
}

In plugin template checked only  if (process.server) case, but on generation stage it's also process.server only without req.headers (check manual).
I'm just add (in two places) checks like
            if (typeof req == 'undefined') {
              token = ''
            } else {

and all pages in this case will be generated

@papertokyo I'm also use apollo-fetch for routing itself (also for sitemap.xml), but problem not in routing. Error in page components with "prefetch" (SSR). And SSR in most cases is required for seo.

~base/pages/_url.vue
<template>

{{ pagebyhost[0].title }}

</template>

base/apollo/queries/page.gql
query page($hostname: String!, $url: String!) {
  pagebyhost(hostname: $hostname, url: $url) {
    id
    url
    title
    body
    meta
    updated_at
    getSite {
      id
      hostname
    }
  }
}

env.info injecting into nuxt.config before generation

I'm not familiar with generate function of nuxt. But as far I know you are generating the html files first and this call is not really compatible with prefetch of nuxt, because once deployed you are having only client side environment. Maybe check out to use asyncData or fetch insteat of apollo like this:
async asyncData({route,app}){
  const r = await app.apolloProvider.query({
    query: pageGQL,
     hostname: process.env.info.inHostName,
     url: route.params.url
   return {
     page: r.data
  }
}

If you are using a pure generate approach then it might make sense to check out the generate api to speed up with payload like described here: https://nuxtjs.org/api/configuration-generate

I'm also not across the inner workings, but afaik what Nuxt is doing during generate is doing nuxt build then nuxt start and hitting each route in the array you provide it. Prefetch is working when using the apollo property like below, so I don't think that's the issue.
apollo: {
    event: {
      query: eventsDetail,
      prefetch ({ route }) {
        return { eventQuery: `fields.slug=${route.params.slug}` }
      },
      variables () {
        return { eventQuery: `fields.slug=${this.$route.params.slug}` }
      },
      update (data) {
        return data.events[0]
      }
    }
  }

This is the code I'm using with @nuxtjs/apollo 3.0.6 on a _slug.vue page and nuxt generate is working as expected.

@papertokyo I have this issue only with new nuxt-apollo, inside build-in generated plugin. Really this issue not related to nuxt itself or apollo at all, but only to authentication functions of http-link, used by apollo.

facing the same issue here, everything works decently (using nuxt start/dev) except for the generated static files.
my component is super simple.
import QueryTestString from '~/apollo/queries/query-test-string';

export default{
    apollo: {
        testString: QueryTestString
    }
}

during generation I get the following error in the console:

==== Error report ====
Route: '/'
Error: Network error: Cannot read property 'headers' of undefined
    at new ApolloError (my-project\node_modules\apollo-client\bundle.umd.js:124:32)
    at my-project\node_modules\apollo-client\bundle.umd.js:1198:45
    at my-project\node_modules\apollo-client\bundle.umd.js:1630:21
    at Array.forEach (<anonymous>)
    at my-project\node_modules\apollo-client\bundle.umd.js:1629:22
    at Map.forEach (<anonymous>)
    at QueryManager.broadcastQueries (my-project\node_modules\apollo-client\bundle.umd.js:1622:26)
    at my-project\node_modules\apollo-client\bundle.umd.js:1125:35
    at <anonymous>

tried using the asyncData approach mentioned above, but no luck here.
I'd really appreciate if someone had an idea on how to resolve this

I have fixed it just by add
if(typeof req == 'undefined') return '';

directly in<EMAIL_ADDRESS>before each line with ``cookie.parse(req.headers.cookie || '')``` string.

Since version beta.6 you can provide a plugin path to your own function as described here:
https://github.com/nuxt-community/apollo-module/releases/tag/v4.0.0-beta.6
You can overwrite the getAuth with your own function to solve this. I will release a new version with the fix of cookie.parse function

excellent, the issue is solved


Write unit tests for protocol registration

(Parent Issue: #6)
This may be something to implement in more places than just the protocol registration, however testing here would be quite beneficial so users aren't confused as to why something doesn't work. Optionally, GitHub Actions can be set up to cargo test as a requirement before releases.

Yes for sure. We definitely lack testing for a lot if things so contributions are welcome 🤗


[STORM-1576] fix ConcurrentModificationException in addCheckpointInputs

Proposed patch addresses the ConcurrentModificationException while
creating a topology with an IStatefulBolt having more than one
input.

+1

+1 looks good to me

+1


Not able to push

Hi,
about a year ago I was writing with you about not working instance of this api. The same thing happened recentely so I decided to lunch my own instance to not bother you any more. However when working with your repo and specificly with script "rdf_parser.py" I've noticed that it doesn't work good when name of the file can't be converted to the integer. The thing is that when I downloaded fresh PG catalogue I've found out that in main catalogue apart from directories with rdf files there is one named 'test'. On reaching it your script crashed and as it seems ocassionally can ommit some rdf-files. I've prepered some fix on seperate branch but got error about lack of permissions to push so you can either add me to contributors (I guess then I will be able to push my changes) or you can apply them directly if you think they work for you. Changes start from line 133:
"if filename.endswith(".rdf"):
try:
id = int(os.path.basename(path))
input_file = os.path.join(path, filename)
output_file = os.path.join(args.output, f"{id}.json")
Book.convert_to_json(id, input_file, output_file)
print(f"Converted book: {id}")
except ValueError:
print(f"Error: Cannot convert file named '{os.path.basename(path)}' to integer")
continue
if name == 'main':
parser = argparse.ArgumentParser(
description="Convert RDF files to JSON format for faster parsing.")
parser.add_argument("-i",
"--input", help="The input RDF directory.",
default="res/rdf")
parser.add_argument(
"-o", "--output", help="The output JSON directory", default="res/json")
main(parser.parse_args())" I'm not an python expert so pardon me if I mixed up something.

Thanks for the heads up. I think I renewed the lease a couple of weeks back, but if you want 100% reliability, you are indeed better off creating your own instance.
I understand the issue. The usual way to contribute to is through a pull request. So, if you want to send in your patch you can just create a pull request of your branch.
I will also try to release a new sqlite3 database, so people will get a more upto date version of the catalogue.

Yeah, you were right - sorry, I'm quite new to contributing to someone else's repo. After creating a fork and then creating a pull request, everything worked as it should. And yeah, you're right that now the API works - it started working when I was in the middle of my work on my own instance. Nevertheless, I've decided to proceed anyway as I wouldn't like to rely on your instance. Apart from that, even if I use it from time to time, I wouldn't like to use your quota for the server or whatever way of charging users they use. Anyway, I will write to you in a few days (currently I'm a bit busy) because I have some issues while trying to load the generated DB, and I'm not sure where the problem originates from. I guess I'm doing something wrong, but because I barely know Python and databases, I'm not aware of the fact.

Ok, so as I said I have an issue while trying to load generated db. This is command I'm trying to execute:  "python manage.py load_db --clear C:\Users\mike8\Downloads\data_base\booksDataBase.db". And the script fails with error: "django.db.utils.IntegrityError: UNIQUE constraint failed: api_agenttype.name"
In attachement the output I get from terminal while trying to execute load_db script:

Since you've successfully created yours instance I don't expect it is somekind of the issue with your code, but maybe they (the PG team) changed something in the data they provide that now causes the issue. I would greatly appreciate your assistance here or any other suggestions on what may cause the issue.

Apologies for replying late. I will take a look at this today. Will also release a more recent snapshot DB.


Failed to start the Kernel: Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname

Applies To

[X] Notebooks (.ipynb files)
[ ] Interactive Window and/or Cell Scripts (.py files with #%% markers)

What happened?
I tried to start a notebook that's been working fine for a year, however today no notebooks can run.
VS Code Version
Version: 1.84.1 (user setup) Commit: 2b35e1e6d88f1ce073683991d1eff5284a32690f Date: 2023-11-06T12:35:59.022Z Electron: 25.9.2 ElectronBuildId: 24603566 Chromium: 114.0.5735.289 Node.js: 18.15.0 V8: <IP_ADDRESS>-electron.0 OS: Windows_NT x64 10.0.19045
Jupyter Extension Version
v2023.10.1003070148
Jupyter logs
11:44:36.755 [info] Handle Execution of Cells 0 for ~\local_projects\Jupyter\Notebooks\T.Base.ipynb
11:44:36.756 [info] Starting Kernel startUsingPythonInterpreter, .jvsc74a57bd0b66976817410ff70648f0320b55f494704ad45738efd372816a4e6a6c143b5dd.~\local_projects\Jupyter\.venv\Scripts\python.exe.~\local_projects\Jupyter\.venv\Scripts\python.exe.-m#ipykernel_launcher  (Python Path: ~\local_projects\Jupyter\.venv\Scripts\python.exe, Poetry, .venv, 3.11.6) for '~\local_projects\Jupyter\Notebooks\T.Base.ipynb' (disableUI=false)
11:44:36.758 [error] Kernel Launcher. launch, Class name = Fv, completed in 1ms, has a falsy return value, Arg 1: "~\\local_projects\\Jupyter\\.venv\\Scripts\\python.exe.c:\\Users\\<username>\\local_projects\\Jupyter\\.venv\\Scripts\\python.exe.-m#ipykernel_launcher", Arg 2: 60000, Arg 3: "/c:/Users/<username>/local_projects/Jupyter/Notebooks/T.Base.ipynb", Arg 4: "~\\local_projects\\Jupyter\\Notebooks", Arg 5: "" [Error: Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
	at ~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\351.node.js:1:3100
	at ~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\351.node.js:1:7210
	at a (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\351.node.js:1:10200)
	at ~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\351.node.js:1:9686
	at ~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\351.node.js:1:2742
	at Server.o (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\351.node.js:1:1458)
	at Object.onceWrapper (node:events:628:26)
	at Server.emit (node:events:513:28)
	at emitErrorNT (node:net:1767:8)
	at process.processTicksAndRejections (node:internal/process/task_queues:82:21)]
11:44:36.758 [error] Failed to connect raw kernel session: Error: Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
11:44:36.758 [error] Failed to connect raw kernel session: Error: Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
11:44:36.762 [info] Process Execution: ~\local_projects\Jupyter\.venv\Scripts\python.exe -c "import ipykernel; print(ipykernel.__version__); print("5dc3a68c-e34e-4080-9c3e-2a532b2ccb4d"); print(ipykernel.__file__)"
11:44:37.078 [warn] Error occurred while trying to start the kernel, options.disableUI=false Error: Failed to start the Kernel '.venv (Python 3.11.6)'.
View Jupyter [log](command:jupyter.viewOutput) for further details. Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
    > at new Qi (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\extension.node.js:2:2213037)
    > originalException = Error: Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
11:44:37.079 [warn] Kernel Error, context = start Error: Failed to start the Kernel '.venv (Python 3.11.6)'.
View Jupyter [log](command:jupyter.viewOutput) for further details. Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
    > at new Qi (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\extension.node.js:2:2213037)
    > originalException = Error: Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
11:44:37.084 [info] Process Execution: ~\local_projects\Jupyter\.venv\Scripts\python.exe -c "import ipykernel;print('6af208d0-cb9c-427f-b937-ff563e17efdf')"
11:44:37.368 [info] Dispose Kernel '~\local_projects\Jupyter\Notebooks\T.Base.ipynb' associated with '~\local_projects\Jupyter\Notebooks\T.Base.ipynb'
11:44:37.369 [error] Error in execution Error: Failed to start the Kernel '.venv (Python 3.11.6)'.
View Jupyter [log](command:jupyter.viewOutput) for further details. Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
    > at new Qi (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\extension.node.js:2:2213037)
    > originalException = Error: Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
11:44:37.369 [error] Error in execution (get message for cell) Error: Failed to start the Kernel '.venv (Python 3.11.6)'.
View Jupyter [log](command:jupyter.viewOutput) for further details. Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
    > at new Qi (~\.vscode\extensions\ms-toolsai.jupyter-2023.10.1003070148-win32-x64\out\extension.node.js:2:2213037)
    > originalException = Error: Provided host <IP_ADDRESS> could NOT be bound. Please provide a different host address or hostname
11:44:37.421 [info] End cell 0 execution @ undefined, started @ undefined, elapsed time = 0s

Coding Language and Runtime Version
Python 3.11.6 (also 3.8.10 previously)
Language Extension Version (if applicable)
No response
Anaconda Version (if applicable)
No response
Running Jupyter locally or remotely?
Local

This seems to be the same issue as https://github.com/microsoft/vscode-jupyter/issues/13598

After a reboot of my PC it seemed happy again. Something must've been hogging the port that jupyter wanted or something


Fixing link for article which moved to a new domain for hosting hugo on firebase

The article remains valid and accurate, just moved to a new domain.

Ok, thanks
On Sun, Sep 2, 2018 at 8:18 AM Hanzei<EMAIL_ADDRESS>wrote:

PR for doc changes need to go to https://github.com/gohugoio/hugoDocs.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/gohugoio/hugo/pull/5137#issuecomment-417926843, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AGBqvetongceVi5GKSTxDWknxiTRiQw3ks5uW8yxgaJpZM4WSq6A
.


Add possibility to override config

Sometimes frontend devs just want that camelCase rather then your sweet snake_case, so you need to add custom pydantic config to your models :/

Great, thanks! :rocket:
I just added tests for it and it's now merged :tada:

@tiangolo Sorry I havent written any tests. This is my first real open-source contribution, thank you for the merge :D


[MM-13500] Loads the profiles for GMs for groups that are not visible

Summary
To allow non-visible users to be shown when creating Direct/Group messages in the MoreDirectChannels modal, this PR modifies the load profiles for GM process to fetch those profiles that are not visible too.
Ticket Link
MM-13500
Checklist

[x] Ran make check-style to check for style errors (required for all pull requests)
[x] Ran make test to ensure unit and component tests passed
[ ] Added or updated unit tests (required for all new features)
[ ] Needs to be implemented in mobile (link to PR or User Story)
[ ] Has server changes (please link)
[ ] Has redux changes (please link)
[ ] Has UI changes
[ ] Includes text changes and localization file (.../i18n/en.json) updates
[ ] Touches critical sections of the codebase (auth, posting, etc.)

I'm a little worried about doing this here for performance reasons. Some users who have been using Mattermost for a year or more could have a significant number of GM channels (1000+) hidden. As implemented, we would request all these users on app load which in a worst case scenario would be (7 * num of GMs). We already don't scale very well when a user has been in tons of a DMs or GMs as is, I wouldn't want to make that experience any worse.
What if we instead look at loading this profiles on demand when they're needed in the More Direct Message modals (e.g. after we search)?

What if we instead look at loading these profiles on demand when they're needed in the More Direct Message modals (e.g. after we search)?

Makes sense... thanks @jwilander, I'll have a look and come back with a different approach :)

This issue has been automatically labelled "stale" because it hasn't had recent activity.
A core team member will check in on the status of the PR to help with questions.
Thank you for your contribution!
/cc @jasonblais @hanzei

@mgdelacroix Are there next steps for this PR?

@jasonblais it requires some more effort than expected and got reprioritised, but it's clear what's need to be done. I'll be the next thing on my queue


add filename arg to write yaml for mesh and bs

Closes #336
Changes
Added filename arg to write_yaml_mesh and write_yaml_band_structure  methods of PhonopyGruneisen class. Allows users to modify file names when saving these yaml and hdf5 files when using gruneisen python api

Hi @atztogo, This small change should fix the issue I opened a while ago. I hope it is fine with you as well.

Thanks for your updates.
Could I ask one thing? Could you make the scipy dependency as another PR?
I didn't like to include scipy as a dependency due to potential installation issues in the past. However, if we decide to include it, we need to carefully consider the scipy version. Not everyone will be able to use the latest versions, so leaving the version unspecified should be fine in most cases. Additionally, we’ll need to optimize the GitHub workflow to ensure scipy is installed efficiently. I can handle this aspect, but I suggest adding scipy to the following line:
https://github.com/phonopy/phonopy/blob/1cd8cfd41d517606b8d3d29a48313c9fca74feab/.github/workflows/phonopy-pytest-conda-numpy2.yml#L32
as well as in the other workflows.


terminal.integrated.rightClickCopyPaste isn't working on x64 build

VSCode Version: Code 1.15.0 (8b95971d8cccd3afd86b35d4a0e098c189294ff2, 2017-08-09T20:16:18.034Z)
OS Version: Windows_NT x64 10.0.15063
Extensions:

Extension
Author (truncated)
Version

html-snippets
abu
0.1.0

vscode-css-formatter
aes
0.0.2

swagger-viewer
Arj
1.4.0

vscode-eslint
dba
1.2.11

vscode-great-icons
emm
2.1.14

vscode-tfs
iva
0.6.0

sublime-babel-vscode
jos
0.2.6

vscode-csscomb
mrm
5.1.0

vscode-less
mrm
0.6.3

csharp
ms-
1.12.0

vetur
oct
0.9.3

rewrap
stk
1.4.2

highlight-trailing-white-spaces
yba
0.0.2

ActionScript3
yop
0.0.1

(2 theme extensions excluded)

Steps to Reproduce:

Enable terminal.integrated.rightClickCopyPaste (seems to be true by default)
Select text and right click in the integrated terminal window. Context menu appears.

Reproduces without extensions: Yes

Also running into this.
VSCode info:

Version 1.15.0
Commit 8b95971d8cccd3afd86b35d4a0e098c189294ff2
Date 2017-08-09T20:09:15.006Z
Shell 1.6.6
Renderer 56.0.2924.87
Node 7.4.0
Architecture x64

Same reproduction steps as nborko

Repro'd this. It looks like the mousedown event (https://github.com/Microsoft/vscode/blob/master/src/vs/workbench/parts/terminal/electron-browser/terminalPanel.ts#L178) is not received when there is text selected in the terminal. It doesn't matter if you right-click inside or outside the selection.

Thanks for the tip @ihalip. Looks like this line is the problem:
https://github.com/sourcelair/xterm.js/blob/6e9d60d76d6cfb3d279f9e58499ba62ca6af479c/src/SelectionManager.ts#L319


Write tests for calling CLI arguments downstream to ensure correctly-returned types

Issue:  Currently we don't assert that passed-in args are the correct type passed to downstream code,  causing runtime exceptions. See example of issue here.
There's a couple approaches we can try here, from least effort to most as far as I see it, most manual to most automated:

Adding assert statements to all current arg-level actions in cli_evaluate()
Writing several unit tests that take in mock parsed args and unit-testing only cli_evaluate()
Breaking up cli_evaluate() into likely into two methods, one that starts from the method signature, and one that starts at line 309, where the evaluation logger starts, so we can test the part of the method where we assign variables from the CLI directly, and unit test that,

Happy to discuss any of these and open to other approaches if they've been previously discussed, and also happy to take this as an issue.

In my opinion, raising proper errors in the main code (not the tests) is preferable to using asserts.
Pros:

this repo can be used as a submodule or package in a larger pipeline that can try to catch specific bugs.
described here https://stackoverflow.com/a/40183030

Proper exceptions can also be pytested:
https://stackoverflow.com/questions/23337471/how-do-i-properly-assert-that-an-exception-gets-raised-in-pytest

One downside of raising errors in the code ahead of merge to main is that you'd have to know ahead of runtime that the code you're adding to the command line args requires new error handling. But, if all of the arguments are checked in a pre-merge test, you wouldn't be able to run the package to begin with and merge the code.
What we'd like to test is automatically adding new command line args that get parsed correctly downstream:
As a specific case, in this case, this environment variable should be a string rather than a boolean:
   if args.trust_remote_code:
        os.environ["HF_DATASETS_TRUST_REMOTE_CODE"] = (
            args.trust_remote_code if args.trust_remote_code else True
        )
        args.model_args = (
            args.model_args
            + f",trust_remote_code={os.environ['HF_DATASETS_TRUST_REMOTE_CODE']}"
        )

Ultimately this causes an error in cli_evaluate(), so we could perhaps start by adding try/catch exceptions to each of the input CLI args.

Maybe pydantic can help somehow
https://github.com/pydantic/pydantic-settings/issues/209
https://www.youtube.com/watch?v=7aBRk_JP-qY
https://youtu.be/zN4VCb0LbQI?si=zZyrJ9cjkm00_Wag&t=514

Closed with https://github.com/EleutherAI/lm-evaluation-harness/pull/1566


feat(subscriptions): sub_blocks, watch_contract_event

subscribe_blocks and watch_blocks using ws.
watch_contract_event. Substitute for subscribe_events_by_type and subscribe_log in ethers as currently there are only two types of subscribe_* methods which are _blocks and _pending_transactions.

Made some minor changes, largely cosmetic.


License

Thank you for the implementation! I would be glad to source it for an own project, but so far could not do it "legally". Would you mind adding a license to it, so it would be clear if you encourage/discourage derivatives, enhancements, etc?

I added the MIT license.

Thank you again


[DOCFIX]Update docs/cn/Running-Spark-on-Alluxio.md

[DOCFIX]Update docs/cn/Running-Spark-on-Alluxio.md

Test PASSed.
Refer to this link for build results (access rights to CI server needed):
https://amplab.cs.berkeley.edu/jenkins//job/Alluxio-Pull-Request-Builder/18507/
Test PASSed.

Merged build finished. Test PASSed.


Nix: clean-up (develop)

Make jemalloc an optional dependency
Nix: Get rid of static build remnants
Nix: reformat files with nixfmt

Waiting on 5a68867 to make it to develop


Wrap any function that returns primitive

What would you like to be added?
In go function that would return int does not work as expected with go template as any function call is wrapped with (get (fromJson. The fromJson would convert any integer to float64.
Why is this needed?
To work with idiomatic go code and not worry about go template.

So I hacked up a weird workaround for this issue via this change to bootstrap.go:

// typeatest is the implementation of the go syntax `_, _ := m.(t)`.
func typetest(typ string, value, zero any) []any {
	if TypeIs(typ, value) {
		return []any{value, true}
	}
	return []any{zero, false}
}

// typeassertion is the implementation of the go syntax `_ := m.(t)`.
func typeassertion(typ string, value any) any {
// canCastToInt is a workaround for JSON always representing numbers as
// float64's. If a value is a float64 with no fractional value, it's considered
// to be an "integer like" float and therefore will pass when type checked via
// typetest or typeassertion.
	canCastToInt := TypeIs("float64", value) && (Float64(value)-Floor(value)) == float64(0)

	if typ == "int" && canCastToInt {
		return Int(value)
	} else if typ == "int32" && canCastToInt {
		return Int(value)
	} else if typ == "int64" && canCastToInt {
		return Int64(value)
	}

	if !TypeIs(typ, value) {
		panic(fmt.Sprintf("expected type of %q got: %T", typ, value))
	}
	return value
}

It could very well bite us if we need something to be an integral float64 but I don't think we'll ever actually hit that case.

That's great! I'm not sure how the type assertion would be included in the transpiled code for particular function call or rather it's returned value.

Thinking a bit more on I think a better solution would be to add a Cast option to the Call AST Node as that'll be less error prone.


Cannot find pytkdocs if running mkdocstrings in a non-default Python interpreter

Cannot find pytkdocs if running mkdocstrings in a non-default Python interpreter.

Install mkdocs and mkdocstrings into a virtualenv
Deactivate the virtualenv
Create a simple mkdocs project that invokes mkdocstrings
Run path/to/python/in/virtualenv/python -m mkdocs serve

Result:
INFO    -  Building documentation...
INFO    -  Cleaning site directory
ERROR   -  Error reading page 'protobuf_helpers/path.md': [Errno 2] No such file or directory: 'pytkdocs': 'pytkdocs'

[Errno 2] No such file or directory: 'pytkdocs': 'pytkdocs'

Information (please complete the following information):

OS: macOS
mkdocstrings version: 0.12.0

Additional context
This looks like a strange use-case on the surface but I ran into when setting up mkdocs as a Run Configuration in PyCharm.
Possible solution: handlers/python.py could always launch the subprocess using sys.executable
- cmd = ["pytkdocs", "--line-by-line"]
+ cmd = [sys.executable, "-m", "pytkdocs", "--line-by-line"]

Hi, thanks again for the report and the suggested solution! I'd accept it if you send this exact change in a PR :slightly_smiling_face:


Add different pixel types

Example:  ShortPixel, IntPixel, etc.  These are currently found in individual extensions, where they are broadly duplicated.

Because Library.Utilities was designed to be independent of LANDIS-II and the pixel types are dependent on the spatial library, this is not the appropriate place for this supporting classes.  Should be in spatial library.


chore(gwos-evm): bump Polyjuice version to v1.5.3

Polyjuice Diff
https://github.com/godwokenrises/godwoken/commit/cf2fe66e0e8c8e1ba85e085b26301046a3a97404#diff-6e681dad70caa6076933bf5c14537ab6728278f6c73077248100324adba6e196

godwoken-builtin-binaries

The GitHub action workflow prepare-builtin-binaries.yml will push binaries to submodule repo https://github.com/godwokenrises/godwoken-builtin-binaries once this PR is merged.

Was this workflow tested?
@jjyr

godwoken-builtin-binaries

The GitHub action workflow prepare-builtin-binaries.yml will push binaries to submodule repo https://github.com/godwokenrises/godwoken-builtin-binaries once this PR is merged.

Was this workflow tested? @jjyr

The integration test CI failed because the binaries repo hasn't been updated. But the failure blocks the merge, which is an unexpected locking.
We can solve this by modifying kicker by supporting a new argument --no-builtin-binaries in the kicker build. The kicker appends --features gw-config/no-builtin after the cargo build command when the arguments are activated.

We can solve this by modifying kicker by supporting a new argument --no-builtin-binaries in the kicker build. The kicker appends --features gw-config/no-builtin after the cargo build command when the arguments are activated.

The builtin consensus config and binaries are not required on a Godwoken devnet, so --features gw-config/no-builtin is appended to cargo build arguments.

https://github.com/godwokenrises/godwoken-kicker/pull/346


Update ntp.conf.epp to fix issue when upgrading from NTP 4.2.0

There is a small difference between the old erb template used in NTP 4.2.0 and the new epp templates. This caused a change in the ntp config file checksum upon upgrade from NTP 4.2.0 and resulted in the service being restarted.

Integrated manually. Thanks!


Aren't There Four Jupyter Notebooks?

The README says there are three

Thank you for noticing this. I have fixed the issue.


render header with code quote error

wrong position which ignore the '#' has been hidden.
size is on the base of original font size, not rendered size.

css - why setDecorations divide TextEditorDecorationType into ViewLines and ViewOverlays? - Stack Overflow
need some explain on ViewOverlays and ViewLines which now cause the border size is not match with font-size

Border do not match correctly if the font size if too big or small · Issue #33 · leodevbro/vscode-blockman has the same problem.
Get editor line height (px) and character space-width (px) by VSCode API · Issue #125341 · microsoft/vscode


Propagate track_kind down through calls instead of using parent.

I took a second look at your PR.  I didn't notice before that you're using _set_parent(), which is likely to go away as we move to C++.  To anticipate this change, Here is another way to do this - we pass the track kind down through the function calls as it goes.  What do you think?

Hi!
Yeah, I thought the _set_parent() might have to change in the future. Better to deal with it now I guess :) I'm sure this solution will work nicely as well, but I have to make sure I support the Stack vs Track case Robyn mentioned in nested timelines. In my latest push I added a function looking for a Track to make sure there is a kind attribute in the item.
I'll look at this with fresh eyes in the morning again.

Cool.  If you have a unit test to add for that case, that would be great.  I think this will work, since _write_stack will pass track_kind down into write_otio without altering it.

Sure. I'll work on it tomorrow. Thanks!

I'll just close this since I did the same changes in my repo.


Feature/Added Feedback form for users to send issues,suggestions .

Hello Project Admin,
I have added a Feedback form page in your website where users can send their reactions/feedback by adding their name and email and , it is a working form and admin will recieve notifiactions on his email for every user reaction.
I embedded google map of ghaziabad Uttarpradesh , since you stay there.
This is how whole feedback page looks 👇🏼

I used my react skills to create contact.jsx component and also wrote code in App.jsx for routing and animation in form.
@1Shubham7 Please add label of level  before merging so that i can get relevant points for my work.
Issue Ticket Number:
Feat #81

Please add label of level before merging

Please add level label otherwise it won't add to leaderboard

@1Shubham7 Please add label to this PR, I am not available in the leader board😥


Add doi's (and links) to Net NeuroSci reading list

This is a great reading list that I've shared with colleagues interested in getting started with network neuroscience. To try to make things a bit easier, I added DOI's (and links) for each of the items.

Thank you @dankessler!! Way to go 🎉 ✨


Uploading artifacts to existing tag/release

Either I'm missing something basic, or there is a weird bug.
When I'm using this code in my workflow and triggering workflow using 'release create' event, action works nice:
      - name: Upload Release assets
        uses: softprops/action-gh-release@v1
        with:
          files: dist/**

But if I'm calling my workflow in another way [i.e. via push event or with workflow_call] and providing tag_name, it fails with "resource":"Release","code":"already_exists","field":"tag_name".
       - name: Upload Release assets
         uses: softprops/action-gh-release@v1
         with:
            files: dist/**
            tag_name: 'refs/tags/v<IP_ADDRESS>'

In both cases, Github tag and release already existed before I called my workflow. So why in the first case it worked, and in another case failed?
Any idea how to explain that?
Thanks, Vitaly

If I understand the concept correctly, it should be triggered only once per each TAG.
In case you have to update existing release, you have to rename/delete it before before.
Since you want to update some existing release, I assume there are some code changes, so the tag/version should be patched.
@vitalykarasik

I am also interested in the development of this, in my use case I have https://github.com/release-drafter/release-drafter which generates a draft release and tag with change-log and manages version resolution based on branch/label rules, follow by a custom workflow which will generate assets upon the publication of the tag & release which I would like to ideally attach assets to

You can use  gh release upload relase_name file_path to upload file to a existing relase, for example:

create a release on tag pushed in release_linux_darwin_targets.yml
upload build artifacts of linux and darwin targets in release_linux_darwin_targets.yml
upload build artifacts of windows targets in release_windows_targets.yml
https://github.com/ascpkg/asc/blob/main/.github/workflows/release_linux_darwin_targets.yml
https://github.com/ascpkg/asc/blob/main/.github/workflows/release_windows_targets.yml


Refactor/int

This patch replaces the axiom %Int with a builtin .Int.
Int is so deeply geared into Thorin that it doesn't really make sense to have it as an "optional" axiom. What is more, we sometimes get weird bootstrapping problems because of this.

FE syntax changes from %Int to .Int (as already discussed: we cannot really make %Int part of a dialect)
removed isa_sized_type in favor of isa<Tag::Real>(def) or def->isa<Int>()

As a next step, I'd like to rename .Int to .Idx (and world.type_int(n) to world.type_idx(n)) and use the terminology .Int n = .Idx 2^n. The current one is really confusing.


Add Nullable Metric getter to MetricsContainerImpl.

MetricsContainerImpl currently creates a Counter with a given name when attempting to read that Counter. In order to read potentially non-existent Counters, a getter that doesn't create a Counter on behalf of the reader is necessary. 'tryGetCounter' introduces a way to retrieve null Counter values.

@bjchambers Ben, could you please review this?

Coverage decreased (-0.0003%) to 69.543% when pulling bf0b5d52d8cecdfcebed91489d75217a2d81e6fc on pedapudi:nullable-metric-getter into cfbdb6115eca25fd3f512355aaf4e9be80f5ed94 on apache:master.


don't use eBPF in a couple of tests

There really should be two variants - with and without eBPF - but the latter is broken due to #2689.

I've merged this so we can get some builds through on master again.

:+1:


Support dnd5e versatile field.

Based on discord conversation https://discord.com/channels/170995199584108546/670336046164213761/1088860790834069605.
Currently when there are multiple roll groups and formulas, the last formula gets added to the versatile formula which is incorrect behavior. Instead the versatile formula should entirely replace all other formulas.
For example, assume we have a very cool weapon that is +1 and does 2d6 damage and versatile 2d8 damage with a saving throw for 4 fire damage. This is the setup:

Formula: 2d6 + @mod + 1 | Slashing
Formula: 4 | Fire
Versatile: 2d8 + @mod + 1
Two Roll groups, A and B with A having the first formula and B having the second formula.

Rolling via the rollgroups buttons works fine but if you roll using the Versatile button instead of rolling 2d8 + @mod  + 1 it will roll 2d8 + @mod + 1 + 4. The 4 seems the originate from the second formula. This is not intended behavior I think and is confusing for the user.
A solution would be to completely replace the versatile button with its own roll group or disable it or something.

I feel like a similar problem could be made with Other Formula?
I run my Longsword like this:

Feels like Versatile and Other Formula could be moved into respective roll groups as you suggest

This is where Roll Groups diverges from its predecessor (Minimal Rolling Enhancements); it won't remove the need for the Versatile field or hide it. I think the simplest solution is to select which group the Versatile button rolls, and - as in core - replace the first formula in that group with its own formula.
That would cover both use cases presented here but would not cover the use case of very complicated roll group setups.
As for the Other Formula field, my opinion is that it isn't a damage roll (and core doesn't treat it as such). It's used for related rolls such as, "On a hit, roll a d6, if you roll 5 or higher, then [something happens]." Given its nature, I don't think it needs to be touched by this module.


[BOW-129] Import media/assets from previous shows

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (b407895) 15.43% compared to head (380672a) 15.43%.

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #155   +/-   ##
=======================================
  Coverage   15.43%   15.43%
=======================================
  Files           5        5
  Lines         998      998
  Branches        2        2
=======================================
  Hits          154      154
  Misses        844      844

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


x-input的type 为 number 时使 max 限制最长输入字符，并且禁止输入字母 e

在项目中遇到 input 的 type 为 number 时 ，maxlength 属性会失效无法限制最大输入字符。并且可以输入字母 e

Codecov Report

:exclamation: No coverage uploaded for pull request base (v2@484fc3c). Click here to learn what that means.
The diff coverage is n/a.

@@          Coverage Diff          @@
##             v2    #3481   +/-   ##
=====================================
  Coverage      ?   19.04%
=====================================
  Files         ?      226
  Lines         ?     5597
  Branches      ?      725
=====================================
  Hits          ?     1066
  Misses        ?     4412
  Partials      ?      119

Impacted Files
Coverage Δ

src/components/x-input/index.vue
3.5% <ø> (ø)

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 484fc3c...5d86b09. Read the comment docs.


increase coverage on core.py and xml.py with specially crafted HTML files

Depends on #1, to be merged after
I tried to reach some corner cases that were not covered
Some portions of the code still seem unreachable though, like
core.py:436:
            elif element.tag == 'hi':
                if element.text is not None or element.tail is not None:

All the  tags are cleared on some step before

Added a test for txttocsv() and changed it to use string formatting instead of string concat, which is not efficient (it creates a new string on each + operation)

Codecov Report

Merging #2 into master will increase coverage by 4.13%.
The diff coverage is 84.61%.

@@            Coverage Diff             @@
##           master       #2      +/-   ##
==========================================
+ Coverage   78.05%   82.19%   +4.13%
==========================================
  Files           6        6
  Lines         729      730       +1
==========================================
+ Hits          569      600      +31
+ Misses        160      130      -30

Impacted Files
Coverage Δ

trafilatura/xml.py
91.17% <ø> (+21.56%)
:arrow_up:

trafilatura/utils.py
73.46% <84.61%> (+0.27%)
:arrow_up:

trafilatura/core.py
87.61% <0%> (+1.83%)
: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 436d062...245d35a. Read the comment docs.

Wow it's so weird, I had bugs on GitHub on your repository, couldn't edit my pull requests and view the complete diffs
It turns out it was uBlock origin that was blocking some requests containing "adbar", because it's ony easylist https://github.com/easylist/easylist/blob/8a1791bc8b7918bbc9f14f26611443e3d2477ea9/easylist/easylist_general_block.txt#L1651


X.A.DynamicWorkspaces: Remove duplicates when melding

Lest we forget to include this in the new release, I took the liberty of packing @liskin's fix up as a PR.  We should probably still the root cause of it all, but I see us not having the time for that in the new few days (mid-October, folks!).  Hence this only refers to the issue as Related: and not Fixes: (even though it does fix the problem, but I figured an open issue would give us some more motivation down the road than a closed one),
Description
When removing a workspace and distributing its windows, it's important
to remove any duplicates that may be there due to, for example, usage of
X.A.CopyWindow.  X will only draw one of these window, leading to some
artifacts.
Related: https://github.com/xmonad/xmonad-contrib/issues/565
Co-authored-by: Tomas Janousek<EMAIL_ADDRESS>Checklist

[x] I've read CONTRIBUTING.md

[x] I've considered how to best test these changes (property, unit,
manually, ...) and concluded: @ixzh confirmed that this fixes their issue in https://github.com/xmonad/xmonad-contrib/issues/565

[x] I updated the CHANGES.md file

[n/a] I updated the XMonad.Doc.Extending file (if appropriate)

Thanks! I removed #565 from the 0.17 release project for now.


Add en_us doc install_from_source.md.

Codecov Report

Merging #352 into develop will increase coverage by 0.00%.
The diff coverage is 33.33%.

@@           Coverage Diff            @@
##           develop     #352   +/-   ##
========================================
  Coverage    52.92%   52.92%
========================================
  Files          244      244
  Lines        23035    23035
========================================
+ Hits         12191    12192    +1
  Misses        9434     9434
+ Partials      1410     1409    -1

Impacted Files
Coverage Δ

bfe_server/bfe_listener.go
0.00% <0.00%> (ø)

bfe_config/bfe_conf/conf_basic.go
65.15% <50.00%> (ø)

bfe_http2/writesched.go
79.38% <0.00%> (-1.53%)
:arrow_down:

bfe_spdy/server_conn.go
78.53% <0.00%> (-0.45%)
:arrow_down:

bfe_http2/server.go
71.67% <0.00%> (ø)

bfe_spdy/server_write_sched.go
80.00% <0.00%> (+1.53%)
:arrow_up:

...e_modules/mod_trust_clientip/mod_trust_clientip.go
46.15% <0.00%> (+3.29%)
: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 f811ad0...2efa396. Read the comment docs.


[Addition]: Sweet Shadow Nightingale

Hotspot b58 Addresses
11s7Lvza5vVHT6qBsRJ6Cd1K6KEvpzbrHZHmVTQjx6J6BHnKcS7
Discord Handle
proslasher#2590
Reason(s)
Hotspot is clearly manipulating packets as all of their RSSI's and SNR's are within tolerance and the hotspot has never had a single invalid transaction. Transaction receipts show numerous impossible radio reception stats such as -126 dBm and -14.8 dB at 35 KM.
Interestingly, the forwarded hotspots seem to have one or two "actual" poc events (mammoth snowy ladybug) but that's also impossible with a 2.5 KM distance, a -96 RSSI and a 10 dB SNR.

Bumping.


Seek help

Challenge Counting Cards has an issue.
User Agent is: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2564.103 Safari/537.36.
Please describe how to reproduce this issue, and include links to screenshots if possible.
My code:

var count = 0;

function cc(card) {

  // Only change code below this line
   //var count=0;

   if(card == 7||8||9){
      count=0;
      return count +" Hold";}

    if(card == 2||3||4||5||6){
    count++;
    return count +" Bet"; }

 if(card == 10||'J'||'Q'||'K'||'A'){
     --count;
     return count+" Hold";}

}

  //if

  //return "Change Me";
  // Only change code above this line

// Add/remove calls to test your function.
// Note: Only the last will display
//cc(7); cc(8); cc(9);

can some one tell me why is this code not working?

Not sure about javascript, but you usually can't do this: if (card == 7||8||9), you have to write if ((card == 7) || (card == 8)...), so on. The first if will always evaluate as true, because you'd have a if (8).

Sorry, but Issues are not for code problems.  Please ask for help in Help JavaScript Chat.
Thanks and Happy Coding!

Use some case statements in there instead.


Can't handle vdropzone-sending

I'm trying to  use the vdropzone-sending event but it's not making sense. Or it's not working now?

Needed to bundle and then use.

Ah thanks for reporting this, yes the latest code base needs to be built and released to non
Cheers

@rowanwins  Could you please release it to NPM? I need the sending event badly :-)

Hi @miloandco , I've just updated npm the new version is 2.1.3

Awesome, thanks @rowanwins


Cannot read property 'create' of undefined - vendor.bundle.js  on ng build --prod

Bug Report or Feature Request (mark with an x)
- [X] bug report
- [ ] feature request

Versions.
@angular/cli: 1.2.1
node: 6.10.3
os: win32 x64
@angular/animations: 4.3.0
@angular/common: 4.3.0
@angular/compiler: 4.3.0
@angular/core: 4.3.0
@angular/forms: 4.3.0
@angular/http: 4.3.0
@angular/platform-browser: 4.3.0
@angular/platform-browser-dynamic: 4.3.0
@angular/router: 4.3.0
@angular/cli: 1.2.1
@angular/compiler-cli: 4.3.0
@angular/language-service: 4.3.0
Repro steps.
run > ng build --prod
then open visual studio 2017 and run the project through iisexpress.
the below error is shown the browser console.
everything works fine in dev mode.
The log given by the failure.
vendor.fbd28cef4840b6d01817.bundle.js:1 Uncaught TypeError: Cannot read property 'create' of undefined
at vendor.fbd28cef4840b6d01817.bundle.js:1
at t.invoke (polyfills.3ae08eaf6129a55130cb.bundle.js:1)
at Object.onInvoke (vendor.fbd28cef4840b6d01817.bundle.js:1)
at t.invoke (polyfills.3ae08eaf6129a55130cb.bundle.js:1)
at r.run (polyfills.3ae08eaf6129a55130cb.bundle.js:1)
at t.run (vendor.fbd28cef4840b6d01817.bundle.js:1)
at e._bootstrapModuleFactoryWithZone (vendor.fbd28cef4840b6d01817.bundle.js:1)
at e.bootstrapModuleFactory (vendor.fbd28cef4840b6d01817.bundle.js:1)
at Object.aR8+ (main.b7d0a0c8ea704c21f7e5.bundle.js:1)
at r (inline.c662fd847664bfd23648.bundle.js:1)
Desired functionality.

.
I am building an asp.net core app using .net framework 4.6.2 and Angular 4. Everything is working fine in
dev mode but when I run ng build -- prod and then run iisexpress from visual studio the above error is shown in chrome.
-- I have tried uninstalling @angular/cli and re-installed the latest version but still the error persists.
here is the package.json from the project
{
"name": "webtool",
"version": "0.0.0",
"license": "MIT",
"scripts": {
"ng": "ng",
"start": "ng serve",
"build": "ng build",
"test": "ng test",
"lint": "ng lint",
"e2e": "ng e2e"
},
"private": true,
"dependencies": {
"@angular/animations": "^4.0.0",
"@angular/common": "^4.0.0",
"@angular/compiler": "^4.0.0",
"@angular/core": "^4.0.0",
"@angular/forms": "^4.0.0",
"@angular/http": "^4.0.0",
"@angular/platform-browser": "^4.0.0",
"@angular/platform-browser-dynamic": "^4.0.0",
"@angular/router": "^4.0.0",
"core-js": "^2.4.1",
"rxjs": "^5.1.0",
"zone.js": "^0.8.4",
"jquery": "^3.2.1",
"crypto-js": "^3.1.9-1",
"file-saver": "^1.3.3",
"ngx-chips": "^1.4.0"
},
"devDependencies": {
"@angular/cli": "^1.2.1",
"@angular/compiler-cli": "^4.0.0",
"@angular/language-service": "^4.0.0",
"@types/jasmine": "~2.5.53",
"@types/jasminewd2": "~2.0.2",
"@types/node": "~6.0.60",
"bootstrap": "~3.3.7",
"bootswatch": "~3.3.7",
"codelyzer": "~3.0.1",
"font-awesome": "~4.7.0",
"jasmine-core": "~2.6.2",
"jasmine-spec-reporter": "~4.1.0",
"karma": "~1.7.0",
"karma-chrome-launcher": "~2.1.1",
"karma-cli": "~1.0.1",
"karma-coverage-istanbul-reporter": "^1.2.1",
"karma-jasmine": "~1.1.0",
"karma-jasmine-html-reporter": "^0.2.2",
"protractor": "~5.1.2",
"ts-node": "~3.0.4",
"tslint": "~5.3.2",
"typescript": "~2.3.3",
"w3-css": "~4.0.4"
}
}
Please let me know if you need any other  information.

I'm sorry but this doesn't seem like a problem with the CLI, generated projects, or the build process. It's probably related to your code or some library you are using. If it works in dev but not in prod, perhaps one of the libraries cannot be properly minified.


Add 'Regulatory Comments' section to Publications page

We have filed a number of comments with US and international regulators. Round up copies of them and add a section on the publications page.

As a starting point for this addition, I've downloaded all M-Lab filings from an FCC site search and imported them into my branch. I've also mocked up a suggested format for the publications page for team review. The image below is taken from a locally running copy of the site. @georgiamoon PTAL? I also only have FCC filings. I searched the BEREC site but have not yet found anything more. @collina or others: do you have references to non-US regulator filings for M-Lab and/or the submitted documents themselves?

Added in #249


remove MDC JavaScript dependency

MDC as it stands is being deprecated in favor of a new material web project build as Web Components. To better prepare ourselves for the future, we need to divorce TCW from importing and using MDC JavaScript.
This process can be started as a clean copy of the MDC code into the TCW project, and from there we can fine tune our usage and organization by refactoring to fit our project style and guidelines (be sure to include the MDC license).
After this is complete, our next step will be to perform the same steps in regards to how we consume styles from MDC. This is a much larger undertaking and is tracked by https://github.com/tyler-technologies/tyler-components-web/issues/672.

MDC was removed in 3.0 version


Mockup up room reservation page for (Office: Wes)

Please do work for this task in a branch called issue-022.


Group Commands in commandset extension

Category

[x] Question
[ ] Typo
[ ] Bug
[ ] Additional article idea

Scenario:

We have created 3 List view command sets "Mark as complete", "Create reminder" and "Update as Pending" based on a client requirement and we managed to make it work in a single package. Challenge came when customer asked to group the commands under single main menu called "Record Operations"

Client expectation:

Question:
Is it possible to group those command sets under single menu item say "Record Operations". Same behavior as "New", "Upload", "Flow" etc.. which has sub menu items (Files, Folders) inside main menu item (Upload). I'm not able to find any help from web site so far. Examples or keyword to search on how approach this functionality will be highly helpful.
Thanks in advance experts!
Sharing is caring.

This issue was moved to SharePoint/sp-dev-docs#2356

As this is a generic issue and note related on any sample in this repository, moving it to the right location at sp-dev-docs issue list which we triage in engineering.


SafeSign Identity Client license issue by AET

Hi, I'd like the help of community to have this issue solved.
History - 1
I have contacted AET (Oct 5th) for supporting with macOS Sierra and the software issues. In October 7th they answered and partially helped (saying that I should contact their partners instead of them directly)  but they pointed problems with listing safesign-identity-client in HBC because of the current license:

History - 2
So I re-contacted them, asking which license they would prefer:

...

History - 3
And then they answered this way today Oct 10th:

Question

Should we change the license of safesign-identity-client for :commercial (or :closed)?
Or should we just remove the cask from HBC?

My vote:
Change the license for :commercial, because they provided this option in their Oct 7th message:

[...] we protest to your statement "License - :gratis" on Github.
[...] SafeSign is by no means freeware
[...] We urge you to remove or correct these statements from github/internet.

Also provided the best choice according to them in their Oct 10th message:

Related to Github these are the categories to be used for our (SafeSign) Software [...]
:closed
:commercial

We no longer support license. It was always useless and is being deprecated today (yes, really).
So they either agree to have it in HBC without an explicit license, which seems like they might (emphasis mine: “We urge you to remove or correct these statements from github/internet”), or we remove the cask entirely. I don’t really care which.
That said, this isn’t exactly a popular piece of software for our users (I’ve stated before I actually believe you might be the only one) and if they take such a tone with demands and bring out the legalese for something as simple as this, I’m betting they won’t be worth possible future headaches. In all honesty, I’m for removing the cask.

license has now been removed from all casks. Please recontact them and ask if it is OK like this. If not, we’ll remove the cask.

@vitorgalvao I'm not going to recontact them about this issue. I'm sending a PR in order to remove the cask.

Alright. Like I said, if you recontact them and they say it’s OK, we can keep (readd) the cask. Otherwise, license is deprecated and if they take so much issue with it, we won’t add it back unless they are OK with it, as they’re definitely not worth the trouble.


Open Duty HA

Hello.
Has anyone ever used OpenDuty in a HA, master-master mode?
Thanks

Hey! I think nobody but it shouldnt be a problem, just use the same DB connection for all the django instances and use any kind of load balancing you like

http://reinout.vanrees.org/weblog/2016/06/22/high-availability-django-cheap.html @sofixa does this answer your question? If yes, or no longer intereted please close the issue. Thanks.

Yep, you can close, thanks :)