Fix Invalid Attribute Getters for AMPI

This (patch) fixes segfaults related to the AMPI Fortran shim wherein pointers were being used in an incorrect manner.

(GDB trace of the error as it occurs in ADCIRC+AMPI.)

Are you sure the problem is in AMPI and not in ADCIRC, especially given that the error is in the about_to_migrate callback written specifically for AMPI? We have seen problems in those before. The last time I modified these getters in AMPI itself, I tested them with the attached test cases and verified that their general behavior was the same among AMPI, OpenMPI, and MPICH. Won't the Fortran one crash with this changeset?
mpi-builtin-attributes.cpp.txt
mpi-builtin-attributes.f90.txt

Are you sure the problem is in AMPI and not in ADCIRC, especially given that the error is in the about_to_migrate callback written specifically for AMPI? We have seen problems in those before. The last time I modified these getters in AMPI itself, I tested them with the attached test cases and verified that their general behavior was the same among AMPI, OpenMPI, and MPICH. Won't the Fortran one crash with this changeset?
mpi-builtin-attributes.cpp.txt
mpi-builtin-attributes.f90.txt

Considering that the result variable is entirely internal here and specifically where the crash is occurring, I am inclined to believe that the issue is within AMPI (and not ADCIRC). Without this patch, this code is attempting to set the value of an undefined pointer and that is what is causing the segfault. I tested that example with this patch, and it executes normally:
➜  workspace ampif90 mpi-builtin-attributes.f90 -o mpi-builtin-attributes-f90.mpich -g3
➜  workspace mpirun.ampi ./mpi-builtin-attributes-f90.mpich
           0 MPI_TAG_UB              11411628
           0 MPI_HOST              11411632
           0 MPI_IO              11411636
           0 MPI_WTIME_IS_GLOBAL              11411640
           0 MPI_APPNUM              11411644
           0 MPI_LASTUSEDCODE              11411648
           0 MPI_UNIVERSE_SIZE              11411652

Considering that the result variable is entirely internal here and specifically where the crash is occurring, I am inclined to believe that the issue is within AMPI (and not ADCIRC). Without this patch, this code is attempting to set the value of an undefined pointer and that is what is causing the segfault. I tested that example with this patch, and it executes normally:
➜  workspace ampif90 mpi-builtin-attributes.f90 -o mpi-builtin-attributes-f90.mpich -g3
➜  workspace mpirun.ampi ./mpi-builtin-attributes-f90.mpich
           0 MPI_TAG_UB              11411628
           0 MPI_HOST              11411632
           0 MPI_IO              11411636
           0 MPI_WTIME_IS_GLOBAL              11411640
           0 MPI_APPNUM              11411644
           0 MPI_LASTUSEDCODE              11411648
           0 MPI_UNIVERSE_SIZE              11411652

Your paste looks like it is printing parts of pointers as integers.
The output should something look like this:
$ charm/multicore-linux-x86_64/bin/mpirun.ampi -np 1 ./mpi-builtin-attributes-f90.ampi
           0 MPI_TAG_UB<PHONE_NUMBER>
           0 MPI_HOST                   -2
           0 MPI_IO                    0
           0 MPI_WTIME_IS_GLOBAL                    0
           0 MPI_APPNUM                    0
           0 MPI_LASTUSEDCODE                   53
           0 MPI_UNIVERSE_SIZE                    1
$ mpirun.mpich -np 1 ./mpi-builtin-attributes-f90.mpich
           0 MPI_TAG_UB            268435455
           0 MPI_HOST                   -1
           0 MPI_IO                   -2
           0 MPI_WTIME_IS_GLOBAL                    0
           0 MPI_APPNUM                    0
           0 MPI_LASTUSEDCODE<PHONE_NUMBER>
           0 MPI_UNIVERSE_SIZE                    0
$ mpirun.openmpi -np 1 ./mpi-builtin-attributes-f90.openmpi
           0 MPI_TAG_UB<PHONE_NUMBER>
           0 MPI_HOST                   -2
           0 MPI_IO                   -1
           0 MPI_WTIME_IS_GLOBAL                    0
           0 MPI_APPNUM                    0
           0 MPI_LASTUSEDCODE                   92
           0 MPI_UNIVERSE_SIZE                    1

Your paste looks like it is printing parts of pointers as integers.
The output should something look like this:
$ charm/multicore-linux-x86_64/bin/mpirun.ampi -np 1 ./mpi-builtin-attributes-f90.ampi
           0 MPI_TAG_UB<PHONE_NUMBER>
           0 MPI_HOST                   -2
           0 MPI_IO                    0
           0 MPI_WTIME_IS_GLOBAL                    0
           0 MPI_APPNUM                    0
           0 MPI_LASTUSEDCODE                   53
           0 MPI_UNIVERSE_SIZE                    1
$ mpirun.mpich -np 1 ./mpi-builtin-attributes-f90.mpich
           0 MPI_TAG_UB            268435455
           0 MPI_HOST                   -1
           0 MPI_IO                   -2
           0 MPI_WTIME_IS_GLOBAL                    0
           0 MPI_APPNUM                    0
           0 MPI_LASTUSEDCODE<PHONE_NUMBER>
           0 MPI_UNIVERSE_SIZE                    0
$ mpirun.openmpi -np 1 ./mpi-builtin-attributes-f90.openmpi
           0 MPI_TAG_UB<PHONE_NUMBER>
           0 MPI_HOST                   -2
           0 MPI_IO                   -1
           0 MPI_WTIME_IS_GLOBAL                    0
           0 MPI_APPNUM                    0
           0 MPI_LASTUSEDCODE                   92
           0 MPI_UNIVERSE_SIZE                    1

For reference, the previous patch for this was #3070 I believe.

For reference, the previous patch for this was #3070 I believe.

Oh, I see. Our internal AMPI properties are defined differently... and are not addresses:
  case AMPI_MY_WTH:           *(int *)attribute_val = CkMyPe();     return true;
  case AMPI_NUM_WTHS:         *(int *)attribute_val = CkNumPes();   return true;
  case AMPI_MY_PROCESS:       *(int *)attribute_val = CkMyNode();   return true;
  case AMPI_NUM_PROCESSES:    *(int *)attribute_val = CkNumNodes(); return true;

ADCIRC is trying to dereference AMPI_MY_WTH which is a simple integer and not an address. How can we handle these consistently?

Oh, I see. Our internal AMPI properties are defined differently... and are not addresses:
  case AMPI_MY_WTH:           *(int *)attribute_val = CkMyPe();     return true;
  case AMPI_NUM_WTHS:         *(int *)attribute_val = CkNumPes();   return true;
  case AMPI_MY_PROCESS:       *(int *)attribute_val = CkMyNode();   return true;
  case AMPI_NUM_PROCESSES:    *(int *)attribute_val = CkNumNodes(); return true;

ADCIRC is trying to dereference AMPI_MY_WTH which is a simple integer and not an address. How can we handle these consistently?

Without this patch, adding this to the example:
  call MPI_Comm_get_attr(MPI_COMM_WORLD, AMPI_MY_WTH, attrval, flag, ierr)
  print *, myrank, "AMPI_MY_WTH", attrval

Causes a segfault like the one in ADCIRC:
➜  workspace mpirun.ampi ./mpi-builtin-attributes-f90.ampi
           0 MPI_TAG_UB<PHONE_NUMBER>
           0 MPI_HOST                    -2
           0 MPI_IO                     0
           0 MPI_WTIME_IS_GLOBAL                     0
           0 MPI_APPNUM                     0
           0 MPI_LASTUSEDCODE                    53
           0 MPI_UNIVERSE_SIZE                     1
------------- Processor 0 Exiting: Caught Signal ------------
Reason: segmentation violation
Suggestion: Try running with '++debug', or linking with '-memory paranoid' (memory paranoid requires '+netpoll' at runtime).
[0] Stack Traceback:
  [0:0] mpi-builtin-attributes-f90.ampi 0x7698d9
  [0:1] libpthread.so.0 0x7ffff4514390
  [0:2] mpi-builtin-attributes-f90.ampi 0x5915b5 mpi_comm_get_attr_
  [0:3] mpi-builtin-attributes-f90.ampi 0x4e17d9 mpi_main_
  [0:4] mpi-builtin-attributes-f90.ampi 0x4f85f3 AMPI_threadstart
  [0:5] mpi-builtin-attributes-f90.ampi 0x4e97b1
  [0:6] mpi-builtin-attributes-f90.ampi 0x72b472 CthStartThread
  [0:7] mpi-builtin-attributes-f90.ampi 0x72c20f make_fcontext
Fatal error on PE 0> segmentation violation

Without this patch, adding this to the example:
  call MPI_Comm_get_attr(MPI_COMM_WORLD, AMPI_MY_WTH, attrval, flag, ierr)
  print *, myrank, "AMPI_MY_WTH", attrval

Causes a segfault like the one in ADCIRC:
➜  workspace mpirun.ampi ./mpi-builtin-attributes-f90.ampi
           0 MPI_TAG_UB<PHONE_NUMBER>
           0 MPI_HOST                    -2
           0 MPI_IO                     0
           0 MPI_WTIME_IS_GLOBAL                     0
           0 MPI_APPNUM                     0
           0 MPI_LASTUSEDCODE                    53
           0 MPI_UNIVERSE_SIZE                     1
------------- Processor 0 Exiting: Caught Signal ------------
Reason: segmentation violation
Suggestion: Try running with '++debug', or linking with '-memory paranoid' (memory paranoid requires '+netpoll' at runtime).
[0] Stack Traceback:
  [0:0] mpi-builtin-attributes-f90.ampi 0x7698d9
  [0:1] libpthread.so.0 0x7ffff4514390
  [0:2] mpi-builtin-attributes-f90.ampi 0x5915b5 mpi_comm_get_attr_
  [0:3] mpi-builtin-attributes-f90.ampi 0x4e17d9 mpi_main_
  [0:4] mpi-builtin-attributes-f90.ampi 0x4f85f3 AMPI_threadstart
  [0:5] mpi-builtin-attributes-f90.ampi 0x4e97b1
  [0:6] mpi-builtin-attributes-f90.ampi 0x72b472 CthStartThread
  [0:7] mpi-builtin-attributes-f90.ampi 0x72c20f make_fcontext
Fatal error on PE 0> segmentation violation

I have updated this patch so it demonstrates the correct behaviors for our built-in attributes; using a stack-allocated integer as a "temporary buffer" of sorts such that result points to a valid address for the AMPI attributes. The output is now:
             0 MPI_TAG_UB<PHONE_NUMBER>
             0 MPI_HOST                    -2
             0 MPI_IO                     0
             0 MPI_WTIME_IS_GLOBAL                     0
             0 MPI_APPNUM                     0
             0 MPI_LASTUSEDCODE                    53
             0 MPI_UNIVERSE_SIZE                     1
             0 AMPI_MY_WTH                     0
  [Partition 0][Node 0] End of program

I have updated this patch so it demonstrates the correct behaviors for our built-in attributes; using a stack-allocated integer as a "temporary buffer" of sorts such that result points to a valid address for the AMPI attributes. The output is now:
             0 MPI_TAG_UB<PHONE_NUMBER>
             0 MPI_HOST                    -2
             0 MPI_IO                     0
             0 MPI_WTIME_IS_GLOBAL                     0
             0 MPI_APPNUM                     0
             0 MPI_LASTUSEDCODE                    53
             0 MPI_UNIVERSE_SIZE                     1
             0 AMPI_MY_WTH                     0
  [Partition 0][Node 0] End of program

I have updated this patch so it demonstrates the correct behaviors for our built-in attributes; using a stack-allocated integer as a "temporary buffer" of sorts such that result points to a valid address for the AMPI attributes. The output is now:
             0 MPI_TAG_UB<PHONE_NUMBER>
             0 MPI_HOST                    -2
             0 MPI_IO                     0
             0 MPI_WTIME_IS_GLOBAL                     0
             0 MPI_APPNUM                     0
             0 MPI_LASTUSEDCODE                    53
             0 MPI_UNIVERSE_SIZE                     1
             0 AMPI_MY_WTH                     0
  [Partition 0][Node 0] End of program

Just to be clear, will this stack-allocated variable be valid long enough for the application to fetch the attr?

I have updated this patch so it demonstrates the correct behaviors for our built-in attributes; using a stack-allocated integer as a "temporary buffer" of sorts such that result points to a valid address for the AMPI attributes. The output is now:
             0 MPI_TAG_UB<PHONE_NUMBER>
             0 MPI_HOST                    -2
             0 MPI_IO                     0
             0 MPI_WTIME_IS_GLOBAL                     0
             0 MPI_APPNUM                     0
             0 MPI_LASTUSEDCODE                    53
             0 MPI_UNIVERSE_SIZE                     1
             0 AMPI_MY_WTH                     0
  [Partition 0][Node 0] End of program

Just to be clear, will this stack-allocated variable be valid long enough for the application to fetch the attr?

Just to be clear, will this stack-allocated variable be valid long enough for the application to fetch the attr?

Yes, *result is dereferenced within the scope of the function so tmp hasn't been deallocated yet.

Just to be clear, will this stack-allocated variable be valid long enough for the application to fetch the attr?

Yes, *result is dereferenced within the scope of the function so tmp hasn't been deallocated yet.


Updates reference to get propertyPaneSettings

The getter of the property propertyPaneSettings was
changed to a method named getPropertyPaneConfiguration.
Additionally, the getter returned a IPropertyPaneSettings type,
while the new method returns a IPropertyPaneConfiguration type.
Category

[x] Content fix
[ ] New article

What's in this Pull Request?
Updates reference to property getter propertyPaneSettings in "docs\spfx\web-parts\guidance\use-cascading-dropdowns-in-web-part-properties.md". Should instead be a method getPropertyPaneConfiguration.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/spfx/web-parts/guidance/use-cascading-dropdowns-in-web-part-properties.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

thx @I-question-this, appreciated.


[FEATURE REQUEST] Logging to separate files when using --parallel

Thoughts on having an option to log the output of --parallel go to a separate file per endpoint?  I imagine it would be in the form of an output directory flag like --output-directory <name>
The name of each file wouldn't really matter for my purposes but II suppose it could be consistent with the naming convention for the state files
My use-case is that it's easier to process the files when they're logically separate. I can separate them with Pandas (which is what I use for my post-processing already) it's just a very large file which can cause memory pressure occasionally. It also makes it a bit more of an annoyance to monitor a session while it's still running
The solution/workaround (aside from splitting the data in my post-processing) is using GNU parallel. I'm not sure how much (if any) performance impact that has compared with running this all within one instance of feroxbuster. I think that depends on the internals, which I am not too familiar with. I'm not too worried about the overhead associated with the forks since the time relative to the session is pretty small
If you think this isn't too valuable of a feature for most users that use --parallel, you don't agree philosophically with the idea, or you don't think there's any advantage to --parallel vs GNU parallel, feel free to close with a comment
Thanks again for the work you put into this, it's really impressive how far it's come

for a historical aside, --parallel was initially added because of someone telling me they needed to use parallel for large scans. I just wanted to offer a built-in way for that type of usage.
For what you're asking, it's really a simple addition IF implemented in an opinionated way. Some possible solutions:

-o is assumed to be a directory when --parallel is present, and then all files are dumped in there
value provided to -o is ignored and a unique directory is created with the log files (parallel-scan-TIMESTAMP or something)
something else?  it's late...

I'm not keen on adding another cli param for this one, as parallel is already a pretty niche thing (you're the second/third person i know of actually using it). I'm leaning toward the first option above and just documenting the difference in -o behavior.  What are your thoughts?
Of note:  I limit verbosity when scanning in parallel.  Logging with --json may be necessary to get the information you want.
relevant snippet from the readme:

Unfortunately, using --parallel limits terminal output such that only discovered URLs are shown. No amount of -v's will help you here. I imagine this isn't too big of a deal, as folks that need --parallel probably aren't sitting there watching the output... :upside_down_face:

I should have said, I'm spawning children by running feroxbuster instances as children from teh main feroxbuster.  As such, I have full control over the options/arguments passed to children and could easily change the -o value from DIR_NAME to DIR_NAME/UNIQ_FILE_NAME

I'm not keen on adding another cli param for this one, as parallel is already a pretty niche thing (you're the second/third person i know of actually using it). I'm leaning toward the first option above and just documenting the difference in -o behavior. What are your thoughts?

That works for me

I should have said, I'm spawning children by running feroxbuster instances as children from teh main feroxbuster. As such, I have full control over the options/arguments passed to children and could easily change the -o value from DIR_NAME to DIR_NAME/UNIQ_FILE_NAME

Ah, nice. Well, that works out :>


Listen only on localhost by default

⚠⚠⚠ Since we do not accept all types of pull requests and do not want to waste your time. Please be sure that you have read pull request rules:
https://github.com/louislam/uptime-kuma/blob/master/CONTRIBUTING.md#can-i-create-a-pull-request-for-uptime-kuma
Tick the checkbox if you understand [x]:

[x] I have read and understand the pull request rules.

Description
Update docker-compose.yml to avoid a common footgun, as Docker would punch your firewall to expose this port without asking you first.
Type of change

Bug fix (non-breaking change which fixes an issue)

Related to security but not high-severity enough to follow https://github.com/louislam/uptime-kuma/blob/master/SECURITY.md
Checklist

[x] My code follows the style guidelines of this project
[ ] I ran ESLint and other linters for modified files
[x] I have performed a self-review of my own code and tested it
[ ] I have commented my code, particularly in hard-to-understand areas
(including JSDoc for methods)
[x] My changes generate no new warnings
[ ] My code needed automated testing. I have added them (this is optional task)

You are right, there is a risk of degraded user experience.
However, the example with Apache2 is not (fully) correct. If I have a firewall on my Linux server (ufw is the most popular choice on Ubuntu) and I install apache2, it starts to listen on port 80 but... nothing happens, I can't reach the server. This is because the port is not open in the firewall, I need to open it with something like sudo ufw allow 80/tcp and only then can I reach apache2. Docker, however, will "punch" your firewall by modifying the iptables to open a given port.
Actually, my use case is precisely to be able to run Uptime Kuma behind apache2 (or, in my case, Caddy, as it deals with TLS certs nicely). The first time I set things up, I started the web server on port 80, opened port 80 in the ufw firewall config and ran a Docker service on a high port, while having the web server act as a reverse proxy, adding basic auth and TLS. I was expecting the service to be available publicly through port 80 only, before I discovered by accident that the service was also reachable through the high port. I double-checked the firewall and saw that the port should still be blocked.
If Docker would not punch firewall, I would not have filed this PR. There is a long running issue https://github.com/moby/moby/issues/22054 but Docker refused to change anything. And there are many beginners who are not aware that Docker punches the firewall for them. I know no other software you can install on Ubuntu that does this.

Interesting, I didn't realise that docker literally modifies the system firewall when it loads an app. That really doesn't seem like a good idea.

I would have thought that it should be fairly obvious if you spin up the docker container, that you expect it to be accessible across the network, not just from localhost.

Understood the concern, but I have the same thought as @Computroniks said. I think people will be confused why Uptime Kuma is inaccessible, and they eventually go into the yaml file and delete the <IP_ADDRESS>. Also in this way, I believe the IPv6 support will be disabled.
I would recommended that it should change to a comment with explanation. Uncomment it when they need it.
In addition, I think this issue is not just Uptime Kuma. It is across the docker and selfhosted applications community. I also don't know it too until now (Luckily, my VPS providers provide me a second layer of firewall). It maybe good to let more people know it on https://www.reddit.com/r/selfhosted/

I would recommended that it should change to a comment with explanation. Uncomment it when they need it.

I will update the PR.

right now there is no documentation how to archive that in manual installs or at least a mention how to do that in the compose-file.
instead it is mentioned that it runs on localhost:3001 which is not true.
possibility to bind <IP_ADDRESS> (or ::1) - for the UI! - is a basic feature, unencrypted http connections should only be allowed to redirect to https. not sure how (or if) nodejs can handle different bindings for checks and UI but it seems useful to have different methods. Or at least force SSL encryption.
user-expectance is another matter, default binding on <IP_ADDRESS> (or ::) is still possible (and likely adviseable for novice users who do not understand compose files), but

Also in this way, I believe the IPv6 support will be disabled

IPv6 is shitty in docker anyway, either you can use it only to reach the UI (but not for checking v6-only-services!) or you have to configure pure v6only which is only possible with public v6-adresses (no NAT) with "fixed-cidr-v6" or implement your own NAT with ULA (fd00...) addresses with is even uglier than that.
thats another story in k8s (k3s, ...), but thats not the officially support deployment anyway.
long story short: if you want  uptime kuma in dualstack mode (without more ore less ugly docker hacks) with you need to run it manually in the host.

This is because the port is not open in the firewall, I need to open it with something like sudo ufw allow 80/tcp and only then can I reach apache2.
Docker, however, will "punch" your firewall by modifying the iptables to open a given port.

AFAIK, Docker is effectively doing the equivalent but with a NAT rule to direct traffic to the containers IP + port. Since it's an iptables rule, not UFW specific it's not unreasonable that UFW isn't aware of it (especially since it's scoped to the DOCKER chain?).
I think it easier to view it this way. UFW is just a frontend, it does not have exclusive control of the firewall.

I started the web server on port 80, opened port 80 in the ufw firewall config and ran a Docker service on a high port, while having the web server act as a reverse proxy, adding basic auth and TLS.
I was expecting the service to be available publicly through port 80 only, before I discovered by accident that the service was also reachable through the high port.
I double-checked the firewall and saw that the port should still be blocked.

When you mention a "Docker service on a high port", I assume this has been published with -p or ports:?
You have a few options to handle that.

You could instead run Caddy in a container, and not publish ports for your other containers, they'll be reachable over the same shared Docker network.
You could also use a plugin for Caddy (caddy-docker-proxy) or Traefik which provides similar container proxying functionality.
Be explicit as you've done with configuration in this PR, binding to loopback interface <IP_ADDRESS>.

This is more of a learning gotcha with UFW, and not only caused by Docker AFAIK? It's just you're not using other software that offers similar capabilities.

Also in this way, I believe the IPv6 support will be disabled.

Just to clarify, if the host system can be reached by IPv6, by default that gets routed through an IPv4 gateway of a network interface Docker manages. Containers then see the gateway address instead of the original client IP due to NAT64 IIRC.
You can configure Docker to enable IPv6 (experimental, and is opt-in per network and each compose file creates it's own separate default network), giving containers IPv6 addresses (ULAs). This retains the IPv6 IP connection address.

Firewall modification

I didn't realise that docker literally modifies the system firewall when it loads an app.

AFAIK it doesn't (UFW isn't the actual firewall itself), not intentionally at least.
It's a feature of Docker that you opt-in for explicitly via a CLI option (docker run -p) or config setting (compose ports:). If a user is following instructions blindly online without understanding what they're doing (and making assumptions), that really isn't the fault of the software?
Who's really to blame?
It's fairly obvious early on with Docker that the ports get exposed publicly like this.
I understand it may seem surprising when it's not playing nice with other software that also configures the firewall, but AFAIK it's no different to inserting a snippet into your .bashrc / .zshrc or similar (some software knows what it wants to do, but won't know what else exists in there for sure, and if it'll conflict).
Is it a bug with Docker? Or a bug with UFW? Who should accommodate the other? (not accounting for other unknowns that disrupt that further)
Bad workaround advice
There is some advice to configure rules via UFW to workaround the compatibility issue initially. However when UFW allows opening a port on the host which also belongs to IPs of a container(s)... it accidentally exposes all containers with that port internally mapped via the associated published port on host interface(s) (which the workaround intended to keep closed). So then you get other workarounds, but not likely what users wanted (doesn't support ufw CLI).
I've not got enough expertise in the area to know for certain, but presumably if Docker gets around to implementing support for managing the firewall via nftables (instead of relying on shims for compatibility with the legacy iptables rules / syntax), it could more reliably avoid the issue? (from what I've read, it's an issue with how iptables rules are managed).
That is not without caveats though, using both iptables and nftables, the nftables docs note it requires at least kernel 4.18, and for stateful NAT at least kernel 5.2. You'll find some products like NAS are behind that, or complicating things with their own backport patches and other modifications.

What's actually going on
Presently both UFW and FirewallD support iptables and nftables. Ubuntu 23.04 (UFW) and Fedora 37 (FirewallD) are both using iptables-nft.
Either Firewall frontend will not block the below container from being reachable on public networks, even though you'd normally need to allow the port explicitly for software.
$ docker run --rm -p 8000:80 traefik/whoami

$ docker ps
CONTAINER ID   IMAGE            COMMAND     CREATED         STATUS         PORTS
1d4da56c490a   traefik/whoami   "/whoami"   4 seconds ago   Up 4 seconds   <IP_ADDRESS>:8000->80/tcp, :::8000->80/tcp

Why

This is because the user is familiar with other software only binding to a port, not needing to manipulate the firewall (which Docker has only done because of -p).
If instead port mapping wasn't used, and the container ran on the host network with --network host, it'd be similar to what a user expects with most software.
The Dockers docs do clarify the default binding makes it publicly accessible (including UFW rules not being applicable).

How to fix
The referenced docs also direct the reader to a more in-depth page detailing how Docker interacts with iptables. There is advice on:

Disabling this behaviour with --iptables=false (but now you'll have to explicitly identify a containers IP each time and manually forward the ports, while accepting the risk of troubleshooting more networking woes)
Changing the default interface address Docker binds to instead of whatever is available via <IP_ADDRESS>.
Integration with other services that interface with iptables, or adding additional constraints for Docker.

With FirewallD you can configure the docker zone, while UFW presumably lacks an equivalent feature for Docker to integrate with. A firewall frontend agnostic way of course is just to configure the Docker daemon to do what you'd prefer the default to be.
For most that actually is to bind on <IP_ADDRESS> and explicitly provide an IP for the few containers they don't want publicly reachable. If you don't want the ports published this way, use the host network, Traefik, a VM, or disable Dockers iptables management and DIY.

unencrypted http connections should only be allowed to redirect to https. not sure how (or if) nodejs can handle different bindings for checks and UI but it seems useful to have different methods. Or at least force SSL encryption.

Use a reverse proxy like nginx, caddy or traefik. They specialize at this.
Caddy is simple to configure and will provision your TLS certs for you, along with default HTTP to HTTPS redirect (unless you're explicitly making the service reachable only via http:// / :80 or providing only an IP or localhost).

long story short: if you want uptime kuma in dualstack mode (without more ore less ugly docker hacks) with you need to run it manually in the host.

If you're using Dockers networking with private range IPv4 addresses, I don't see why ULA isn't acceptable?

Make sure you have these 3 settings enabled in /etc/docker.json (Enables IPv6 NAT, instead of default NAT64):
{
  "ip6tables": true,
  "experimental" : true,
  "userland-proxy": true
}

Apply the new settings with systemctl restart docker.

Create a network with an IPv6 subnet and run a container that uses it:
docker network create --ipv6 --subnet fd00:face:feed:cafe::/64 example-ipv6
docker run --rm -d -p 80:80 --network example-ipv6 traefik/whoami

or with docker-compose.yaml:
services:
  test:
    image: traefik/whoami
    ports:
      - '80:80'

networks:
  # Overrides the default network created + attached to each service above:
  default:
    enable_ipv6: true
    ipam:
      config:
        - subnet: fd00:face:feed:cafe::/64

# To use the `daemon.json` default bridge with IPv6 instead of creating the above custom `default` network,
# Add `network_mode: bridge` to a service instead.

Test it:
# EXTERNALLY_FACING_IP could be your IPv6 address for your server,
# eg: `http://[2001:19f0:7001:13c9:5400:4ff:fe41:5e06]`
curl -s "http://${EXTERNALLY_FACING_IP}" | grep RemoteAddr

# Alternatively if you have DNS AAAA record setup and need to force IPv6:
curl -s6 "http://example.com" | grep RemoteAddr

When you test from another machine, the clients IPv6 address is visible to the container as the RemoteAddr. Without the IPv6 NAT (ip6tables: true) you'd get an IPv4 gateway IP from Docker instead IIRC.
But that is it, a few settings to enable once, and then creating a network with IPv6 enabled with a ULA subnet. Not sure what is ugly about that?

<IP_ADDRESS>:3001:3001 binding does not actually protect from accessing containers from an external network.
For such port mapping, docker creates two iptables rules:

table nat, used in PREROUTING: if daddr is <IP_ADDRESS> and dport is 3001, DNAT to CONTAINER_IP:3001
table filter, used in FORWARD: if daddr is CONTAINER_IP and dport is 3001, ACCEPT

Any other hosts in the same LAN can tinker with their routes and connect to CONTAINER_IP:3001 bypassing the DNAT rule and the second rule accepts such connection attempt.
However, the workaround in the PR still is better than nothing, at least it protects from the hosts outside LAN.

Any other hosts in the same LAN can tinker with their routes and connect to CONTAINER_IP:3001 bypassing the DNAT rule and the second rule accepts such connection attempt.

Do you have an example of commands?
How does it compare to just using network_mode: "host"? Perhaps that's a better choice for the concern?

Sorry, I posted the link to the wrong issue. Just fixed my previous comment, here is the correct link: https://github.com/moby/moby/issues/14041. An example of commands is shown in the issue description.
network_mode: "host" solves the issue as long as the application is listening on <IP_ADDRESS>.
You can't use the same routing trick to access ports on a remote <IP_ADDRESS> address because the kernel handles specially a case with a loopback destination address, you will see something like 'packet dropped, martian destination <IP_ADDRESS>' in the kernel logs (dmesg).

here is the correct link

Cheers! :+1:

network_mode: "host" solves the issue as long as the application is listening on <IP_ADDRESS>.

AFAIK it'd be like running the software outside of the container, so if the default there is to bind to <IP_ADDRESS> or <IP_ADDRESS>, that's what you get with host network mode. You get a more consistent experience that way?
Alternatively, you don't publish any ports for the container and just have a reverse proxy route via the container network. If host mode network isn't what the user wants, they'd probably want the reverse proxy option and they should know how to configure that as it's not specific to this project.

Close as I want to keep 3001:3001.


bundle resource is copied to wrong directory when Multilingual Mode and Custom output format

There a image in content folder name cat-behaviour.jpg -> content/cat-behaviour.jpg
Expected output:
public/htmlcontent/cat-behaviour.jpg
public/th/htmlcontent/cat-behaviour.jpg

Acual output
public/htmlcontent/cat-behaviour.jpg
public/htmlcontent/th/cat-behaviour.jpg

cat-behaviour.jpg file shall copied to public/th/htmlcontent/cat-behaviour.jpg instead of public/htmlcontent/th/cat-behaviour.jpg.
Reppsitory for reproduce:
https://github.com/blackb1rd/hugo-71
Config file
baseURL = "http://example.org/"
languageCode = "en-us"
title = "My New Hugo Site"
theme = "hugo-theme-learn"

[outputFormats]
  [outputFormats.HTMLCONTENT]
  mediaType = "text/html"
  baseName = 'htmlcontent'
  path = "htmlcontent"
  isPlainText = false
  isHTML = true

[outputs]
home = [ "HTML", "RSS", "JSON", "HTMLCONTENT"]
page = [ "HTML", "HTMLCONTENT"]
section = ["HTML", "RSS", "HTMLCONTENT"]

[languages]
  [languages.en]
    languageName = "English"
    title = "In English"
    weight = 2
  [languages.th]
    languageName = "ไทย"
    title = "th ไทย"
    weight = 1

This bug related:
https://github.com/gohugoio/hugo/issues/5858
https://github.com/gohugoio/hugo/pull/5862/files
The renderResources function need to generate each resource page with custom output format instead of doing as once.

Need to check multihost for resources/resource.go
func (l *genericResource) relTargetPathForRelAndBasePath(rel, basePath string, isAbs, isURL bool) string {
	if multihost && basePath != "" {
		rel = path.Join(basePath, rel)
	}
}


Scaffold the Dynamic Vendor Load DAG

Trigged by Daily monitoring DAG, the payload received from Vendor Management App will create a DAG run that will dynamically assemble tasks specific to an Organization's Interface and from additional fields in the payload.

helpful diagrams and docs:

https://github.com/sul-dlss/libsys-airflow/wiki/Data-Loading-Pipeline
https://docs.google.com/document/d/11JzLJb9kbW4u3dDLZ9_oFtsRtmnPkl0laS4zigQh5X0/edit

What's dynamic about the DAG?  possibly:

which vendors to run
which tasks to run for a given vendor (e.g. some or all of invoices, orders, and bib records)

DLME Airflow may provide an in-house reference for this sort of work, since it also does some dynamic DAG building.  @aaron-collier or @edsu may be able to pair on using DLME as an example.

For this ticket, just create placeholder Tasks using the EmptyOperator that can be replaced with  PythonOperators once those tickets are implemented.

This ticket will be done when the tasks can be loaded and seen in the Airflow GUI (even if the tasks are EmptyOperator placeholders that will later be replaced by PythonOperator implementations).  The outline of the DAG, but not the full implementation (because the data loading app endpoints don't exist yet).

I saw something in the running notes implying this was done.  Is it done?  Where do we look to check?

If I understand correctly, the Daily monitoring DAG is done, but this is a different DAG which is yet to be done. https://github.com/sul-dlss/libsys-airflow/issues/247
It may be that we want to name these differently in the code/UI to make their purpose clearer.

Possibly see https://github.com/sul-dlss/FOLIO-Project-Stanford/wiki/Vendor-Management---FOLIO---Airflow-Interaction-Diagram
Also, we seem to be switching to vendor specific dags ... not sure if that relates directly to this ticket or not.

@aaron-collier and I will be meeting tomorrow but yes this ticket will be replaced by upcoming vendor-specific DAG tickets. I'll keep this ticket open for now to track the example vendor DAG I'm working on.

Closing this issue with example Gobi PR closed yesterday.


Who designed the twemoji credit card squiggle?

Hey, I'm really sorry for clogging the issues page, but like, I really want to know the answer before I go to sleep. It's selfish, I know. I'm so sorry.
Does anyone know who designed the twemoji credit card? I really want to know how many tries it took to make the squiggle, or if it was a one shot thing? I can't stop thinking about it.

Full emoji:

Issue needs to be closed

Issue needs to be closed

Not until I find out who designed it!!


H713A issue

The H713A heater is showing as a light when using this plugin... Is this the intended behaviour.. How can I get around this?

Hi @oscar-pitts apologies this was a mistake on my behalf! Please try v9.4.1 of the plugin

Excellent thank you so much!! I could NEVER do what you do!

However, I cant seem to get this to work now @bwp91 ...

This device should be appeating as a heater accessory in the home app now right?
What can't you get to work?

confused as to what this is all about - neither one seem to actually make an action happen


Updating Broken Markdown Links

Updating links that were showing an error for previous pages-for-subheaders links, as well as a broken markdown link in the v2.0-v2.4 namespace-migration.md page.

@btat Just updated the links, thanks for the review Billy!


Is something wrong when detect commonjs？

version：~8.2.1
code：
//Extend jProto with methods which don't require arguments and work on columns.
this.j$ = this.jStat = (function(Math, undefined) {return jStat;}(Math));

output：
(function () {
'use strict';
var commonjsGlobal = typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};

//Extend jProto with methods which don't require arguments and work on columns.
commonjsGlobal.j$ = commonjsGlobal.jStat = function (Math, undefined) {
    return jStat;
}(Math);

question：
when delete require in comment，this will become undefined like webpack
so the way to detect commonjs is simply find the key word 'require'？
this is a beautiful mistake...

Hey folks (this is a canned reply, but we mean it!). Thanks to everyone who participated in this issue. We're getting ready to move this plugin to a new home at https://github.com/rollup/plugins, and we have to do some spring cleaning of the issues to make that happen. We're going to close this one, but it doesn't mean that it's not still valid. We've got some time yet before the move while we resolve pending Pull Requests, so if this issue is still relevant, please @ me and I'll make sure it gets transferred to the new repo. :beer:


Rewayat Club

Source name
Rewayat Club
Source link
https://rewayat.club
Language
Arabic
Other details
I wish it would be added.
Acknowledgements

[X] I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.
[X] I have written a title with source name.
[X] I have checked that the extension does not already exist by searching the GitHub repository and verified it does not appear in the code base.
[X] I will fill out all of the requested information in this form.

Duplicate of #78


Image writing

I wrote a nice little function to save a png image from a breeze matrix, and I would like to contribute it to the project. Is there an interest? Should I put it in breeze.io? Any recommendations for the interface?

Not sure if I should make a PR already, but this is how it looks like https://github.com/nlw0/breeze/blob/master/math/src/main/scala/breeze/io/ImageIO.scala
I'm having some trouble to build the library in my ancient computer, so it's hard to test it properly right now.

Hi @nlw0, sorry about the slow reply.
That would be great!


why some of language locales on "Tour of Go" makes server error?

What did you expect to see?
Tour in Russian language
What did you see instead?

Translations are run by third parties, eg the russian one probably by https://groups.google.com/g/golang-nuts/c/6MN5esr08Sw/m/wO_rLiqmCQAJ

Please see golang/tour#1039. Closing here.


server crashes with *** Error in `./ws_examples': double free or corruption (out): 0x00007f0014003160 ***

ws_example crashes with:
*** Error in `./ws_examples': double free or corruption (out): 0x################ ***
when using ng-websocket in an angularjs page. It occurs using chromium when I exit or close the associated browser tab. It doesn't happen using firefox or if I navigate away leaving the tab open.

What platform are you on? And would you mind posting a backtrace (add compile option -g in the CMakeLists.txt)?

I'm on linux (Ubuntu 15.04)
It is only caused when chromium is run on the same machine.
gdb_backtrace.txt

Thank you, will have a look at it later Today or Tomorrow. Are you using g++4.8, or g++4.9 (or later)?

And what boost version are you running? Still looking for the problem, at the moment I'm thinking it might be a coroutine issue (maybe from using an older boost version), but I'll look into it further. I am also unable to reproduce the issue (have not tried ng-websocket though).

Very strange that the commit solved the issue. Do you see why?

sorry no to get back earler: g++4.9 and boost1.55 if it still matters.
Does send_queue.clear() act like a flush and try to write something to an endpoint that is already gone where erase just deletes it without any other actions?

Does it still crash with ng-websocket by the way?

And please try the latest commit.

Looks good. I can no longer make it crash.


Always close MongoDB cursor

in the MongoAuthenticator.

PR: https://github.com/pac4j/pac4j/pull/245


Commit first

Thanks for the PR.
Hope to see more contribution from you in this organization in future.
We will like have you onboard.
Feel free to contact me in case of any doubt.


Missing parent: GO:1990542 mitochondrial transmembrane transport

GO term ID and label for which you request a new superclass

GO:0006839   mitochondrial transport
Transport of substances into, out of or within a mitochondrion.
does not have
GO:0140021 mitochondrial ADP transmembrane transport
Or
GO:1990544 mitochondrial ATP transmembrane transport
As descendants

Actually most things seem to be protein transport under here,
https://www.pombase.org/term/GO:0006839
non of the transmembrane transport so maybe this is intentions, but transmembrane transport used to also be under here and ins't excluded by te definition.

So this is the issue:
GO:1990542 mitochondrial transmembrane transport
2021-11-20 | Deleted | RELATION | is a GO:0006839 (mitochondrial transport)

Where do you see that ?
I see the relations here

In fact what is missing is the relation between 'mitochondrial transport' and 'mitochondrial transmembrane transport'
This is because the logical definitions dont use the same genera:
mitochondrial transmembrane transport
transport
and ('results in transport across' some 'mitochondrial membrane')
and ('results in transport to from or in' some mitochondrion)
mitochondrial transport
'intracellular transport'
and ('results in transport to from or in' some mitochondrion)
mitochondrial transmembrane transport
transport
and ('results in transport across' some 'mitochondrial membrane')
and ('results in transport to from or in' some mitochondrion)
I changed 'mitochondrial transmembrane transport to intracellular transport, these should now be children of each other
Thanks, Pascale


JPG Image capture/output

I wasn't able to capture images from the camera using the sample aplication/dump mode. Is it supported or is there any code available to output a JPG image to the host?

Hi viniciuscsf,
Would you share the version information about FW and RSID SDK to me?

Hi, I'm using the Realsense ID version 0.33.3
Firmware: <IP_ADDRESS>1

NNLAS - <IP_ADDRESS>
RECOG - <IP_ADDRESS>
AS2DLR - <IP_ADDRESS>
NNLED - <IP_ADDRESS>
OPFW - <IP_ADDRESS>1
DNET - <IP_ADDRESS>
YOLO - <IP_ADDRESS>

Would you try to run the preview sample?
https://github.com/IntelRealSense/RealSenseID/blob/master/samples/cpp/preview.cc

@viniciuscsf Try running as root this script to enable it.


v2.1.0 Release

Changelog
Added

Add support for getting OAuth token info (#205)

Changed

Fix schema issues in the Event, Message, Draft, and CodeExchangeResponse models (#203, #204, #205)

License

I confirm that this contribution is made under the terms of the MIT license and that I have the authority necessary to make this contribution on behalf of its copyright owner.

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

Comparison is base (65b8977) 78.53% compared to head (4271547) 78.53%.

Additional details and impacted files
@@            Coverage Diff            @@
##               main     #206   +/-   ##
=========================================
  Coverage     78.53%   78.53%
  Complexity      199      199
=========================================
  Files            29       29
  Lines           722      722
  Branches         69       69
=========================================
  Hits            567      567
  Misses          117      117
  Partials         38       38

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


publish on conda to use GPU packages like cupy and cuML

publish on conda-forge

HI! I came across this issue based on the cuML reference.
Just wanted to mention that cuML and CuPy packages can be installed via pip, too! Happy to try to answer any questions you might have.

Generally speaking, yes it should. You may not be able to install CuPy without a GPU present, though.
cuML will also require using the extra-index-url option.

Got it, thanks so much for finding this issue and for the help!


Multi page surveys

Set up to manage multiple pages, e.g., RME, using something like a page column.

[ ] How do we tell the system about pages? Whats on a new page, whats the order, can you go back?
[ ] Do you store incrementally at each page? if so, how? (i.e., one row in DB per page, or a local object thats dumped in DB when no more pages come in)
[ ] Does the back end give all pages at once, or one page at a time?

See here for more → https://github.com/Watts-Lab/surveyor/issues/1#issuecomment-895261068

@KaranSampath can you try to solve this next?

How's this going?

Was focused on task mapping for the past week so haven't done much on this yet. I should have a good idea of how to go about this by tomorrow's meeting.

OK. Thats fine, task mapping is more time critical for now.

[ ] User disconnects/closes, we should only save the final survey
[ ] Add disclaimer saying that 'You cannot come back to this page' at the end of every page
[ ] Add .page column to allow for alphanumeric ordering of pages
[ ] Allow for randomization of letters/numbers in .page
[ ] Modify RME survey to be multi-page and check which of the other surveys are designed to be single page only

Check in. When do you think this can be completed?

Sorry, was under the weather with COVID-like symptoms. Surveys have been modified, and am working on modifying VSCode now. Will ensure it is done by tomorrow.

Having been working on this in #40

Just checking in, is this basically done?

@KaranSampath if you need help and blocked, we can set up a time to go through it next week


Release cobigen-eclipse-v4.4.2

This issue has been automatically created. It serves as a container for all release related commits

Automatically processed.
The decisions taken by the developer and the context of the decisions throughout the script:

User confirmed that tests are running on CI and the build is not failing.
User confirmed that tests are running on CI and the build is not failing after pushing release changes to development branch.


build: use same pattern for format / lint run scripts

Issue or need
To lint all code in project, run script is lint:code. To format all project run script is format-all.
To lint just some files (mainly for lint-staged), run script is lint:code:raw. To format some files, run script is format
There's an inconsistency, as default run script for linting lints the whole project (which makes sense). However, to format all project you need to add -all suffix.

Proposed changes
Change format run scripts so that by default they format / check all project. If just some files need to be formatted / checked then :files can be appended.
Uses the same :files suffix for run script to lint some files too.

Quick reminders

🤝 I will follow Code of Conduct
✅ No existing pull request already does almost same changes
👁 Contributing docs are something I've taken a look at
📝 Commit messages convention has been followed
💬 TSDoc comments have been added or updated indicating API visibility if API surface has changed.
🧪 Tests have been added if needed. For instance, if adding new features or fixing a bug. Or removed if removing features.
⚙ API Report has been updated if API surface is altered.

#1033  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @davidlj95 and the rest of your teammates on  Graphite


RATIS-1001: add currentTerm to LeaderInfoProto for supporting SCM-HA.

What changes were proposed in this pull request?
During SCM-HA, SCM not only needs to know whether it is a leader, but also needs to know which term it is in charge of.
Assume such a case: underlying raft node was leader on term 1, then step down as follower on term 2, then init election and become leader again on term 3. If term is not exposed together with leader information, SCM can not distinguish a leader of term 1 from that of term 3.
BTW, according to nanda's design, leader SCM need propagate its term to Datanode, RaftServerImpl::getRoleInfoProto() will be a good place to expose term from Ratis to SCM
What is the link to the Apache JIRA
https://issues.apache.org/jira/browse/RATIS-1001
How was this patch tested?
CI

+1

@lokeshj1703
The concern here is we need consider the atomicity of reading role and reading term.
For leader case, LeaderState has its member private final long currentTerm;, which is read only, meanwhile RoleInfo has its member AtomicReference<LeaderState> leaderState, which is an atomic variable, thus current getRoleInfoProto() can ensure the atomicity of reading role and reading term.
But for candidate and follower, if we want to ensure of same atomicity, we need lock entire RaftServerImpl, reading role and call getState().getCurrentTerm(). But I didn't see the requirement of return candidate and follower with its term.

@GlenGeng Thanks for the contribution! I have committed the PR to master branch.


ContextKeys are missing and not properly defined

Current implementation of src\Model\ContextKeys.re not fully correct
It missing both textInputFocus and menuFocus
The were removed here https://github.com/onivim/oni2/pull/786 but wasn't added back anywhere.
Also after looking in ContextKeys.re I've noticed that other key also not propely defined.
For example editorTextFocus
| TerminalInsert
| TerminalNormal
| TerminalVisual(_) => false
| _ => true

Basically it say that it on focus all the time but not terminal.
And there kinda wrong because you might be in Menu, Search, WildMenu, and other places at this moment.
That why paste into text input currently work in insertMode and also work when I add editorTextFocus
Same goes for terminalFocus
is active when
| TerminalInsert
| TerminalNormal
| TerminalVisual(_) => true
| _ => false

But still can open menu or smth.
Can we refine and refactor this to be more persistent and clear about different ContextKeys?
It already blocking me from further improving textInputs and few other things.
In addition we have Keybinding Suggestions and Contribution Opportunities
as good-first-issue and people going to be confused while working on it.

@bryphe I see 2 PR that fix this issue. Nice work!

Awesome! Thanks @fanantoxa for confirming, appreciate the help
I added a (ugly) debug UI to help troubleshoot these sorts of issues as well:

Let me know if you see any other context keys that are incorrect 👍


export.xml file name varies with different language settings

The XML file exported from my phone has a Norwegian file name  – eksport.xml 🙄
I can work around this by unpacking the zip and using --xml, but then I lose the workout points.
Perhaps this could be solved by --localized-xml eksport.xml? Alternatively just fall back to the first XML file in the root folder of the zip.

I'd be happy to teach the tool to look for export.xml or eksport.xml - and then expand that list to other languages.

The "first XML file in the root" solution is probably easier though!

I switched my phone to Spanish and ran an export - I got a file called exportar.zip. Unzipped I still got a apple_ health_export folder but the root contained:
electrocardiograms/
export_cda.xml
exportar.xml
workout-routes/

It looks like export_cda.xml does not have a translated name, so maybe I can ignore it and look for the /other/ .xml file in that directory.

I think the safest thing is to sniff the first few lines of the file. Those should be the same no matter the language that was used:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE HealthData [

Checking for either <!DOCTYPE HealthData or <HealthData in the first 1000 bytes should do it.

OK, if you upgrade to the just-released 1.0 this should work (it worked against my Spanish export).

Nice! Works perfectly. Thanks for the quick response and great tooling in general.


dvcignore html/markdown output

Can we automatically add a .dvcignore in the live dir when html/markdown output is generated? I don't think anyone wants to track these with DVC, and they break patterns like making the whole dir a plots output.

Closing as duplicated of https://github.com/iterative/dvclive/issues/242


[hipSYCL] Add hipSYCL GitHub CI

Description
This PR will add a github CI to test compilation and the CPU target for the BLAS domain with hipSYCL
Checklist
New features

[ ] Have you provided motivation for adding a new feature?
~Have you added relevant tests?~

@sbalint98 What is the status of this PR? If you don't think you will make progress, can we close the PR and open it again when it is ready?

Pinging @nilsfriess and @normallytangent as they took this over from me.

I wanted to first finish #226 so that we can also add tests for the CUDA backends to the GitHub CI.
But I can also first finish this PR with the backends that are currently supported by hipSYCL if you prefer.

@nilsfriess Either way works. I was just trying to understand if you/your team is still working on this PR or not. Thanks for your contributions!

Just to give a quick update @mmeterel : We had some troubles with the cuBLAS backend (see #245 and #249), this is why this PR did not receive any updates. But @normallytangent is no starting to work on this to add the CI builds for the remaining backends that are supported by hipSYCL.


Is https://facebook.github.io/react-native/ Offline?

I am trying to access the page https://facebook.github.io/react-native/ and also https://facebook.github.io/react-native/docs/getting-started.html and it is returning an error 404 File not found, it is just here?

I asked for some friends to open the link in different internet connections and everyone is getting a 404. We are all in Brazil, is that some problem with our DNS?

Now also asked for friends from different countries, everybody reported a 404.

The latest commit was missing a necessary file. @sophiebits fixed this over in the React Native repo, and I'm pushing an updated commit to this repo now.


Fix broken links in 1.7 archive

fixes https://github.com/docker/docker.github.io/issues/6909

@L-Hudson I think this belongs to you.


No issue: just a thank you!

@darrenmerrett
If this works as promised you have just made my day!
I've purchased a Laravel Spark unlimited license but then decided to stop diving into it because it was way to much work to solve the React integration.
I just may pick this up again for a future project. Thank you!
Be sure to spread the word about your efforts in the community!

HI, have you had a chance to use the integration yet?


Doesn't work on mine

it doesn't show anything either on PC or my phone, I'm using alldebrid and got the API set up.

fixed


Sso/bug empty auth uri

Hi Wayne,
Added a fix for the bug where we don't check for the authURI. I also fixed up some error messages and added some error-checking that we missed in the authenticationConsumer.
I'll be checking this into ClearCase if you accept the pull request and it passes the tdriver tests!
Thanks,
Alan

Just a couple of small comments:
progress.auth.js:
around line 91 and again around line 261:
We hadn't talked about this before, but I guess that the code that tests for headerName being empty should also test for it being a string, and throw an error if it isn’t.
progress.js
lines 132 and 134:
For jsdoMSG500 and jsdoMSG502, should we use the word “property” instead of “field”?

Hi Wayne,
I added those fixes for both of them.
-Alan

remember to bump up the version numbers at the tops of the files before checking in to ClearCase.


SWARM-1306: Try to avoid deploying/releasing testsuite artifacts.

Motivation
Nobody consumes them, so we shouldn't push them to central.
Modifications
Added some nexus-staging-plugin configuration on the testsuite/pom.xml
to inhibit/skip staging these artifacts.
Result
Hopefully, but unable to verify until we try a release, not deploying
the testsuite artifacts to central.

[X] Have you followed the guidelines in our Contributing document?
[X] Have you created a JIRA and used it in the commit message?
[X] Have you checked to ensure there aren't other open Pull Requests for the same issue?
[X] Have you built the project locally prior to submission with mvn clean install?

retest this please


Support for Confluent Schema Registry

I would like to use the Python components [apache_beam.io.kafka.``WriteToKafka|https://beam.apache.org/releases/pydoc/2.32.0/apache_beam.io.kafka.html#apache_beam.io.kafka.WriteToKafka] and [apache_beam.io.kafka.ReadFromKafka|https://beam.apache.org/releases/pydoc/2.32.0/apache_beam.io.kafka.html#apache_beam.io.kafka.ReadFromKafka] while accessing and updating Schema Registry for sending and reading protobuf messages.
In Java it is possible to achieve this:

 PCollection<KafkaRecord<Long, GenericRecord>> input = pipeline
   .apply(KafkaIO.<Long, GenericRecord>read()

     .withBootstrapServers("broker_1:9092,broker_2:9092")
      .withTopic("my_topic")
      .withKeyDeserializer(LongDeserializer.class)

     // Use Confluent Schema Registry, specify schema registry URL and value subject
      .withValueDeserializer(

         ConfluentSchemaRegistryDeserializerProvider.of("http://localhost:8081", "my_topic-value"))

   ...

Imported from Jira BEAM-12871. Original Jira may contain additional context.
Reported by: denesb.

This feature will be extremely useful. Pythons is one of the most popular languages to handler data and it will help to diffuse more the Apache Beam to consume data from kafka and ensure that the producer/consumer  won't broke in case changes in the schema.
I have a use case that this feature will help me a lot.

I would also need this feature as well!


tensorflow 1.0

Thank you for the pull request.
Thank you also for experimenting with XLA, apparently without success.
I will merge the TF 1.0 related changes soon.

I integrated your TF 1.0 changes. Thank you for the pull request.


LockOrientation not working on tablet

Hello, I do this:
        if (Settings.OrientationSwitch)
        {
            DeviceOrientations selectedOrientation = Settings.Orientation == 0 ? DeviceOrientations.Portrait : DeviceOrientations.Landscape;

            CrossDeviceOrientation.Current.LockOrientation(selectedOrientation);
        }

Is working perfectly on iOS mobile, but is not working when I deploy to tablet devices. Any idea?
Thank you!

Hi, thanks for the feedback! Could you give me additional info?

Which device do you use (versions)?
Xamarin.Forms or Xamarin iOS Native?

Hello!
As far as I know is not working in iPad Air 2 and later. I think that is working in iPad 1 but I can not remeber so well.
I’m using your plugin in both platforms native and forms, in fact I’m using native forms switching between 2 platforms.
Thank you so much!

Is working.
It was my fault !!!
You should chek in info.plist: Requires fullscreen
Thank you so much!


The Manifest should be optional

Description
The Manifest file is not mandatory. Its presence should be optional
Example
No response

Done


Added about page using 3d pin (a small section of your profile)

I have included the about page using the 3d pin where the user could see the about page
@Sayak-Bhunia  check this one pls

https://github.com/Sayak-Bhunia/mystory/assets/119944779/d913dc02-2c6e-4271-bd84-34dd44349d9c
closes this issue #235.

@Aksshay88 About page should tell brief about the project not the repo owner.

@Kritika30032002 will change this and update
Will include the project repo in the 3D pin where the user could see the project repo more detailed version
Thanks for suggesting

about page is assigned to someone else


Familiar bugfixing

Fix headless ratman not stealing heads if in equipped ring
Fix players getting the "headless cthulhu head" advancement when
they should not
Heal the chimera a little when feeding it

Thanks a lot! Super quick fix


Promoting nuisance parameter to POI for scanning

When running MultiDimFit, there should be two options to scanning a POI vs a nuisance parameter (in a 2D grid). The first is to use for example -P r -P nuis, however, here combine complains that nuis isn't in the model since it looks only for objects inside the ModelConfig list of parameters of interest. The second method is to --redefineSignalPOI r,nuis. Here combine doesn't complain but the constraint term on the nuisance parameter appears to be dropped from the fit? Is there a way to avoid this or simply allow MultiDimFit to ignore whether a parameter is POI or nuisance?

Hi Nick,
redefineSignalPOI does not remove the constraint from the NLL, but removes the parameter from the list of nuisances and so when doing the getVal of the nuisance in https://github.com/cms-analysis/HiggsAnalysis-CombinedLimit/blob/slc6-root5.34.17/src/CachingNLL.cc#L900 we don't know the normalization set and the pdf may become trivial (though for all constraints implemented as SimpleGaussianConstraint the problem shouldn't be there, since they remain Gaussians and do not depend on what is the set of nuisances)
One could indeed extend MultiDimFit to allow fetching the parameter from the full RooWorkspace::allVars() if it's not found in the POIs, though maybe it would be good to print a warning in this case since other things may become less well defined (e.g. we want the "remaining POIs" to still be just POIs, I suppose...)
Giovanni

Ok, I see. I was testing with a simple datacard with only a signal process with a 10% lnN systematic and there I was seeing the issue.
I think extending MultiDimFit to look at allVars() is the way to go but I see it needs to be done in several places. I'll take a look later this week and report back.

On further investigation, it seems trivial to allow MultiDimFit to accept nuisance parameters as "parameter to scan" using --poi by simply using the workspace.
Upon doing so, although the constraint is back, the range of the nuisance parameter is suddenly [-INF,INF] even when manually setting the range using --setPhysicsModelParameterRanges.
The culprit is a call to FitterAlgoBase::optimizeBounds in run which removes the range of all nuisances. This does not get resolved (i.e FitterAlgoBase::recoverBounds is not called) until AFTER the fitting so that the range MultiDimFit will assume is infinite.

Hi,
There's an attribute on the roorealvar, that can be cleared to disable the
boundary optimization.
Giovanni
Il 3-dic-2015 07:21 PM, "nckw"<EMAIL_ADDRESS>ha scritto:

On further investigation, it seems trivial to allow MultiDimFit to accept
nuisance parameters as "parameter to scan" using --poi by simply using
the workspace.
Upon doing so, although the constraint is back, the range of the nuisance
parameter is suddenly [-INF,INF] even when manually setting the range
using --setPhysicsModelParameterRanges.
The culprit is a call to FitterAlgoBase::optimizeBounds in run which
removes the range of all nuisances. This does not get resolved (i.e
FitterAlgoBase::recoverBounds is not called) until AFTER the fitting so
that the range MultiDimFit will assume is infinite.
—
Reply to this email directly or view it on GitHub
https://github.com/cms-analysis/HiggsAnalysis-CombinedLimit/issues/245#issuecomment-161737891
.

Issue is resolved in PR #261


ci: improve rust cache

Experiments here: https://github.com/aasseman/indexer-service-rs/pull/1
tl;dr reduced the time by more than an order of magnitude

Rebased onto latest main


SDK Question.

This is more of an inquiry. Why use the minio for s3 over the aws sdk? You get bound to using AWS Access keys over being able to leverage IAM profiles as well. Would you be open to a PR swapping out sdk for something more robust?

Thanks for your interest @john-delivuk. Not sure I'm following. AFAICT, there seem to be two orthogonal things going on here: 1. being able to leverage IAM profiles, and 2. you suggesting that Minio is not "robust". Ad 1. I'd say that the current setup allows for most portability (since IAM is only available in AWS) so to me that's not a compelling reason to move away from Minio. Ad 2., I'm not sure what you mean with "something more robust", can you maybe give an example?

I can see how using minio provides a smaller foot print and sufficient for uploading an object. Using the aws-sdk would allow you to use all compatible forms of authentication, this allowing for the most versatile deployments in aws , as well as maintaining the same outside of. Seeing as minio does have some versatility because you can use generic s3 compatible object stores vs official s3, there is a benefit there, but I'm fairly confident this can be achieved using the official sdk as well. The features will be basically be the same, that was poor phrasing on my part. This comes down to management and offering multiple options to the user.


Fixed missing typescript docs link in navigation

I forgot it when I added compatibility in #2795

This also needs to be backported to plone6-docs branch. See https://github.com/plone/volto/issues/3036

Thanks @stevepiercy for taking care of creating #3080. I'm really late with some of the work I would like to do here :(


Issue with splunklib searchcommand validators in python 3

TypeError at "/opt/splunk/etc/apps/splunk_app_infrastructure/bin/external_lib/splunklib/searchcommands/validators.py", line 270 : "delimiter" must be string, not bytes
Python 3.7
If I change delimiter, quotechar and lineterminator to unicode, I don't see errors.
class List(Validator):
    """ Validates a list of strings

    """
    class Dialect(csv.Dialect):
        """ Describes the properties of list option values. """
        strict = True
        delimiter = b','
        quotechar = b'"'
        doublequote = True
       lineterminator = b'\n'
        skipinitialspace = True
        quoting = csv.QUOTE_MINIMAL

Fixed and closed: https://github.com/splunk/splunk-sdk-python/commit/79ad17a8ec2576bbd7de70475cbf7b547ffca5b7


add REMOTE_PORT setting

My servers usually use different SSH ports. To test bento I had to add a REMOTE_PORT setting. Maybe you find it useful.

Thanks!


Recommendation: component RUM performance react-lite vs react

Hi team,
Really, really like the clear and focused objective of react-lite.  Would it be possible to see a RUM-style performance (network-time, dom-time, time-to-visual render time, etc) comparison of the same (material-ui or similar) component examples running in react-lite and react?
Ideally, zero difference or possibly better runtime performance and far-better initial-call network performance with a smaller .js file, but without seeing a comparison just assumptions.

This post maybe useful:)


[CH] CartesianProduct cause OOM when input is empty

Backend
CH (ClickHouse)
Bug description
set spark.sql.autoBroadcastJoinThreshold=-1;
set spark.sql.shuffle.partitions=100;

create table test_join(a int, b int, c int) using parquet;

select * from
   (select a from test_join group by a order by a),
   (select b from test_join group by b order by b),
   (select c from test_join group by c order by c)
limit 10000;

CartesianColumnarBatchRDD outputs 100 * 100 * 100 = 1000000 partitions, and ShuffleMapStage will create 1000000 tasks.
But, when we use vanilla spark, CartesianRDD only outputs 1 partition.
Spark version
None
Spark configurations
No response
System information
No response
Relevant logs
No response

Root Cause
Vanilla RangePartitioner numPartitions is rangeBounds.length + 1,  which may not be the same as original paritions. While gluten NativePartitioner numPartitions is the given partition size of RangePartitioner.
Vanilla Spark:

Gluten:


Consider Age-Adjusting other conditions (e.g. diabetes, copd)

Currently we are implementing #1459
If we can source the needed data, it would benefit equitable representation to expand our age-adjusted ratio calculations beyond COVID deaths and hospitalizations to include other conditions that disproportionately affect minority racial/ethnic groups.

Pending guidance from Ebony - which conditions should be age-adjusted. Once we know by topic, we can categorize into three groups:

should be age-adjusted, learn if we have the data needed (add to roadmap).
should be age-adjusted, but we do not have the data (include infobox why missing data is a problem) or
should not be age-adjusted, (include infobox as to why its not needed).

Per Ebony (bolded)
Currently Age-Adjusted:
Covid Deaths
Covid Hosp
Not Yet Age Adjusted (but appropriate if data were available): (You could do all of these, but aren’t completely necessary)
Diabetes? (This could be age-adjusted, but…isn’t necessary unless we have info on Type 1 or Type 2 diabetes in the set)
Chronic Kidney Disease?
Cardiovascular Disease? (could be age-adjusted since it is less likely that a young adult for example would have a heart attack)
COPD?
Asthma? (This could be age – adjusted since children are more likely to continue to have asthma symptoms, but isn’t necessary)
Age Adjustment N/A:
Covid cases
covid vaccinations (may need to be age-adjusted since under 5 are still not eligible, but can still get COVID)
voter participation
care avoidance?
preventable hospitalizations?
depression?
excessive drinking?
frequent mental distress?
suicide?
illicit opioid use / non-rx opioid use / substance misuse
poverty
uninsurance

Can we age adjust any other topics?
Per Josh
Poverty
Uninsurance
only two topics that we have data on currently.
okay holding on this


ERROR: Could not find any ADB device ERROR: Server connection failed

ERROR: Device is unauthorized:
ERROR:     -->   (usb)  bu55o7nb7lzddemf          unauthorized
ERROR: A popup should open on the device to request authorization.
ERROR: Check the FAQ: https://github.com/Genymobile/scrcpy/blob/master/FAQ.md
ERROR: Server connection failed

https://github.com/Genymobile/scrcpy/blob/master/FAQ.md#device-unauthorized


resetting data binding doesn't clear selectedItems

I have a ng-grid which has options:
$scope.callFlowGridOptions = {
data: 'routes',
enablePaging: false,
showFooter: false,
showSelectionCheckbox: true,
selectedItems: [],
enableCellEditOnFocus: true,
...
}
when I click a button and reload the data binding,
LMC.getRoutes( criteria, filter )
.success( function(routes) {
$scope.routes = routes;
} );
the selectedItems remains and are not cleared.
It is expected that the data binding changes, the selectedItems should be reset to an empty array and should not carry over from previous data binding

I have to manually clear the array items:
LMC.getRoutes( criteria, filter )
.success( function(routes) {
$scope.routes = routes;
while ($scope.callFlowGridOptions.$gridScope.selectedItems.length) {
$scope.callFlowGridOptions.$gridScope.selectedItems.pop();
}
} );
if I do:
$scope.callFlowGridOptions.$gridScope.selectedItems = [];
it will not work

If you have replaced the items, how is it finding the selected items again?  Or are you saying they are still in the array even though they don't show selected on the grid?  Any chance of a plunker?

More information sought, not forthcoming after 3 weeks.  Closing, please reopen or reraise if this is still an issue for you.


Latest-5-commits-peer-to-peer-code-review

Hi @henask12,
Good job so far!
Suggested Changes ♻:

If there is a commonly used {property: value} within the same stylesheet,
consider targeting all the classes/id/etc that use it, and apply them all together.

e.g.
.class_1,
.class_2,
#id_1 {
  font-size: 2rem;
}

consider installing a Code-Formatter in order to keep your code well formatted before adding (git add) the file to the stage.

e.g.: Prettier

NOTE: members of the team will leave their review comments on the thread.

index.html
Line 334

[ ] It is better to remove unused attributes and move CSS styles to the CSS file.

style.css

[ ] It is better to use % to make a good style than the pixel.

Hi! @henask12 I have this kind suggestions for your code:


doesn't work in IE11

Hello!
Thanks for this great solution!
But it doesn't work in IE11. I can't fix it, maybe you can help me?
thanks in advance

done, just add


X962 wildcard support indication on pages

Implemented a generic Information component

Displays info icon
On hover displays a model with information
Allows a prop to display the information required as a component
Added ExternalIDFieldSearchInfo component
Updated Search and History page with info icon support for External Id

Functionality looks great. I made a couple of edits to the text. I also had a question about a comment.

Cool 👍


This does not show properly on your website or when installing the repo. <deck.gl/examples/website/geojson/>

This is what shows up on the website as an example.

Duplicate of #3886


Trees in directories showing up in root folder

Since v0.4.1, the uproot-browser correctly displays directory names in the side pane. However, the trees that reside in the directories are displayed both inside the directories and in the root path. Compare the two images below from rootbrowser and uproot-browser.

New release out (0.4.2) with the fix!


python3Packages.sphinx: drop imagemagick dependency

Motivation for this change
Remove rust from closure
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[ ] Tested execution of all binary files (usually in ./result/bin/)
21.11 Release Notes (or backporting 21.05 Release notes)

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

[x] Fits CONTRIBUTING.md.

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
Result of nixpkgs-review pr 135031 run on x86_64-linux 1

2 packages built:

python38Packages.sphinx
python39Packages.sphinx

I'm seriously confused wether this commit made it into master.
When looking at the GitHub web interface, it says that https://github.com/NixOS/nixpkgs/commit/406d8cbf687514b2992bce0f3bec7ace6b29515a is in master and also in no other branch.
Also on my local uptodate git checkout, git branch --remotes --contains 406d8cbf687514b2992bce0f3bec7ace6b29515a returns origin/staging, among a lot of other branches.
But both on the GitHub web interface as well as on my local checkout via git log origin/master pkgs/development/python-modules/sphinx/default.nix, the commit isn't listed at all? Also the actual change very clearly isn't existent in master, as I confirmed by looking at the files both in the web view as well as locally.
 And here I was thinking I'd understand Git.

@erictapen This change did land in master and I think https://github.com/NixOS/nixpkgs/pull/139160 could have been merged into master.


How do I use the npm client or a js client?

Hi there,
I'm trying to use the npm signalr-client, any example to use in VS2017? I don't see the way to connect to the server from javascript client, the Microsoft.AspNetCore.SignalR.Client.TS project example doesn't generate the signalr-client.js, so I don't know how to I could connected to the server with this new version of SignalR.
Thanks.

One way is to use npm to install the module and then copy the signalr-client.js file to the folder with scripts. You can use MSBuild Copy task to do that in one of the targets invoked during build (e.g. AfterBuild) - https://github.com/aspnet/SignalR/blob/dev/samples/ChatSample/ChatSample.csproj#L47-L49

Thanks @moozzyk I already did that (use npm to install the module) but this client is for node js server right?...if I use it doesn't work because it's not able to resolve its dependencies.
By the other hand, I achieved compile de js client from this project, so meanwhile I'm working with it.

This client is a browser agnostic signalr js client. The npm package is one of the way of distributing it.  The idea was that it should be possible to run it with node but the user needs to provide functionality that is missing via polyfills.

if I use it doesn't work because it's not able to resolve its dependencies

Not sure what you meant here - the module has no dependencies. If this was about xhr or websockets not present - as I said they are supposed to be provided by the user. (Admittedly, I have not tried it yet so there might be some work required if it is too hard),

I mean, when I tried to use this client, the error was about these lines:
var url = require('url'),
    querystring = require('querystring'),
    http = require('http'),
    https = require('https'),
    WebSocketClient = require('websocket').client; // https://github.com/Worlize/WebSocket-Node

I took the usage example:
var signalR = require('./signalr.js');
var client  = new signalR.client(
	"http://localhost:8080/signalR",  //signalR service URL
	['TestHub'],                      // array of hubs to be supported in the connection
    2,                                //optional: retry timeout in seconds (default: 10)
    true                              //optional: doNotStart default false
);

I imagine I have to configure the "url", "querystring" and the other modules in require, but I don't know, the truth is I'm a little confused.
In order to use the signalR module, I installed require js and I configured the path for signalr module pointing to "npm modules" folder.
So I think that I'm doing something wrong...you can give some example to use this client, please?


There is a problem on install.Py in line 36

File "install.py", line 36
print "\n"
^
SyntaxError: Missing parentheses in call to 'print'. Did you mean print("\n")?

fixed it im pretty sure

Have the same issue
Any ideas?

sorry i havent responded in awhile didnt see that you responded but run the install file with python2

All good. Thanks a lot!
Az iPhone-omról küldve

nov. 29. dátummal, 20:15 időpontban tuf_unkn0wn<EMAIL_ADDRESS>írta:

sorry i havent responded in awhile didnt see that you responded but run the install file with python2
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub, or unsubscribe.


AI: Eval UI can get in a bad state if you try to run Eval but forget to set the API key.

Forgot the error message that occurred but can be reproduced by trying to run a new eval but not setting the API Key for whichever model (in my case Open AI) one.
To resolve, I think I had to delete the metadata file that was generated.

should be fixed in https://github.com/google/mesop/pull/951/files#r1759530856


Specify v3.0 data specifications as such

In preparation for coming 5.0 work, explicitly name the 3.0 data-specs and file-dependencies so that it's clear they are for 3.0.
Additionally, I've changed any function that implicitly used data-specs to take an argument or use the :data-specs key on the processing context, so that when a 5.0 specification exists here, the functions will continue to work.
Pivotal story: 107856956

Those TODOs will have stories to address them.

LGTM

Closing, but this work has been merged into #111.


wire, server: revisit use of wire to fill in all fields of an Options struct

server.go has an Options struct with a bunch of exported fields in it.
Today, our examples use wire to fill it in, e.g.:
https://github.com/google/go-cloud/blob/master/samples/guestbook/inject_aws.go#L38
That function returns a *application, which needs a *server.Server, which needs a *server.Options; *server.Options is initialized using the Options{} provider. The generated code is here.
In order to build the struct, wire needs to provide all of the exported fields of the struct.

A down side of this is that it's no longer  possible to add a new field to the Options struct without breaking everyone's "go generate". Note that the previously-generated code will work fine, and use the zero value for the new field, but "go generate" will fail because wire will complain it can't find a provider for the new field.
This pattern also only works as long as all of the struct fields have unique types.
It also forces the caller to do a somewhat weird incantation using wire.Bind if they just want to leave a field nil (example).

Could wire allow struct providers to leave non-provided fields unset?
We could leave wire alone, but change the examples to have a newOptions() function that is injected more explicitly.
???

Similar to what we did for FieldsOf, I think we could use the field's name instead of type.
package wire

// Struct specifies that the given struct type will be provided by filling in the fields
// in the struct that have the names given. Each of the arguments must be a name
// to the field they wish to reference.
//
// For example:
//
//    type S struct {
//        MyFoo *Foo
//    }
//    var Set = wire.NewSet(wire.Struct(new(S), "Foo"))
func Struct(structType interface{}, fieldNames ...string) StructProvider

Documentation also checked in, this is fixed.


[Gekidou] Extract common observers to queries

Summary
Extract common observers used in components to queries.
Ticket Link
None
Release Note
NONE

This is very much align with something that @anurag6713 showed me today, the difference is that the function returns the query which then where is used we can do something like fetch(), observe() observeCount etc..
I really like that approach, something that we should definitely consider doing and is very much in line with this PR. Let's discuss it in today's meeting?
FYI: @shazm @anurag6713 @koox00 @jfrerich @Willyfrog @avinashlng1080

@enahum refactor done.

This is very much align with something that @anurag6713 showed me today, the difference is that the function returns the query which then where is used we can do something like fetch(), observe() observeCount etc..
I really like that approach, something that we should definitely consider doing and is very much in line with this PR. Let's discuss it in today's meeting?
FYI: @shazm @anurag6713 @koox00 @jfrerich @Willyfrog @avinashlng1080

I like it! So now app/queries... / @queries/... always return a Query object; and then we handle them in the observable if it needs to be an observable, or just .fetch() etc.

@shazm For anything query-like, yes. There are two other functions that are not "query-like": find and findAndObserve. find will be done here with handling exception catching within the getX functions. findAndObserve will be handled in a special way here, to address the problem of exceptions, and will be under the observeX functions. All that under @queries/....

[0/5] Side q - could we split it up into different sections? Threads, Channels / Posts, User / Profile, Sidebar, Sign up / Login etc? Happy to code review the sections I'm familiar with and make sure the other parts are working from a UX/QA perspective in here eitherway.

This PR has a lot of conflicts to be resolved.
I'm going to take the time and review this and probably we should all give priority to review this thing, have it merge to avoid more conflicts and start implementing this as a best practice sort of thing.
@shazm @anurag6713 @avinashlng1080 @jfrerich @koox00 if you can please go through the PR as well, if you end up approving and there are two approvals already and no conflicts, feel free to merge immediately

@enahum, I added myself as a reviewer.  Ping me after your review and I'll review also so we can get this merged.  Just to make sure progress is being made, are you fixing the conflicts now?

@jfrerich I am not fixing any conflicts at the moment, I'll let task to be done by the author of the PR

@enahum ok. Thanks!

@avinashlng1080 not sure why you are experiencing that error with XCode, but does not seem related to this PR. I cannot check because my mac has not arrived yet.

Awesome work!!


cant debugprint while dead

Describe your bug here.
you literally cant debugprint if you are dead
Command Prompt/Terminal logs (if existing)
No response
Are you modding a build from source or with Lua?
Lua
What is your build target?
Windows
Did you edit anything in this build?


What RBAC role gives access to a Share Image Gallery

I have create a Shared Image Gallery, but can't figure out what access i have to give of OPS team so they can access the image Gallery.  Our OPS team only are only members of the VM contributor role for the resource group we we keep our VM and where we have created the shared image gallery.

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

ID: 0d150ace-bd6d-8111-79b5-0ce7cb76a378
Version Independent ID: 13a828ae-ae92-9ea7-5f37-5a69eeeb87b7
Content: Share VM images with Shared Image Gallery in Azure
Content Source: articles/virtual-machines/windows/shared-image-galleries.md
Service: virtual-machines-windows
GitHub Login: @axayjo
Microsoft Alias: akjosh; cynthn

I think I figured it out
PS C:\windows\system32> Get-AzureRmProviderOperation Microsoft.Compute/Galleries/* | ft
Operation                                          OperationName                          ProviderNamespace ResourceName         Description

Microsoft.Compute/galleries/read                   Get Gallery                            Microsoft Compute Galleries            Gets the properties of Gallery
Microsoft.Compute/galleries/write                  Create or Update Gallery               Microsoft Compute Galleries            Creates a new Gallery or updates an existing one
Microsoft.Compute/galleries/delete                 Delete Gallery                         Microsoft Compute Galleries            Deletes the Gallery
Microsoft.Compute/galleries/images/read            Get Gallery Image                      Microsoft Compute GalleryImages        Gets the properties of Gallery Image
Microsoft.Compute/galleries/images/write           Create or Update Gallery Image         Microsoft Compute GalleryImages        Creates a new Gallery Image or updates an existin...
Microsoft.Compute/galleries/images/delete          Delete Gallery Image                   Microsoft Compute GalleryImages        Deletes the Gallery Image
Microsoft.Compute/galleries/images/versions/read   Get Gallery Image Version              Microsoft Compute GalleryImageVersions Gets the properties of Gallery Image Version
Microsoft.Compute/galleries/images/versions/write  Create or Update Gallery Image Version Microsoft Compute GalleryImageVersions Creates a new Gallery Image Version or updates an...
Microsoft.Compute/galleries/images/versions/delete Delete Gallery Image Version           Microsoft Compute GalleryImageVersions Deletes the Gallery Image Version

@naimco Good to know that you figured it out. We are going to close this thread as resolved but if there are any further questions regarding the documentation, please tag me in your reply and we will be happy to continue the conversation.

Hi @AmanGarg-MSFT  It is still not clear from the documentation or this page which RBAC role assignment is necessary to share gallery images within a tenant as well as across tenants. Could you please clarify?

@fluffy-cakes @naveengmc This talks about the RBAC role that needs to be assigned in order to share the gallery.
As mentioned in the document, you can provide permissions at three different levels:
Shared Image Gallery
Shared Image
Shared Image Version
However it is advised to provide read access to your users at the Shared Gallery level for the best experience.
You can refer to the below image for better understanding:

@naveengmc If you want to share images outside of your Azure tenant, at scale, you should create an app registration to facilitate sharing. Details are provided in this document:
https://docs.microsoft.com/en-us/azure/virtual-machines/linux/share-images-across-tenants

ah, great. Thanks @AmanGarg-MSFT

You are welcome 😄


Update ChatProto Documentation Fixes #59

2 months ago there was a change to the message property on chat messages. Thought i'd help you out by writing up the change.

<3

Thank you!


These values work for 10.0.19041.1 (20H1) Pro Insider build

These work for me in 10.0.19041.1 Insider build. Thanks Stas'M for his great tool and his somewhat hard to understand (but in the end super helpful) "tutorial" video. :D
[10.0.19041.1]
LocalOnlyPatch.x64=1
LocalOnlyOffset.x64=87611
LocalOnlyCode.x64=jmpshort
SingleUserPatch.x64=1
SingleUserOffset.x64=0BF0C
SingleUserCode.x64=Zero
DefPolicyPatch.x64=1
DefPolicyOffset.x64=17ED5
DefPolicyCode.x64=CDefPolicy_Query_eax_rcx
SLInitHook.x64=1
SLInitOffset.x64=1BDFC
SLInitFunc.x64=New_CSLQuery_Initialize

[10.0.19041.1-SLInit]
bInitialized.x64 =103FF8
bServerSku.x64 =103FFC
lMaxUserSessions.x64 =104000
bAppServerAllowed.x64 =104008
bRemoteConnAllowed.x64=104010
bMultimonAllowed.x64 =104014
ulMaxDebugSessions.x64=104018
bFUSEnabled.x64 =10401C

Thanks ! Works smoothly !

感谢大神这个好用的工具，不过今天发现系统从19041.2升级到19041.84之后就用不了了，重装也不管用，求助求助，谢谢了。

感谢大神这个好用的工具，不过今天发现系统从19041.2升级到19041.84之后就用不了了，重装也不管用，求助求助，谢谢了。

Follow instrctions here, find the update(from the day it never works) and uninstall it. After a system reboot, you'll find it working again.
DO NOT FORGET TO DISABLE THE WINDOWS UPDATE.

Hmmm, again

not work ，Can anyone help me？


Super slow compilation in rare cases when mixing explicit typing, generics and type-inference

TypeScript Version:
1.8.7
Code
Having three classes like this:

import {Subject} from 'rxjs/Rx';
import {Task} from '../../models/task'
import {TaskStore} from "../task-store/task-store";

export class TaskService {
  //foo = "bar";   // -> commenting in solves slow compilation
  tasks: Subject<Task[]>;
}

import {Task} from "../../models/task";
import {BehaviorSubject} from "rxjs/Rx";

export class TaskStore {
  tasks =  new BehaviorSubject([]);
  //tasks = new BehaviorSubject<Task[]>([]); // -> change above line withis this one solves slow compilation
  //_tasks =  new BehaviorSubject([]);  // -> change above line withis this one solves slow compilation
}

import {bootstrap} from 'angular2/platform/browser';
import {TaskStore} from "./app/services/task-store/task-store";
import {TaskService} from './app/services/task-service/task-service';

class TestClass {
}

bootstrap(TestClass, [
    TaskService,
    TaskStore,
]);

leads to super slow compilation. Commenting  in any of the lines above makes the compilation about 6 times faster.
See this repositiory as a reference for the problem:
https://github.com/choeller/slow-ts-compiler-demo/

This looks like a dupe of #7082 or the other problems with compiling RxJs. @vladima can you take a look?

As a quick overview of the problem, caching is broken for class this types and RxJs is a commonly used project that relies on caching common base types to be able to compile fast enough.

I would keep this open, fix for this types does not make this issue completely go away - compilation time is dropped from 8-9 to ~6 seconds but still it is kind of slow. Crux of the problem - rxjs-5.0.0.beta2 exposes a number of types that look similar and quite complicated in  structure and doing a full structural comparison of them takes a lot of time
Simplified repro: https://github.com/vladima/rxjs-issue - majority of time is spent doing subtype reduction.

closing as fix to RxJS was already merged


Cannot call useParams without any arguments

Describe the bug
Expected 1 arguments, but got 0.ts(2554)
useParams.d.ts(5, 280): An argument for 'opts' was not provided.

const params = useParams()

Your Example Website or App

Steps to Reproduce the Bug or Issue

Expected behavior

Screenshots or Videos
No response
Platform

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

Additional context
No response

Turns out the function wasn't really typed until now. Seeing another issue with circular dependencies now so will close this one


ci: do not use hpcs for catalog validation

Description
Since we do not claim the controls in the standard flavours (since hpcs is not mandatory), we don't have to use hpcs for catalog validation. This resolve the issue where we currently do not have a hpcs instance in the account where we are doing validation right now.
Also explicitly marking ssh_public_key as required in catalog so it shows in projects UI (should not of been removed in https://github.com/terraform-ibm-modules/terraform-ibm-landing-zone/pull/454)
Types of changes in this PR
Changes that affect the core Terraform module or submodules

[ ] Bug fix
[ ] New feature
[ ] Dependency update

Changes that don't affect the core Terraform module or submodules

[ ] Examples or tests (addition or updates of examples or tests)
[ ] Documentation update
[ ] CI-related update (pipeline, etc.)
[ ] Other

Release required?
Identify the type of release. For information about the changes in a semantic versioning release, see Release versioning.

[ ] No release
[ ] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content
If a release is required, replace this text with information that users need to know about the release. Write the release notes to help users understand the changes, and include information about how to update from the previous version.
Your notes help the merger write the commit message for the PR that is published in the release notes for the module.
Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

Merge actions for mergers

Use a relevant conventional commit message that is based on the PR contents and any release notes provided by the PR author. The commit message determines whether a new version of the module is needed, and if so, which semver increment to use (major, minor, or patch).
Merge by using "Squash and merge".

/run pipeline

/run pipeline

/run pipeline

/run pipeline


JSX to TSX conversion from About to Company Home Page.

What kind of change does this PR introduce?
[Code Refracting] : JSX to TSX Conversion.
Did you add tests for your changes?
No.
If relevant, did you update the documentation?
No.
Summary
Converted 16 JSX files to TSX and also updated the paths of all components in App.tsx.
Other information
Solves the problem of this issue.

dont push to master push to alpha branch

@yasharth291 done