Split up runtime resource handler into processor manager

PR splits out the runtime authorizer and resource processor into a dedicated authorizer package, and a manager in the processor package. This de-couples the main runtime package from the processor so that hot reloading (not implemented here) can also make use of the processor manager.
Components are no longer indexed in the ComponentStore by both their name and type. This is because the hot reloader would not be able to determine "which" Component it should delete on delete events. No two Components with the same type but different names can co-exist anyway.
Removes the existing hot reloading functionality as it is being replaced with the more robust implementation in a follow-up PR.
Part of #1172
Spun out of https://github.com/dapr/dapr/pull/6845 to have separation of concerns and make reviewing easier.

integration tests seem to be flakier with this implementation.


⚠ ClamAV has degraded performance

In a97b06f, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 212 ms

Resolved: ClamAV performance has improved in f798bfa.


chore: bump Collector to v3.13.5

Title is sufficient
Checklist

[ ] Investigated and inspected CI test results
- [ ] Unit test and regression tests added
- [ ] Evaluated and added CHANGELOG entry if required
- [ ] Determined and documented upgrade steps
- [ ] Documented user facing changes (create PR based on openshift/openshift-docs and merge into rhacs-docs)

If any of these don't apply, please comment below.
This is just a collector version bump, with no code changes to collector.
Testing Performed
Here I tell how I validated my change
CI is sufficient
Reminder for reviewers
In addition to reviewing code here, reviewers must also review testing and request further testing in case the
performed one does not seem sufficient. As a reviewer, you must not approve the change until you understand the
performed testing and you are satisfied with it.

/retest

/retest

According to @vladbologa these errors always occur for 3.74 https://redhat-internal.slack.com/archives/CMH5M8MHN/p1699002461541099?thread_ts=1698831981.586069&cid=CMH5M8MHN
The exception is 3.74-ocp-4-13-qa-e2e-tests however, the failure in that case is VulnReportingTest: initializationError it is difficult to see how an update to collector could result in that error.


request escape strings documentation DuckDB?

found from Postgres, and tested some supported in DuckDB some are not, and don't find same from duckdb.org, can request another clarification in documentation DuckDB?

https://www.postgresql.org/docs/16/sql-syntax-lexical.html#SQL-SYNTAX-STRINGS
4.1.2. Constants #
<IP_ADDRESS>. String Constants #
<IP_ADDRESS>. String Constants With C-Style Escapes #
<IP_ADDRESS>. String Constants With Unicode Escapes #              <<<<<<<<<<= no support of DuckDB?
<IP_ADDRESS>. Dollar-Quoted String Constants #
<IP_ADDRESS>. Bit-String Constants #        <<<<<<<<<<== not clear
Originally posted by @t829702 in https://github.com/duckdb/duckdb-web/issues/2280#issuecomment-1961892029

@t829702 thanks for these pointers, DuckDB indeed supports E'...' and $$...$$ strings. We clarified these via two PRs.


Fix doit

fixes #16.
Please merge after approving #40. We created the branch from the wrong starting point and GitHub will not let us fix it using a rebase and force push.

Coverage increased (+1.1%) to 83.785% when pulling 78ea09fd4927df64ed5a193412488af14a1b9d24 on fix-doit into 5c8adbeab23c0eda882400cad802a777c1992856 on development.


Spacing in too big in general

Spacing is too big

Read more buttons
Written by in boxes
Summary in boxes

Solution:

Review the default bootstrap options
Override them in the default.css file

Implemented in default.css.  Removed some spacing stuff at the same time from the html pages.


Question: How to manage Server-side connections ?

Hello
as the question states , how can i manage clients connections ?
like when someone connects and filled login info then he should receive session and the server can disconnect him and return him to some page and release resources ?
thanks

This issue was moved to aspnet/AspNetCore#8009


after running the build there is no syntaxes folder

I'm trying to run this extension in Theia and getting:
root ERROR Failed to load plugin metadata from "/workspace/theia/plugins/release/" Error: Cannot find module '/workspace/theia/plugins/release/syntaxes/fsharp.json'

package.json indeed has such paths: https://github.com/ionide/ionide-vscode-fsharp/blob/f3b1071052858fb8871c081be7f7ed34e70d3913/release/package.json#L65
but after running the build there is no syntaxes folder

I have to run ./build.sh Build, not just ./build.sh


Question: best practice Linux + nginx + subfolder in url

Hi,
We are having problem using subfolder in url, example:
http://domainName.com/weboholics
We have tried two approaches:
(What we think is the right way) Rewrite url in nginx
(nginx configuration)
rewrite ^(/weboholics)(.*)$ $2 break;
With this approach razor get confused and @Url.Action("Index","Home") returns:
/Home/Index when the correct url should be
/weboholics/Home/Index
We have asked others, and they have suggested to use WebHostBuilder().UseUrls("http://domainName.com/weboholics"), but seems not feasible due to our usage of Unix Socket
(our UseUrl)
.UseUrls("http://unix:/var/disk2/sparfiler/www/weboholics.sock")
Second approach - change routing
With this approach Razor Url.Action() works but this doesn't work in Razor:
(code)
<script type="application/ecmascript" src="~/ckeditor/ckeditor.js"></script>
Razor will render this to:
<script type="application/ecmascript" src="/ckeditor/ckeditor.js" ></script>
(How it should be)
<script type="application/ecmascript" src="/weboholics/ckeditor/ckeditor.js" ></script>
Our startup (both approaches )
public static void Main(string[] args)
        {
            var host = new WebHostBuilder()
                .UseKestrel()
                .UseContentRoot(Directory.GetCurrentDirectory())
                .UseUrls("http://unix:/var/disk2/sparfiler/www/weboholics.sock")
                .UseIISIntegration()
                .UseStartup<Startup>()
                .Build();

            host.Run();
        }

What is the correct approach for using subfolders? especially in an Linux + nginx environment?
Best Regards
Jesse / Weboholics

UseUrls("http://domainName.com/weboholics") is exactly how we handle this for IIS.
@halter73, is there a way to make this work for unix sockets? Maybe we should come up with one.

Can't there just be a middleware in the pipeline that sets the path base? (that's effectively) what happens when you put the path in there anyways.

There could be, but this is a deployment parameter so it should be easily configurable. That's why we included it in the Server.

@Weboholics As a workaround add this code to your application's Startup.cs
public class Startup
{
   public void Configure(IApplicationBuilder app)
   {
      app.Map("/weboholics", ConfigureCore);
   }

   private void ConfigureCore(IApplicationBuilder app)
   {
        // Configure your pipeline here
   }
}

This should unblock you for now.

UseUrls("http://domainName.com/weboholics") is exactly how we handle this for IIS.

@Tratcher You sure about this? It looks to me that both UseUrls and UseIISIntegration clobber the WebHostDefaults.ServerUrlsKey with no regard for what was there previously. My underastanding is that if UseUrls is called after IISIntegration, then the proxying is completely broken. If IISIntegration is called second, UseUrls is ignored.
I see that https://github.com/aspnet/IISIntegration/issues/14 is closed with a comment saying this has been fixed by the ASP.NET Core Module. I would like to know how. I don't see anything in IISIntegration that updates the PathBase which I think would be required.

It's here:
https://github.com/aspnet/IISIntegration/blob/dev/src/Microsoft.AspNetCore.Server.IISIntegration/WebHostBuilderIISExtensions.cs#L38-L39
It gets the base path from IIS/ANCM via environment variable and gives it to Kestrel to manage. (Note UseSetting and UseUrl do the same thing here).
Can we come up with a syntax for the user to specify a base path in UseUrls for the unix sockets scenario?

Feels like a hack. We should be using different fields for different data even in the default case.

@davidfowl Thanks. Your workaround seems to work. Looking forward for a final solution.

@DamianEdwards @shirhatti
Do we want this as a feature?

Yes pls

@shirhatti Can you come up with the requirements for 1.1.0?

Is there a way to do this without hardwiring it into the start up class?
This really should be configurable from an environment variable.
I'm trying to proxy a subdirectory from Nginx to a docker image based on the official aspnet core image. I thought that setting the ASPNETCORE_URLS environment variable appropriately would set me up, but it appears that I have to modify the start up class?
Reverse proxying a sub-application seems like deploy time setup, not compile time setup and would seem to be common enough a use case to warrant having a real solution to this.

This is the kind of thing that belongs in a UseNginxIntegration extension. Reading from an env variable, calling UsePathBase, adding the forwarded headers middleware, etc..

Okay. I've got it now.
In Startup.cs, set the url to use a subdirectory.
.UseUrls("http://+:80/appname")

Or, if you're using the aspnet core docker container, set the equivalent environment variable.
docker run --name containerName -p 8080:80 -d -e "ASPNETCORE_URLS=http://+:80/appname"  org/imageName

Then, in your Nginx conf file, proxy pass to the subdirectory.
location /appname/ {
    proxy_pass  http://<IP_ADDRESS>:8080/appname/;
}

This will work and any aspnet resolved urls will point to the correct subdirectory.

@shirhatti Are we doing anything on this in the next few weeks?

Sorry to see that the milestone has been moved -  davidfowl hack is working for us and we appreciate the help received from you.  But for people new to .net core this will create problems - the hack IS NOT intuitive.  With a major version change to 2.0  it would be natural to fix the API.

@Weboholics In 2.0 you will be able to do something like the following by using KestrelServerOptions.ListenUnixSocket and app.UsePathBase. It's conceptually pretty similar to @davidfowl's hack, but hopefully more intuitive.
Program.Main()
var host = new WebHostBuilder()
    .UseKestrel(options =>
    {
        options.ListenUnixSocket("/var/disk2/sparfiler/www/weboholics.sock");
    })
    .UseContentRoot(Directory.GetCurrentDirectory())
    .UseStartup<Startup>()
    .Build();

host.Run();

Startup.Configure()
app.UsePathBase("/weboholics");
// Configure your pipeline here

Wait, are we talking about the situation where the Kestrel webserver thinks it's called in the root path of the domain but the public web server is rewriting this into a subdirectory? This can only work with the URL rewriting in place, not without, right? So it's impossible to use and test this with Kestrel alone, you absolutely need the proxy web server for the URL rewriting.
If I'm correct until here, how could this possibly be configured in the source code? This isn't a configuration feature of the application itself, it's only a thing of the hosting environment. The application itself just doesn't care or know about the URL remapping outside of it. So this should not be configurable through an API call but only with an environment variable or some other means accessible through the command line or such.
At least that's what I need for my hosting environment. I can configure an ASP.NET Core app to run in a public subdirectory of the domain – it just won't work because it thinks it's in the root directory and generates wrong URLs to resources and other pages.

@ygoe Sorry I misunderstood your question. If requests are already being routed to the correct handlers, and you just wan to prefix all your generated links with "/weboholics", you can do so by adding the following to the start of your Configure(IApplicationBuilder) method.
app.Use((context, next) =>
{
    context.Request.PathBase = "/weboholics";
    return next();
});

I'm thinking of an application that's not written by me, some CMS for example. I, as the admin, want to be able to install that app in whatever subdirectory I like. Obviously I don't want to recompile that app (written by somebody else, possibly not even available as source code) to fit my subdirectory. And if the app doesn't provide such configuration, it just won't work anywhere else than the root directory. To me this is clearly a hosting environment option, not an application option. And as such it doesn't belong in the code. (Or at least not exclusively. The server TCP port is another such option and it works perfectly from the environment. I can't run multiple apps all on port 5000.)

The application is self hosted so they are one and the same. You can always write code that reads from configuration and sets up the correct base path as a result.

I can set the TCP port from the outside, without any specific code in the application itself. I'm just thinking the same should be possible for the URL path.
ASPNETCORE_URLS=http://<IP_ADDRESS>:$PORT dotnet MyApp.dll

This might look something like the following:
ASPNETCORE_URLS=http://<IP_ADDRESS>:$PORT/$APPPATH dotnet MyApp.dll

But that doesn't work last time I checked (ASP.NET Core 2.0 preview 1).

Yea, that doesn't work. You can't bind to a path (like @halter73 said) but that really has nothing to do with being able to set the url via an environment variable or not. That's because Kestrel itself doesn't support "binding to a path".
We should do a few things here:

We should just add support for specifying the path base as a hosting option. We'd call UsePathBase on your behalf so that it would "just work" if you had that setting.
As a result ASPNETCORE_PATHBASE would just work

We're shutting down for 2.0 so this would be a 2.1 thing.
/cc @Tratcher

That sounds good!

Thanks @halter73 and @davidfowl with the feedback that the most important parts of the API cleanup regarding Subfolders has been resolved. As I understand you can now use app.UsePathBase instead of app.Map.  @davidfowl  ASPNETCORE_PATHBASE environment variable seems a future (2.1) nice to have feature, but doesn't sound critical - you can use configuration - as we do today to make subfolders configurable without recompilation

Wait a sec. what problem are we trying to solve here? Because this worked just fine for me.
https://github.com/aspnet/Hosting/issues/815#issuecomment-279239499

@rubberduck203 - your solution doesn't work on Linux using unix sockets - a limitation of  method .UseUrls.  The original question did spawn further questions about API and how to enable this functionality during deployment / administration - you don't want to recompile an application because changes in hosting.

Okay. That's what I was missing. The environment variable works for some cases, but not for unix sockets. Got it.

Kestrel used to allow PathBase in UseUrls, but it dropped it due to incomplete support. That's when we introduced UsePathBase.

How can I handle it with Apache2?  (Ubuntu 16.04)
I have spent 2 days already and nobody didn't come up with any idea :(

Comments on closed issues are not tracked, please open a new issue with the details for your scenario.
Did you try UsePathBase?


Errors from Docker (missing field 'transcodeId')

Describe the bug
When the Docker container starts, getting a "panic" error from Locast2Tuner.  Keeps restarting endlessly.  My container was working fine till this morning.
To Reproduce
Steps to reproduce the behavior:

Run the Docker container.
Error message occurs and restarts.

** Logs **
Sorry for the weird control characters, this is what's getting saved to the log file from Docker.  Here's two rotations of the logs, showing that it keeps restarting.
stdoutÌ–»ÎÁÒôÍ%config selected = /app/config/config    9   s
stderr˜…ÃÑÁÒôÍ_Aug 16 15:20:23.760 INFO locast2tuner 0.1.48 on Linux 5.4.72-microsoft-standard-WSL2 starting..   s   W
stderrèÍÒÁÒôÍCAug 16 15:20:23.762 INFO UUID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx   W   Q
stderr”òŽÓÁÒôÍ=Aug 16 15:20:23.764 INFO Logging in with<EMAIL_ADDRESS> Q   =
stderr´ª®ÃÒôÍ)Aug 16 15:20:24.223 INFO Login succeeded!   =   j
stderrÒ˜ÌÅÒôÍVAug 16 15:20:24.823 INFO Using cached FCC facilities at /root/.locast2tuner/facilities   j   ß
stderrØû÷ËÖÒôÍÊthread 'main' panicked at 'called Result::unwrap() on an Err value: reqwest::Error { kind: Decode, source: Error("missing field transcodeId", line: 1, column: 227762) }', src/service/mod.rs:329:10   ß   a
stderr¸´®ÌÖÒôÍMnote: run with RUST_BACKTRACE=1 environment variable to display a backtrace   a   9
stdout ÓºÙÒôÍ%config selected = /app/config/config    9   s
stderr¬®¼“ÙÒôÍ_Aug 16 15:20:30.072 INFO locast2tuner 0.1.48 on Linux 5.4.72-microsoft-standard-WSL2 starting..   s   W
stderr¼ý¨”ÙÒôÍCAug 16 15:20:30.074 INFO UUID: xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx   W   Q
stderräÉò”ÙÒôÍ=Aug 16 15:20:30.076 INFO Logging in with<EMAIL_ADDRESS> Q   =
stderrÀÀÊÛÚÒôÍ)Aug 16 15:20:30.492 INFO Login succeeded!   =   j
stderr¼ÓÝâÜÒôÍVAug 16 15:20:31.044 INFO Using cached FCC facilities at /root/.locast2tuner/facilities   j   ß
stderr´‚¨ïíÒôÍÊthread 'main' panicked at 'called Result::unwrap() on an Err value: reqwest::Error { kind: Decode, source: Error("missing field transcodeId", line: 1, column: 227762) }', src/service/mod.rs:329:10   ß   a
stderr¸¿¯ïíÒôÍMnote: run with RUST_BACKTRACE=1 environment variable to display a backtrace   a   9
** Configuration **
Can't get the config from the web interface as it doesn't keep running long enough.
Environment
Docker under Windows 10
Screenshots
N/A
** Environment**
Windows 10

Oh, just saw new version.  Let me try that out and will close if it's addressed.  Seems to reference exactly what I'm seeing.

Yeah, this is fixed in 0.1.53

Odd, trying to build new version after "pull" with docker-compose, and it's hanging up.

@eiddor might know :D

@Croq360 No issues here:
roddie@plex ~/docker% docker-compose pull
Pulling plex         ... done
Pulling locast2tuner ... done
roddie@plex ~/docker% docker-compose up -d
Recreating locast2tuner ...
Recreating locast2tuner ... done

Try to pull again.

I removed my previous container, but here's what I get (note that the Error statement is from me hitting Ctrl-C):
C:\Croq360\locast2tuner-Docker>docker-compose pull
Pulling locast2tuner ... done
C:\Croq360\locast2tuner-Docker>docker-compose up -d
Creating locast2tuner ...
ERROR: Aborting.
And this worked fine before.  And "docker run" command (with updating my /app/config path) works too.

Oh, and I deleted all the images in Docker before re-pulling, just in case.

Try this:
Stop the container (it's probably already stopped).
Run: docker system prune -a -f
And then do a docker-compose pull and docker-compose up (don't use -d for this so we can see what's going on).
I'm in Glitter now if you want to work on this.

C:\Croq360\locast2tuner-Docker>docker system prune -a -f
Deleted Networks:
locast2tuner-docker_default
Total reclaimed space: 0B
C:\Croq360\locast2tuner-Docker>docker-compose pull
Pulling locast2tuner ... done
C:\Croq360\locast2tuner-Docker>docker-compose up
Creating network "locast2tuner-docker_default" with the default driver
Creating locast2tuner ...
******* And just stays on that last line.  Never seems to finish.

can you try docker-compose --verbose up?

Just tried updating/starting on a Windows box and it works fine there, as well.
Have you checked to see if Docker has an update?

No updates showing for docker-desktop.

C:\Croq360\locast2tuner-Docker>docker-compose --verbose up compose.config.config.find: Using configuration files: .\docker-compose.yml compose.cli.docker_client.get_client: docker-compose version 1.29.2, build 5becea4c docker-py version: 5.0.0 CPython version: 3.9.0 OpenSSL version: OpenSSL 1.1.1g  21 Apr 2020 compose.cli.docker_client.get_client: Docker base_url: http+docker://localnpipe compose.cli.docker_client.get_client: Docker version: Platform={'Name': 'Docker Engine - Community'}, Components=[{'Name': 'Engine', 'Version': '20.10.7', 'Details': {'ApiVersion': '1.41', 'Arch': 'amd64', 'BuildTime': '2021-06-02T11:54:58.000000000+00:00', 'Experimental': 'false', 'GitCommit': 'b0f5bc3', 'GoVersion': 'go1.13.15', 'KernelVersion': '5.4.72-microsoft-standard-WSL2', 'MinAPIVersion': '1.12', 'Os': 'linux'}}, {'Name': 'containerd', 'Version': '1.4.6', 'Details': {'GitCommit': 'd71fcd7d8303cbf684402823e425e9dd2e99285d'}}, {'Name': 'runc', 'Version': '1.0.0-rc95', 'Details': {'GitCommit': 'b9ee9c6314599f1b4a7f497e1f1f856fe433d3b7'}}, {'Name': 'docker-init', 'Version': '0.19.0', 'Details': {'GitCommit': 'de40ad0'}}], Version=20.10.7, ApiVersion=1.41, MinAPIVersion=1.12, GitCommit=b0f5bc3, GoVersion=go1.13.15, Os=linux, Arch=amd64, KernelVersion=5.4.72-microsoft-standard-WSL2, BuildTime=2021-06-02T11:54:58.000000000+00:00 compose.cli.verbose_proxy.proxy_callable: docker inspect_network <- ('locast2tunerdocker_default') compose.cli.verbose_proxy.proxy_callable: docker info <- () compose.cli.verbose_proxy.proxy_callable: docker info -> {'Architecture': 'x86_64',  'BridgeNfIp6tables': True,  'BridgeNfIptables': True,  'CPUSet': True,  'CPUShares': True,  'CgroupDriver': 'cgroupfs',  'CgroupVersion': '1',  'ContainerdCommit': {'Expected': 'd71fcd7d8303cbf684402823e425e9dd2e99285d',                       'ID': 'd71fcd7d8303cbf684402823e425e9dd2e99285d'},  'Containers': 0, ... compose.cli.verbose_proxy.proxy_callable: docker inspect_network <- ('locast2tuner-docker_default') compose.cli.verbose_proxy.proxy_callable: docker inspect_network -> {'Attachable': True,  'ConfigFrom': {'Network': ''},  'ConfigOnly': False,  'Containers': {},  'Created': '2021-08-16T16:04:30.7074347Z',  'Driver': 'bridge',  'EnableIPv6': False,  'IPAM': {'Config': [{'Gateway': '<IP_ADDRESS>', 'Subnet': '<IP_ADDRESS>/16'}],           'Driver': 'default',           'Options': None}, ... compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=False, filters={'label': ['com.docker.compose.project=locast2tuner-docker', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=False, filters={'label': ['com.docker.compose.project=locast2tunerdocker', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=locast2tuner-docker', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=locast2tunerdocker', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=locast2tuner-docker', 'com.docker.compose.service=locast2tuner', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=locast2tunerdocker', 'com.docker.compose.service=locast2tuner', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) compose.cli.verbose_proxy.proxy_callable: docker inspect_image <- ('ghcr.io/wouterdebie/locast2tuner:latest') compose.cli.verbose_proxy.proxy_callable: docker inspect_image -> {'Architecture': 'amd64',  'Author': '',  'Comment': 'buildkit.dockerfile.v0',  'Config': {'AttachStderr': False,             'AttachStdin': False,             'AttachStdout': False,             'Cmd': None,             'Domainname': '',             'Entrypoint': ['/locast2tuner',                            '--config', ... compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=locast2tuner-docker', 'com.docker.compose.service=locast2tuner', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=locast2tunerdocker', 'com.docker.compose.service=locast2tuner', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) compose.parallel.feed_queue: Pending: {<Service: locast2tuner>} compose.parallel.feed_queue: Starting producer thread for <Service: locast2tuner> compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=locast2tuner-docker', 'com.docker.compose.service=locast2tuner', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) compose.cli.verbose_proxy.proxy_callable: docker containers <- (all=True, filters={'label': ['com.docker.compose.project=locast2tunerdocker', 'com.docker.compose.service=locast2tuner', 'com.docker.compose.oneoff=False']}) compose.cli.verbose_proxy.proxy_callable: docker containers -> (list with 0 items) Creating locast2tuner ... compose.parallel.feed_queue: Pending: {ServiceName(project='locast2tuner-docker', service='locast2tuner', number=1)} compose.parallel.feed_queue: Starting producer thread for ServiceName(project='locast2tuner-docker', service='locast2tuner', number=1) compose.cli.verbose_proxy.proxy_callable: docker inspect_image <- ('ghcr.io/wouterdebie/locast2tuner:latest') compose.cli.verbose_proxy.proxy_callable: docker inspect_image -> {'Architecture': 'amd64',  'Author': '',  'Comment': 'buildkit.dockerfile.v0',  'Config': {'AttachStderr': False,             'AttachStdin': False,             'AttachStdout': False,             'Cmd': None,             'Domainname': '',             'Entrypoint': ['/locast2tuner',                            '--config', ... compose.cli.verbose_proxy.proxy_callable: docker inspect_image <- ('ghcr.io/wouterdebie/locast2tuner:latest') compose.cli.verbose_proxy.proxy_callable: docker inspect_image -> {'Architecture': 'amd64',  'Author': '',  'Comment': 'buildkit.dockerfile.v0',  'Config': {'AttachStderr': False,             'AttachStdin': False,             'AttachStdout': False,             'Cmd': None,             'Domainname': '',             'Entrypoint': ['/locast2tuner',                            '--config', ... compose.service.build_container_labels: Added config hash: 47cb8e425903c4e369c2724ed5a856a7387f46eaeeddb9915ae9974afbeb7641 compose.cli.verbose_proxy.proxy_callable: docker create_host_config <- (links=[], port_bindings={'6077/tcp': ['6077']}, binds=['C:\\Users\\Croq360\\.locast2tuner:/app/config:rw'], volumes_from=[], privileged=False, network_mode='locast2tuner-docker_default', devices=None, device_requests=None, dns=None, dns_opt=None, dns_search=None, restart_policy={'Name': 'unless-stopped', 'MaximumRetryCount': 0}, runtime=None, cap_add=None, cap_drop=None, mem_limit=None, mem_reservation=None, memswap_limit=None, ulimits=None, log_config={'Type': 'local', 'Config': {'max-file': 10, 'max-size': '10m'}}, extra_hosts=None, read_only=None, pid_mode=None, security_opt=None, ipc_mode=None, cgroup_parent=None, cpu_quota=None, shm_size=None, sysctls=None, pids_limit=None, tmpfs=None, oom_kill_disable=None, oom_score_adj=None, mem_swappiness=None, group_add=None, userns_mode=None, init=None, init_path=None, isolation=None, cpu_count=None, cpu_percent=None, nano_cpus=None, volume_driver=None, cpuset_cpus=None, cpu_shares=None, storage_opt=None, blkio_weight=None, blkio_weight_device=None, device_read_bps=None, device_read_iops=None, device_write_bps=None, device_write_iops=None, mounts=None, device_cgroup_rules=None, cpu_period=None, cpu_rt_period=None, cpu_rt_runtime=None) compose.cli.verbose_proxy.proxy_callable: docker create_host_config -> {'Binds': ['C:\\Users\\Croq360\\.locast2tuner:/app/config:rw'],  'Links': [],  'LogConfig': {'Config': {'max-file': 10, 'max-size': '10m'}, 'Type': 'local'},  'NetworkMode': 'locast2tuner-docker_default',  'PortBindings': {'6077/tcp': [{'HostIp': '', 'HostPort': '6077'}]},  'RestartPolicy': {'MaximumRetryCount': 0, 'Name': 'unless-stopped'},  'VolumesFrom': []} compose.cli.verbose_proxy.proxy_callable: docker create_container <- (image='ghcr.io/wouterdebie/locast2tuner:latest', ports=[('6077', 'tcp')], volumes={'/app/config': {}}, name='locast2tuner', detach=True, environment=[], labels={'com.docker.compose.project': 'locast2tuner-docker', 'com.docker.compose.service': 'locast2tuner', 'com.docker.compose.oneoff': 'False', 'com.docker.compose.project.working_dir': 'C:\\Croq\\locast2tuner-Docker', 'com.docker.compose.project.config_files': 'docker-compose.yml', 'com.docker.compose.container-number': '1', 'com.docker.compose.version': '1.29.2', 'com.docker.compose.config-hash': '47cb8e425903c4e369c2724ed5a856a7387f46eaeeddb9915ae9974afbeb7641'}, host_config={'NetworkMode': 'locast2tuner-docker_default', 'RestartPolicy': {'Name': 'unless-stopped', 'MaximumRetryCount': 0}, 'VolumesFrom': [], 'Binds': ['C:\\Users\\Croq360\\.locast2tuner:/app/config:rw'], 'PortBindings': {'6077/tcp': [{'HostIp': '', 'HostPort': '6077'}]}, 'Links': [], 'LogConfig': {'Type': 'local', 'Config': {'max-file': 10, 'max-size': '10m'}}}, networking_config={'EndpointsConfig': {'locast2tuner-docker_default': {'Aliases': ['locast2tuner'], 'IPAMConfig': {}}}}) compose.parallel.feed_queue: Pending: set()

That "Pending: set()" just keeps streaming out, over and over.

Gonna try a restart - can't hurt I guess...
If I can't get this working, I'll go back to building it manually and running as a service for the time being.
Unless there's a way to pull a Windows executable (which would be much easier of course).

Yeah, that's weird - Try a reboot (or restart Docker) and let us know.
Found this, but it's not very helpful: https://github.com/docker/compose/issues/7577

Does this help? https://github.com/docker/compose/issues/7577

In case I decide to punt on Docker (for now anyway), is there a Windows executable maintained somewhere that I can just download, or do I need to pull the code over and compile it myself?

You said that docker run works, right?  I would just use that for now vs. going the service route.

There's no windows binary being built right now..

Yeah, I've got some logging settings going for Docker that does rotating log files, so that it doesn't get excessively huge.  Will have to read the docs on how to get that configured on the command line.

Paste your docker-compose.yml file here - it's pretty easy to translate.

version: '3' services:   locast2tuner:     image: ghcr.io/wouterdebie/locast2tuner:latest     container_name: locast2tuner     volumes:       - C:/Users/Croq360/.locast2tuner:/app/config     ports:       - 6077:6077     restart: unless-stopped     logging:       driver: "local"       options:         max-file: 10         max-size: 10m

I figured out the "restart" one.  Looks like I can maybe use "--logging-driver local -log-opt max-file=10 -log-opt max-size=10m" for the logging?

docker run -p 6077:6077 -v C:\Users\Croq360\.locast2tuner:/app/config -name locast2tuner -d --restart unless-stopped --log-driver local --log-opt max-file=10 --log-opt max-size=10m ghcr.io/wouterdebie/locast2tuner:latest

This worked for me.  Changed "-p" to "--publish", "-v" to "--volume", and "-name" to "--name".
docker run --publish 6077:6077 --volume C:\Users\Croq360\.locast2tuner:/app/config --name locast2tuner -d --restart unless-stopped --log-driver local --log-opt max-file=10 --log-opt max-size=10m ghcr.io/wouterdebie/locast2tuner:latest

Windows. 🙄
So, the only difference between that CLI and your YAML file is that I used backslashes for the Windows side of the volume instead of forward slashes.  Try changing those in your docker-compose.yml
    volumes:
      - C:\Users\Croq360\.locast2tuner:/app/config

I can give it a try, but forward slashes in the YAML file were working before with no issues.

I know - Just guessing, as this is the only difference.
If that doesn't work, then I'm not sure what to think.

As I suspected, no go with either forward or backward slashes.  Oh well, at least I can do "docker run".  Saved it to a batch file in the same folder where I have docker-compose.

I guess we can close this now since I've got it working (though weirdly, the docker-compose thing no longer is working for me).  Thanks for the help!


Train one model for 6 specimen

Hi Vivek,
Thank you for your work.
I ran your code on a GPU. I wonder if I run this command cd experiments/deepfluoro & srun python train.py, will it train 6 models for 6 specimen. So how to train a single model for 6 specimen.
And I ran evaluate.py, the model got a rough registration result. In register.py, it performed a gradient descent optimization after model prediction, and the result is much more precise. Is it possiable to train a model to get a precise result directly?
I am a beginner in deep learning registration, look forward to your reply. Thank you.

Hi @legendjack to train a single model for subject 6, you could replace this line
https://github.com/eigenvivek/DiffPose/blob/b3937c4575a0ad092a7ac5b4e661a4fb1b06fc3f/experiments/deepfluoro/evaluate.py#L70
with id_numbers = [6].
The fact that the deep learning model's prediction is worse than the output of an iterative optimization algorithm is a well-known phenomena in medical image registration. In general, deep learning-based registration are never as accurate as iterative methods. There's a lot of literature about ways to close that gap, but so far, there's no universal solution.


perf(clustering) optimize config hash calculation

Summary
Previously the code generated a log of strings and garbage when calculating the hash for the configuration. It happened to create one big string and then calculated hash over it.
This commit changes it so that it now builds hash while iterating over the structures (with hash:update) and thus should not create strings or tables (and garbage).

This only makes things worse. Back to the drawing board.


装好OpenClash 后，访问LUCI页面的OpenClash页面，403错误：访问 192.168.x.1 的请求遭到拒绝

安装正常，平台是 Openwrt Koolshare Router V2.37
opkg update
Downloading https://downloads.openwrt.org/snapshots/targets/x86/64/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_koolshare_router_core
Downloading https://downloads.openwrt.org/snapshots/targets/x86/64/packages/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/base/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_koolshare_router_base
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/base/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/luci/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_koolshare_router_luci
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/luci/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_koolshare_router_packages
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/routing/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_koolshare_router_routing
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/routing/Packages.sig
Signature check passed.
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/telephony/Packages.gz
Updated list of available packages in /var/opkg-lists/openwrt_koolshare_router_telephony
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/telephony/Packages.sig
Signature check passed.
root@Openwrt:/tmp# opkg install ./luci-app-openclash-0.42.06-beta-all.ipk
Installing luci-app-openclash (0.42.06-beta) to root...
Installing coreutils-nohup (8.32-6) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/coreutils-nohup_8.32-6_x86_64.ipk
Installing libruby3.0 (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/libruby3.0_3.0.1-1_x86_64.ipk
Installing ruby (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby_3.0.1-1_x86_64.ipk
Installing ruby-dbm (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-dbm_3.0.1-1_x86_64.ipk
Installing ruby-digest (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-digest_3.0.1-1_x86_64.ipk
Installing ruby-enc (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-enc_3.0.1-1_x86_64.ipk
Installing ruby-pstore (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-pstore_3.0.1-1_x86_64.ipk
Installing ruby-bigdecimal (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-bigdecimal_3.0.1-1_x86_64.ipk
Installing ruby-date (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-date_3.0.1-1_x86_64.ipk
Installing ruby-forwardable (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-forwardable_3.0.1-1_x86_64.ipk
Installing ruby-stringio (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-stringio_3.0.1-1_x86_64.ipk
Installing ruby-strscan (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-strscan_3.0.1-1_x86_64.ipk
Installing libyaml (0.2.5-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/libyaml_0.2.5-1_x86_64.ipk
Installing ruby-psych (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-psych_3.0.1-1_x86_64.ipk
Installing ruby-yaml (3.0.1-1) to root...
Downloading https://downloads.openwrt.org/snapshots/packages/x86_64/packages/ruby-yaml_3.0.1-1_x86_64.ipk
Configuring libruby3.0.
Configuring ruby.
Configuring ruby-dbm.
Configuring ruby-digest.
Configuring ruby-enc.
Configuring ruby-pstore.
Configuring ruby-forwardable.
Configuring ruby-stringio.
Configuring ruby-bigdecimal.
Configuring ruby-date.
Configuring ruby-strscan.
Configuring libyaml.
Configuring ruby-psych.
Configuring ruby-yaml.
Configuring coreutils-nohup.
Configuring luci-app-openclash.
cfg157882

Luci的其他页面正常，就是OpenClash的页面无法访问，请教可能是什么问题。

重启后解决，23333


 It's in our xml files, changing the number is as easy as going to pawnkind defs and altering the  value. Maybe move it over to the pawnkind bases so as not to rewrite for every god damn pawnkind on the list.

Fixed on dev branch


[REEF-646] Remove APIs deprecated since 0.12 from reef-io

This removes deprecated fields/methods in DataLoader,
DataLoadingRequestBuilder and InputFormatLoadingService.
JIRA:
REEF-646
Pull Request:
Closes #

I'll merge this.


Hide and Seek Game

PR Description 📜
Hide and Seek is a memory testing game where the player has to flip the cards in order to find out the pairs of matched symbols. It enhances the player's cognitive thinking and it's memory skills. Hide and Seek is a fun and beautifully created to enjoy the game without any errors.
Fixes #4609

Mark the task you have completed ✅

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for website preview in assets/images
[x] I have added entries for my game in main README.md
[x] I have added README.md in my folder
[x] I have added working video of the game in README.md (optional)
[x] I have specified the respective issue number for which I have requested the new game.

Add your screenshots(Optional) 📸

Thank you soo much for contributing to our repository 💗

Thank you @PilotAxis ,for creating the PR and contributing to our GameZone 💗
Review team will review the PR and will reach out to you soon! 😇
Make sure that you have marked all the tasks that you are done with ✅.
Thank you for your patience! 😀

@ishita-43 Please review my PR...

@ishita-43 I have the game image in the assets folder of GameZone. Please review my PR.

@ishita-43 Resolved the duplicate entries issue, kindly proceed with the PR...

Try to resolve merge conflicts or sync the readme.md file with latest changes and just add your game entry in there

Thank you  @PilotAxis , for your valuable time and contribution in our GameZone 💗.
It’s our GameZone, so Let’s build this GameZone altogether !!🤝
Hoping to see you soon with another PR again 😇
Wishing you all the best for your journey into Open Source🚀

@ishita-43 In the issue the label was assigned with the level of 3 but here you had added level 2.


Reset SelfExporter state after calling with_model

If the SelfExporter has been turned off, calling with_model won't allow
access to the components when writing tests. This commit saves and then
restores the state of the SelfExporter after the with_model decorator
runs so that components can be referred to as globals within testing
functions without affecting global SelfExporter state.

Coverage increased (+0.02%) to 72.941% when pulling c6e7b9da18e9ae36b81536952ee3c7a7e210dea1 on johnbachman:with_model_self_export into b82de72e149f2322190e31c0f84b3b47f5794994 on pysb:master.


PHP implementation

not yet published

done and published to https://github.com/std-uritemplate/std-uritemplate-php


doc update for v1

Updated the most important items in documentation to be able to share it soon.
I removed badges since outdated (must do eventually!)

@endrebak can you approve the review? I think it won't ask again for review after my first PR. Though I'm admin I can't approve myself (but I could 'bypass')


FileReader getManifestForClass returns wrong manifest in multiproject workspace

Description
In multiproject workspace in some cases navigation between controller and view by F3 is not working. It happens when component id from one project is prefix of other project's component id. For example one component id is ui5.project and the other is ui5.project.main.
To Reproduce
Steps to reproduce the behavior:

Create workspace folder
Create two projects in workspace folder
Set id of first project (A) and component id  to ui5.project
Set id of second project (B) and component id to ui5.project.main
Create view with controller in project (B)
Open view in editor and try switching to controller by F3

Expected behavior
It is not navigating to controller. Navigation from controller to view is working but not from view to controller.
Desktop (please complete the following information):

Detected on Mac OS

Additional context
Problem is in the method getManifestForClass of FileReader. It is getting manifest by id that class name begins with. Problem is that we have two manifest entries that matches and it is taking the first one.
Example this._manifests:
[ {componeName = ui5.project,....}
componeName = ui5.project.main,....}]
For className ui5.project.main.Super.controller.js it is searching className.startsWith(UIManifest.componentName) and returns the first one.
Correct approach would be to get the longest match. I tried sorting array of manifests by length of component id so longest goes first and it solved the issue. Not sure if this is correct approach as manifest list is also used elsewhere.
If you do not mind I would like to participate in solving the issue.

Sorry that I didn't accept your PR, I was working on v1.0.0 release and it didn't fit anymore into new code base

No problem. I see there are a lot of changes you made and my fix does not fit any more. Hope I can help in the future.
Thanks for providing such a great tool!


Iowa crooked street

To test later

Iowa is home to the most crooked street in the world—Snake Alley in Burlington. The street was designed to link the downtown area with the shopping district. Because of the angle and sharp turns, it is restricted to one-way traffic only—downhill.

How to submit an issue?

[x] Have you checked previously open/closed issues to see if your question has already been asked & addressed?

If there is an open issue similar to your issue. Comment on that open issue with additional detail indicating that you too are having the same issue. This allows the project sponsor to prioritize incoming issues.

[x] Have you provided a clear description of your issue so that the project sponsor is able to answer all your questions with as few back-n-forths as possible?
[x] (Please acknowledge by checking this box) If a screenshot or visual helps better communicate some complex idea, have you provided one?. Draw.io, Lucidchart, and Autodraw are some excellent and quick drawing tools.
[x] (Please acknowledge by checking this box) When an issue is resolved, please post the steps to resolution or clearly describe the resolution before marking the issue closed.

This will help future SOLVERS read through how your issue was solved and may help them solve their issue quicker.

[x] Have you been kind, courteous, and considerate in your questions?
[x] Have you considered using Stackedit.io, a handy tool to quickly write in markdown?

@ywnch The RadRoads Curviest output for Burlington, IA is as follows:
Curviest road: Mason Road Apartments
road dist.: 360.65
shortest dist.: 8.31
sinuosity: 43.42282

      distance      length                                     name  sinuosity
54    8.305500  360.648192                    Mason Road Apartments  43.422817
179  81.492696  569.886288  [u'Newbury Circle', u'Columbia Street']   6.993097
35   78.506624  529.443527        [u'Herblo Drive', u'Bock Street']   6.743934
313  80.083217  504.927926        [u'Easy Street', u'Randall Lane']   6.305041
217  68.791401  413.029163                           Indian Terrace   6.004081

Snake Alley is represented as https://www.openstreetmap.org/way/15882296
Can you check why this has not been included on our output?

A very quick guess from existing limitation is that the terminal nodes of the roads are not extracted correctly. This limitation still takes some time to fix. One example is a road having multiple lanes and thus edges, if the function ends up grabbing nodes that are close to each other, then the sinuosity increased drastically. The sinuosity for snake alley is 1.44 calculated by hand, in this case, may be squeezed all the way down by inaccurate results.
I might look into whether querying and grouping by osmid provides a solution. Currently,
Lombard Street does not show up in SF either.

Seems like Snake Alley is not included in
G = ox.graph_from_place(query=city, network_type=ntype, which_result=n)
I even tried changing ntype to all - no dice :/

For this one, I just fixed it. The previous script was mistakenly locked with "drive" ntype, while Snake Alley is a service road. The new script should be able to return the network correctly with specified ntype (now required as input).
Will look into the larger issue some other time.

Confirmed. OK i will keep this open until we are able to use Snake Alley as a baseline for most curvy....

Thanks for validating!


Certain path are matched when followSymlinks is true when they should not ?

i want to watch any wp folder that i have in this fashion:
If a folder is named wp and then any number follows it should be returned as a path but only if it also has some other folders within it.
my folder structure is as follows:
/wp40
    / public_html
        / wp-content
            / themes
                / cms
                / other

/wp41
    / public_html
        / wp-content
            / themes
                / cms
                / other

This is my glob pattern for chokidar to watch:
/wp[0-9]{2}/public_html/wp-content/themes/cms1
When i start chokidar it matches these path:
/wp41/public_html/wp-content/themes/cms/functions.php
/wp41/public_html/wp-content/themes/other/other/partials/vc_parts/projects_cards/style_1
Note that the other folder is a symlink and should not be matched according to the glob pattern.
What is wrong ? is it my glob pattern or something else ?

Update to Chokidar v3, it should resolve this.


[Apache] merge sub-projects into one project

Feature Description (功能描述)
NOTE: not sure if this is necessary.
Now there are 10 repositories:

hugegraph: https://github.com/hugegraph/hugegraph.git
hugegraph-computer: https://github.com/hugegraph/hugegraph-computer.git
hugegraph-common: https://github.com/hugegraph/hugegraph-common.git
hugegraph-client: https://github.com/hugegraph/hugegraph-client.git
hugegraph-doc: https://github.com/hugegraph/hugegraph-doc.git
hugegraph-loader: https://github.com/hugegraph/hugegraph-loader.git
hugegraph-tools: https://github.com/hugegraph/hugegraph-tools.git
hugegraph-rpc: https://github.com/hugegraph/hugegraph-rpc.git
hugegraph-hubble/hugegraph-stutio: https://github.com/hugegraph/hugegraph-hubble.git
hugegraph-test: https://github.com/hugegraph/hugegraph-test.git

Can you list the sub-projects?
ASF Infra supports multiple code repo for one project.  Please add some comments why you need merge these sub-projects into one project.

Can you list the sub-projects? ASF Infra supports multiple code repo for one project. Please add some comments why you need merge these sub-projects into one project.

all sub projects/module list here (almost 13+ projects in one org), wonder to know how could one project link to apache org in github (like github.com/apache/hugegraph/sub-projects)

For the incubator project the repo list just like this

hugegraph:
github.com/apache/incubator-hugegraph
hugegraph-subproject1:
github.com/apache/incubator-hugegraph-subproject1

For the incubator project the repo list just like this

hugegraph:
github.com/apache/incubator-hugegraph
hugegraph-subproject1:
github.com/apache/incubator-hugegraph-subproject1

Thanks for reply, it means attach all sub-projects under /apache, so that we'll attach 10+ projects, wonder if this is convenient for normal developers? (or we should link other sub-projects in main project in README)
BTW, I’ll do a search for existing subproject management in github.com/apche

关于主项目 + 子项目合并的方案记录一下, 最终可以选择一个大家认可的
目前 hugegraph 的子项目过于分散, 对普通开发者贡献和一次性修改也不算友好, 所以大体还是选择 部分 or 全部合并一些子项目.
如果合并仓库, 大体有4个事需要确认:

合并到几个仓库 (如果＞1个, 分类方式的确定)
合并后原有仓库的提交历史是否全部保存 (3选1)

完全不保存
部分保存 / 合并保存
全部保存

合并或项目的版本号是否应该统一

统一起来, 避免一个项目内多版本号, 也方便开发者统一维护 (缺点是需要由 PMC 来定期更新版本)
各自保持单独的版本号, 沿用现在的模式

组织结构: 暂定是使用 IDEA 的 sub-module 模式, 相对独立 (借鉴 Hadoop/Hbase 类参考)

I tend to divide 10 repositories into 4 categories to merge:

common function library: hugegraph-common, hugegraph-rpc
graph database: hugegraph
graph computing: hugegraph-computer
tool chains + documentation: others

Close it due to this work has been completed


Include all layers in custom_keras_layers

See: #1262

I do not understand what's going here. I can't reproduce it locally, even using the docker image from CI. 🤷♂


Draft: Advanced Notification Filter

config.py
NOTIFY_FILTER = {
    [pokemon_id]: [{'min_iv': 50, 'move_2': [53, 32]}, {'min_iv': 100}],
    151: True
    16: False
    [...]
}
NOTIFY_DEFAULT_FILTER = [{'min_iv': 100}]

filter_method
filter = config.NOTIFY_FILTER.get(pokemon_id, config.NOTIFY_DEFAULT_FILTER)
if isinstance(filter, bool):
    return filter
for rule in filter:
    if 'min_iv' in rule and rule['min_iv'] < iv:
        continue
    [...]
    return True
return False

kinda like the pokealert filtering? I like the idea.

I have a general design on how to implement this, and to make configuration prettier and more intuitive. In preparation for that, I'm taking a stab at refactoring the notification module. See #214.


Points not pixels

Shouldn't we note in the Readme that the fontSize is points and not pixels?

That probably makes more sense.
Internally the scaling is calculated as v / font.unitsPerEM * fontSize.

On 2 Nov 2016, at 19:00, niftylettuce<EMAIL_ADDRESS>wrote:
Shouldn't we note in the Readme that the fontSize is points and not pixels?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

It looks like pixels to me.

Is it pixels or points, please can someone clarify?

in what context?
On Mon, Aug 7, 2023, 1:10 PM John Doherty @.***> wrote:

Is it pixels or points, please can someone clarify?
—
Reply to this email directly, view it on GitHub
https://github.com/opentypejs/opentype.js/issues/238#issuecomment-1668687188,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACB45W2DAUEJ46L5JZAHU3XUFYVRANCNFSM4CU6HUCA
.
You are receiving this because you are subscribed to this thread.Message
ID: @.***>


Application Error

Describe the bug
Got an server error while working and after refreshing the page getting application error
Link to the Bolt URL that caused the error
https://bolt.new/~/sb1-oq7qhd
Steps to reproduce
Appeared suddenly, while working
Expected behavior
Should have worked fine after pressing retry below the prompt box
Screen Recording / Screenshot

Platform

OS: [e.g. macOS, Windows, Linux]
Browser: [e.g. Chrome, Safari, Firefox]
Version: [e.g. 91.1]

Additional context
No response

the system has shat itself

It is back working again. Wondering what might have been the issue.


DHL Express notifying same change all over again every time

DHL express update notification is broken, it notifies same change again and again. Gets little annoying.

I try check this soon too so that fix would be implemented in next update

Test code:<PHONE_NUMBER>

If notification comes basically all the time after every update event then data must have some change:

Only data changing every api call time seems to be "signature" lin url and it's id but that is not being used for comparing before showing notification.

I will do tests with test package at physical phone to see more.


more RObject issues

thanks for your recent fixes to RObject issues.  unfortunately other issues arise (perhaps previous fixes were not enough?)

the following assignment raises exception

na=Numo::RObject.new(3).fill("a")
na[0..-1]="b"
=>Numo::NArray::CastError: unknown conversion from NilClass to Numo::RObject

this happens no matter what type of values you try to put, only exception being Numeric

Numo::RObject#eq (or ne) raises exception

na=Numo::RObject.new(3).fill("a")
na.eq "a"
=>NoMethodError: undefined method `cast' for nil:NilClass
na.eq :a
=>NoMethodError: undefined method `cast' for nil:NilClass

na2=Numo::RObject.new(3).fill(0)
na2.eq 0
=>NoMethodError: undefined method `eq' for 0:Integer

Recent commits will fix these problems. thx


Added usecols parameter to read_csv and added read_sql method stub.

Sorry if I'm doing this wrong - first time trying to actually participate in a project like this!

Thanks a lot for submitting a PR! Definitely appreciated.
I left some comments on the code. Some style issues and some details on @overload.
The other bigger problem is that you submitted the PR not targeting the master branch but targeting the branch releases/0.2.4. Can you change that somehow? Maybe you have to re-submit the PR.

Looks like I will need to resubmit the branch. I'll address these and resubmit shortly!


Article search not working: flexsearch

Describe the bug
A console error has occurred at the time of the first access,
and the site search function is not working properly.
Reproduction

Execute "pnpm i"
Execute "pnpm husky"
Execute "pnpm dev"
Access the following URL from browser
http://localhost:5173/

Logs
Uncaught (in promise) TypeError: flexsearch.Index is not a constructor
    at Object._init [as init] (index.ts:11:14)
    at search.ts?type=module&worker_file:25:5

System Info
System:
    OS: Windows 10 10.0.19044
    CPU: (12) x64 AMD Ryzen 5 1600 Six-Core Processor
    Memory: 8.57 GB / 15.92 GB
  Binaries:
    Node: 16.17.0 - C:\Program Files\nodejs\node.EXE
    Yarn: 1.22.19 - ~\AppData\Roaming\npm\yarn.CMD
    npm: 8.18.0 - C:\Program Files\nodejs\npm.CMD
  Browsers:
    Edge: Spartan (44.19041.1266.0), Chromium (105.0.1343.53)
    Internet Explorer: 11.0.19041.1566
  npmPackages:
    @sveltejs/adapter-auto: ^1.0.0-next.80 => 1.0.0-next.80
    @sveltejs/adapter-node: ^1.0.0-next.96 => 1.0.0-next.96
    @sveltejs/adapter-static: ^1.0.0-next.44 => 1.0.0-next.44
    @sveltejs/kit: ^1.0.0-next.509 => 1.0.0-next.509
    svelte: ^3.50.1 => 3.50.1
    vite: ^3.1.4 => 3.1.4

Additional Information
Enabled the following settings, and url or content etc contain non-ascii character.
user\config\QWER.config.js
RoutingRules: {
    PostsYearMonthDate: true,
},

I can not reprouce this issue.
https://qwer-nemunote-phi.vercel.app
Need more info...

I cannot reproduce in local env neither.
Try removing all node_modules and reinstall again.
rm node_modules QWER/node_modules -rf && pnpm i

Thanks for your patience.
This issue should now be resolved as of 2e0a0451432837f14c7c9c4b7b06d6748fd2a5d2.


Update the url of the EU DMP template

Please use this url
https://github.com/ds-wizard/horizon-europe-dmp-template/assets/5719387/5519960b-68c0-4e07-80f3-6ee10f66aa96

Hi @dkalog, can you please elaborate on your message? I don't know what you are reffering to.


Fix: Cursor for search input clear button

Resolves #755

Currently fixed on Chrome and Safari, since they are both part of the webkit family. Firefox doesn't seem to offer a clear button for their search input. IE11 has one, but it's not styled.

The IE11 vendor prefix seems to be this: https://developer.mozilla.org/en-US/docs/Web/CSS/::-ms-clear

@spmcbride1201 I'm stuck on this. I'm able to use ::-ms-clear to apply styles to the clear button, except for the cursor. I haven't found any discussions online about it either. IE11 should accept cursor: pointer, but I also tried cursor: hand, still no luck.

@kaitmore. Ok, noble effort anyways. I'll accept and you can merge as is.


Fix landscape url on README

The landscape link seems to be outdated.
Replaced the link to the current one

Is it possible to have the link show all projects as opposed to just graduated?

The link should show all projects. It's just sorted by project maturity and it starts from graduated projects

My apologies, I was focused on "Graduated" being highlighted in the left and didn't realize the page actually showed them all!


Improve Optional#orElse{,Get} support

Suggested commit message:
Improve `Optional#orElse{,Get}` support (#1283)

Summary of changes:
- Consolidate the `OptionalOrElseGet` Refaster rule and the
  `OptionalOrElse` bug checker into the latter, keeping the best of
  both.
- Rename the `OptionalOrElse` bug checker to `OptionalOrElseGet` to
  avoid confusion.
- Replace the `IsLikelyTrivialComputation` matcher with the inverse
  `RequiresComputation` variant.
- Introduce an `OptionalOrElse` Refaster rule that simplifies
  expressions in the "opposite direction".

After upgrading 0.18.0 -> 0.19.0, with error-prone 2.35.1, Java Temurin-21.0.5+11, Apache Maven 3.9.9, I'm getting:
[ERROR] error: An unhandled exception was thrown by the Error Prone static analysis plugin.

which seems to be related to this change.

@pzygielo interesting. Do you have a stack trace/example code/reproducer? Happy to take a look!

Unfortunately stack trace dumped by maven contains only maven calls, I can't see anything from javac there.
I'm in the middle of preparation of minimal reproducer from the bigger project I see this in. Will share of course.

Sometimes passing -e and/or -X to Maven will help. Good luck! :pray:

https://github.com/pzrep/picnic-error-prone-support-1283 - pzrep/picnic-error-prone-support-1283#1

And the run for the same code with 0.18.0: https://github.com/pzrep/picnic-error-prone-support-1283/actions/runs/11630035676/job/32388147249

error: An unhandled exception was thrown by the Error Prone static analysis plugin.
     Please report this at https://github.com/google/error-prone/issues/new and include the following:

     error-prone version: 2.35.1
     BugPattern: (see stack trace)
     Stack Trace:
     java.lang.NoClassDefFoundError: tech/picnic/errorprone/refaster/matchers/RequiresComputation
  	at tech.picnic.errorprone.bugpatterns.OptionalOrElseGet.<clinit>(OptionalOrElseGet.java:54)
  	at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
...

Perhaps tech.picnic.error-prone-support:refaster-support dependency shall be promoted from provided scope.

Perhaps tech.picnic.error-prone-support:refaster-support dependency shall be promoted from provided scope.

Exactly right! I filed #1387 with a fix. Thanks for the super clear reproducer @pzygielo!


Replace input cuts off

About a year ago i've encountered this problem for the first and it is still there. For some reason replace input filed just goes offscreen and that's a bit sad 'cause I love this extension.

Me too, i really appreciate this extension, but I've encountered a couple of bugs. To address one of them, I had to perform a CSS injection in "C:\Program Files\Microsoft VS Code\resources\app\out\vs\code\electron-sandbox\workbench\workbench.html." I added the following code:
<style>
  .tabs-container {
    height: 32px !important;
  }

  .tabs-container.has-text {
    height: auto !important;
    width: auto !important;
    max-width: 97% !important;
  }

  .replace-container {
    display: flex !important;
    flex-direction: row !important;
  }

  .replace-input {
    max-width: calc(100% - 30px) !important;
  }
</style>

The first two classes address a bug related to the terminal, while the other two tackle a different issue. I hope this can be helpful in resolving these issues.

@MrTadeu , thanks for the solution! I hope it will help more people like me until this extension is patched.


nixos/tests/k3s: add multi-node test, test basic flannel networking

Description of changes
This updates the k3s tests to be in a directory (since I'm adding a second test), and then adds a 2-node test.
Most importantly, this verifies network connectivity between two pods, one running on each node, which lets us test that flannel is working correctly.
I think this gives us a nice increase in coverage for k3s, even if I'm not actually confident this would have caught the recent issue in #181790.
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) -- Verified both tests work via nix-build -A nixosTests.k3s.single-node and nix-build -A nixosTests.k3s.multi-node
made sure NixOS tests are linked to the relevant packages

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Hi @euank
Thanks for contributing an improved test.
Forgive my ignorance, I was not able to run the tests the usual way I do.

Unless I manually link to the specific files. (Which I did and worked.)
Any suggestion? Could it be a problem? Let me know.

I've named the passthrough tests as just "single-node" and "multi-node", i.e.
$ nix-build -A k3s.passthru.tests.single-node
$ nix-build -A k3s.passthru.tests.multi-node

I think calling it like that should work!
Including k3s in the name again seems redundant for the passthrough tests, so it seems fine to me to leave it out in this little bit of restructuring.

I've named the passthrough tests as just "single-node" and "multi-node", i.e.
$ nix-build -A k3s.passthru.tests.single-node
$ nix-build -A k3s.passthru.tests.multi-node

I think calling it like that should work!

I did try...

But does not seem to work. I'm using flakes.

Including k3s in the name again seems redundant for the passthrough tests, so it seems fine to me to leave it out in this little bit of restructuring.

Yes, it is fine leaving k3s out.

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

At "nixos/tests/k3s/default.nix", by replacing import with handleTest I was able to build the test. So it is not a matter of how I'm starting the tests, but the actual code is not being interpreted the same way by our different testing method.
I've noticed that another package with many tests (./installed-tests) use a pkgs.newScope technique and pkgs.recurseIntoAttrs. I don't know which method is more correct. We could, to keep things simple, add two lines to all-tests.nix and keep k3s files inside k3s folder. Until we can better figure out this.

I've named the passthrough tests as just "single-node" and "multi-node", i.e.
$ nix-build -A k3s.passthru.tests.single-node
$ nix-build -A k3s.passthru.tests.multi-node

I think calling it like that should work!

I did try...

But does not seem to work. I'm using flakes.

Including k3s in the name again seems redundant for the passthrough tests, so it seems fine to me to leave it out in this little bit of restructuring.

Yes, it is fine leaving k3s out.
Btw, nb is an alias such as nix build .#. Result does not change using nix build .# in the full form. (tested it)
@bryanasdev000 How did you test the tests here?

nix-build /path/to/test

Thanks for catching that @superherointj!
It looks like I had an extra layer of function calls because I didn't have an import in tests/k3s/default.nix; actually importing there makes the attributes be actual test derivations rather than functions that nix build doesn't evaluate.
I've verified with what I've got now both:
$ nix-build -A k3s.passthru.tests.single-node
$ nix build '.#k3s.passthru.tests.multi-node'

work as I'd expect.
Want to double check this works like you'd expect now?


[5.2][pattern-match] Make sure that when we are extracting a tuple that we fail if we have a non-instruction result.

The specific problem here is this:
sil @builtin_array_opt_index_raw_pointer_to_index_addr_no_crash : $@convention(thin) (Builtin.RawPointer, Builtin.
Word) -> Builtin.Word {
bb0(%0 : $Builtin.RawPointer, %1 : $Builtin.Word):
  %2 = index_raw_pointer %0 : $Builtin.RawPointer, %1 : $Builtin.Word
  %3 = pointer_to_address %2 : $Builtin.RawPointer to [strict] $*Builtin.Word
  %4 = load %3 : $*Builtin.Word
  return %4 : $Builtin.Word
}

before this commit, we unconditionally called getDefiningInstruction when
looking at %1. This of course returned a null value causing the compiler to
crash in a dyn_cast().
rdar://59138369
(cherry picked from commit 377b7b131edacf3309fa7095797c8cdec3915857)

Explanation: This is a long standing bug from when we implemented multiple result instructions. Specifically, we needed to do a small check whether or not the given value is actually a result of a SILValue. My fix here just does that check.
Scope of issue: Causes the compiler to crash when compiling certain code examples.
Origination: Work to introduce multiple result instructions.
Risk: Low. This has been in the tree a long time and has not been reported. That suggests it is an edge case.
Testing: Added regression test
Reviewers: Andy Trick
Resolves rdar://59138369

@swift-ci test

Can one of the admins verify this patch?

@swift-ci nominate


adding vectorEffect attr

okay, this is the actual pull request for adding the vectorEffect attr to the text element of victory-label

@ebrillhart I've checked this using npm link with VictoryChart, and I see the non-scaling-stroke attr being applied, but the labels still scale to unreadably small sizes :/

@boygirl hmm okay I'll figure out how to make that stop happening

@ebrillhart thanks!

Oops, found the right PR!
I think non-scaling-stroke only applies to elements with stroke-width, so it won’t do anything to <text> or <tspan> elements. I looked around briefly for trying to pin the font-size of <tspan> or <text> to a specific size, but the only information I received was that SVGs are scalable by their nature!
Off the top of my head, alternatives would be setting a min-width to the <svg> container or increasing the default font-size so it’s readable for a larger range of widths.
https://www.w3.org/TR/SVGTiny12/painting.html#NonScalingStroke
https://github.com/FormidableLabs/victory/issues/238

okay, for now I'll apply it to grid lines, axes, and tick marks - @boygirl any preference for how we handle text/labels or should we just hold off on that for now?

@ebrillhart prefer increasing the default font size for now.


format() has bug printing am/pm for different locale

While locale is set to 'de', am/pm is not printed.
x = datetime.datetime(year=2016, month=10, day=21, hour=14, minute=15).replace(tzinfo=pytz.UTC)
arrow.get(x).format('hh a',locale='en')   # prints '02 pm'
arrow.get(x).format('hh a',locale='de')   # prints '02 '

Didnt know germans dont have am/pm. issue closed


unix,win: add uv_getenv() and uv_setenv()

These functions are used to create, update, and retrieve environment variables.
Closes #1198

I'll create a follow up PR for uv_unsetenv() if you're OK with that.

If I may :-) I'd like to have it on this one... that way the feature is complete.

Naming bikeshed: should ve have these be uv_os_setenv and the like not to overpopulate the uv_ namespace?

@santigimeno @saghul all existing nits addressed, and added uv_os_unset() to this PR. I added a second commit that contains a helper function for the UTF8 to UTF16 conversion on windows.

CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/222/

Only one test failure (unrelated to this PR). So close to a green CI.


request: logging out the unreachable network

would it be possible to write out the server name which is broken? (Can't resolve server hostname; Network is unreachable)

<*status> IRC connection timed out.  Reconnecting...
<*status> Disconnected from IRC. Reconnecting...
<*status> Disconnected from IRC (Can't resolve server hostname). Reconnecting...
<*status> Disconnected from IRC (Connection reset by peer). Reconnecting...
<*status> Disconnected from IRC. Reconnecting...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> IRC connection timed out.  Reconnecting...
<*status> IRC connection timed out.  Reconnecting...
<*status> IRC connection timed out.  Reconnecting...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> IRC connection timed out.  Reconnecting...
<*status> Error from server: Closing Link: xxxxxxxxxxxx (You are not authorised to use this server)
<*status> Disconnected from IRC. Reconnecting...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> IRC connection timed out.  Reconnecting...
<*status> IRC connection timed out.  Reconnecting...
<*status> IRC connection timed out.  Reconnecting...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> Error from server: Closing Link:  xxxxxxxxxxxx (You are not authorised to use this server)
<*status> Disconnected from IRC. Reconnecting...
<*status> Cannot connect to IRC (Network is unreachable). Retrying...
<*status> Connected!

Untested, but could be as simple as
--- IRCSock.cpp.orig	2019-04-05 15:54:31.212329642 +0200
+++ IRCSock.cpp	2019-04-05 15:56:08.783781336 +0200
@@ -1265,12 +1265,13 @@ void CIRCSock::SockError(int iErrno, con

     DEBUG(GetSockName() << " == SockError(" << iErrno << " " << sError << ")");
     if (!m_pNetwork->GetUser()->IsBeingDeleted()) {
+        CString sServer = m_pNetwork->GetCurrentServer()->GetString(false);
         if (GetConState() != CST_OK) {
             m_pNetwork->PutStatus(
-                t_f("Cannot connect to IRC ({1}). Retrying...")(sError));
+                t_f("Cannot connect to IRC (need good message {1}) ({2}). Retrying...")(sServer, sError));
         } else {
             m_pNetwork->PutStatus(
-                t_f("Disconnected from IRC ({1}). Reconnecting...")(sError));
+                t_f("Disconnected from IRC (need good message {1}) ({2}). Reconnecting...")(sServer, sError));
         }
 #ifdef HAVE_LIBSSL
         if (iErrno == errnoBadSSLCert) {

oh. btw v1.7.2. forgot to mention.


Make it work index.js

I appreciate your efforts to contribute, though I'd like to keep the library stripped for anyone who wishes to utilize it for their own needs. You're welcome to implement it on a web server.
Additionally, I'll have a README out very soon to detail its usage and documentation.


fix propType warning from react 15.3.0

fix #91

Does this really fix the problem? I'm still seeing a direct call?

from official document
https://facebook.github.io/react/warnings/dont-call-proptypes.html#fixing-the-false-positive-in-third-party-proptypes

@RealOrangeOne  this LGTM, as @evollu  mentioned this is the suggested fix by Facebook.
We would love to see this merged soon.
This is crucial for working with RN 0.33 and, RN 0.33 is required for building with Xcode 8.
LMK if I can help somehow to push this.
Thanks.

Looking at that documentation, looks fine to me. Merging

Thanks guys.
What's the process for publishing a new version to npm?

very much manual, and usually only when theres a couple of changes. Hopefully i'll do a release early next week


Android Basics: Fragments Navigation component

URL of codelab
Unit3> Fragments and the Navigation Component> 4. Create Fragment and layout Files> Step3
In which task and step of the codelab can this issue be found?
Describe the problem The step 3 says "Update tools:context in fragment_letter_list.xml to .LetterListFragment" but the image below contains "tools:context=".WordListFragment", this image belong to fragment_letter_list.xml

Steps to reproduce?

Go to...
Click on...
See error...

Versions
Android Studio version:
API version of the emulator:
Additional information
Include screenshots if they would be useful in clarifying the problem.

Duplicate of #33


⚠ Processors has degraded performance

In f9170bd, Processors ($STATUS_URL) experienced degraded performance:

HTTP code: 200
Response time: 106 ms

Resolved: Processors performance has improved in 63bb78c.


feat: vercel function in node.js

This PR set up a RPC server under the same origin as frontend.

Sometimes the RPC got incomplete TCP payloads. I'm going to work on that.
Mark the PR as draft.

Sometimes the RPC got incomplete TCP payloads. I'm going to work on that (tomorrow).
Mark the PR as draft.

Seems normal if TCP connection is reset. As there is no something like Content-Length in RPC protocol, we may just let it fail.

Sometimes the RPC got incomplete TCP payloads. I'm going to work on that (tomorrow).
Mark the PR as draft.

Seems normal if TCP connection is reset. As there is no things like Content-Length in RPC protocol, we may just let it fail.

Yes, but considering the server will actively close the connection after data transfer complete, we could add a buffer to receive all data before the connection reset.

Now I think the PR is ready for review and merge.


[Security Vulnerability] in cache-base v1, v2 and v3 / used by Webpack

Hello @jonschlinkert,
there is a security vulnerability in cache-base. Is it possible to fix that?!
Link: https://snyk.io/test/npm/cache-base/1

https://github.com/webpack/webpack/issues/12286

There is no vulnerability. The report was made in error.
This library uses set-value, which already ignores unsafe keys: https://github.com/jonschlinkert/set-value/blob/master/index.js#L102.

There is no vulnerability. The report was made in error.
This library uses set-value, which already ignores unsafe keys: https://github.com/jonschlinkert/set-value/blob/master/index.js#L102.


Log Collect jobs showing as "failed" with exit code 0

In the past we have largely ignored log collect jobs that failed.  But lately we've had a lot of workflows that are showing 100% failure for LogCollect, both in Dashboard and in WmStats, but they have the exit code of "0".  Site support has pointed out it's likely caused by a delay in reporting from the batch system, but it makes for lots of false leads on failing work when attempting to debug running workflows.
Here is an example workflow:
vlimant_BPH-Summer12-00228_00270_v0__161005_224414_1220
There are on the order of 2000 failed log collect's reported in WmStats.  But if you look there are 80 submit failures, and the rest all have a return exit code of 0.
Jen

@amaltaro , isn't that just the known LogCollect stageout problem ?

Yes, of course a failed job with exit code 0 is another problem. But honestly, since it's fixed in the new agent that should start rolling in in the next week, I'd rather not invest time to fix this issue.

Will it clear the issue for both Dashboard and WmStats?  If so I will patiently wait and for now just continue to tell OS and CSP to  ignore LogCollect Failures.

Yes, it should.

All the old agents have 0 jobs and this issue shouldn't have cleared out by now. Notice you can still find some of these cases in wmstats, for old workflows.

Seeing this issue again for T2_CH_CERN and also in testbed for T3_CH_Volunteer site.

Are you complaining that LogCollect jobs fail or that they report code 0 ?
For the former, LogCollect have been failing the beginning of every month for the last 8 months or so. It's the beginning of February, since the latest castor/xrootd patch hasn't been applied yet I would image we again can't stageout LogCollect to castor.

I'll follow-up in the ticket to get the February directories fixed...

Both, that they fail and to make things worse, report exit code 0 :-)
Thanks!

Ok, the LogCollect stageout failures should not happen anymore. I looked at the code again, the current code really should throw an exception for Castor stageout failure. So that doesn't match with the exit code 0 statement.
Do we have logs from a recent "failed with exit code 0" LogCollect job ? Because if these really exist and they were created/run in a recent agent, I doubt this is related to stageout problems.

Here is one that is still in the system:
pdmvserv_task_SMP-RunIISummer15wmLHEGS-00089__v1_T_170118_205100_5940

*Job Name:*02d937c0-e4b4-11e6-bc72-02163e0184a6-6
*WMBS job id:*1875693
*Workflow:*pdmvserv_task_SMP-RunIISummer15wmLHEGS-00089__v1_T_170118_205100_5940
Task:/pdmvserv_task_SMP-RunIISummer15wmLHEGS-00089__v1_T_170118_205100_5940/SMP-RunIISummer15wmLHEGS-00089_0/LogCollectForSMP-RunIISummer15wmLHEGS-00089_0
*Status:*jobfailed
Input dataset:
*Site:*T0_CH_CERN
*Agent:*vocms0126.cern.ch
*ACDC URL:*https://cmsweb.cern.ch/couchdb/acdcserver
State Transition
*Exit code:*0
*Retry count:*1
Errors:
o logCollect1
Input files:
Lumis:
Output:
log archive:

Jen
On 2/15/17 3:47 PM, Dirk Hufnagel wrote:

Ok, the LogCollect stageout failures should not happen anymore. I
looked at the code again, the current code really should throw an
exception for Castor stageout failure. So that doesn't match with the
exit code 0 statement.
Do we have logs from a recent "failed with exit code 0" LogCollect job
? Because if these really exist and they were created/run in a recent
agent, I doubt this is related to stageout problems.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/dmwm/WMCore/issues/7308#issuecomment-280150300,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEsi20Zdz33sxmXPh5Y7tFVuu9D5TGxKks5rc3J2gaJpZM4KbFRg.

 Log Collect jobs showing as "failed" with exit code 0

Seeing this again:
Job Name: 0108a57e-3677-11e7-b2c6-a0369f23d01e-6
WMBS job id: 3684019
Workflow: pdmvserv_task_SMP-RunIISummer16DR80Premix-00199__v1_T_170405_163606_2357
Task: /pdmvserv_task_SMP-RunIISummer16DR80Premix-00199__v1_T_170405_163606_2357/SMP-RunIISummer16DR80Premix-00199_0/LogCollectForSMP-RunIISummer16DR80Premix-00199_0
Status: jobfailed
Input dataset: /WJetsToLNu_TuneCUETP8M1_13TeV-amcatnloFXFX-pythia8/RunIISummer15GS-MCRUN2_71_V1_ext2-v1/GEN-SIM
Site: T2_FR_CCIN2P3
Agent: cmsgwms-submit1.fnal.gov
ACDC URL: https://cmsweb.cern.ch/couchdb/acdcserver
State Transition
jobfailed: 2017/5/11 (Thu) 18:49:31 UTC, T2_FR_CCIN2P3
Exit code: 0
Retry count: 0
Errors:
logCollect1
Input files:
Lumis:
Output:
log archive:

https://cms-logbook.cern.ch/elog/Workflow+processing/26489

Fixed by #8424 (possibly)


add executable to the shell trait and implement it

Add executable so it can be used to find the command that needs to be run.

The other option would be that inside the executable function we execute which and check wether pwsh or powershell is available on the PATH.

https://github.com/harryfei/which-rs something like this

what does micromamba do?

i don't think we have soemthing like thsi for micromamba. We'd use whatever the user supplies (or parent process) for the shell.
For initialization we iterate through pwsh and powershell and initialize both.