Make final webpack.config.js can be acessed (import/require)

What problem does this feature solve?
There are cases when I need to use another cli  (in my case are dotnet and start-storybook) for running some of my project. To run it properly,  final webpack.config.js (sum of = vue.config.js + default vue config +  all config of vue-cli-plugin-*) need to be acessed so it can be merged with another default webpack config (storybook) or integrate webpack hot-reload and its config into another server side framework.
What does the proposed API look like?
I can only think 2 solution for this:
1. Expose chainableConfig
So user can do something like:
const { chainableConfig } = require('@vue/cli')
const mergeWebpack = require('webpack-merge')

// this is storybook way for extending config
module.exports = (baseConfig, env, defaultConfig) => mergeWebpack(chainableConfig.toConfig(), defaultConfig)

However, the problem with this approach is I can't merge it with another server side framework that use another programing language (in my case are ASP.NET Core using webpack-aspnet-middleware)
2. Unfortunately vue eject
Implement eject command to output the final config into a file. This way I can point exactly where webpack.config.js are in my ASP.NET startup module. However, to make it safe, every time server-side cli run/start/build then vue eject need to be executed first.

I'd +1 for this also, would like to avoid the kind of lock-in and troubles you get trying to make changes to a project that's been set up using something like laravel mix.

You can already access it as<EMAIL_ADDRESS>This file dynamically resolves to the same config used in your actual project.


Fixed obstacle avoidance

Updated wheels models to increase performance.
Tuned parameters to make robot move faster through narrow corridors. However, as written in different sources the TEB local planner is not perfect for narrow paths. Therefore, the DWA local planner will be added later as alternative planner.
Added IMU joint.

Added changes increased performance and motion through narrow spaces


Scripting/shaders support — adding new features while keeping the base app simple, and getting the community involved

Take a look at the mpv-android app, its GUI is as simple as in Just Player, but you are able to extend mpv-android’s feature-set with scripts and shaders.
I am writing about this because it would have also been great to have an ExoPlayer-based app with scripting support (for instance, with Lua and Python).
This could get more people into Just Player development, and allow for adding useful features without making the app feel generally bloated. Such as automatic subtitles downloading, custom sharpening algorithms, inventive stretching options, and so on.
Every user would simply choose what they need for their particular use case.

adding new features while keeping the base app simple, and getting the community involved

Honestly, I don't think that this would work. 😉

I am writing about this because it would have also been great to have an ExoPlayer-based app with scripting support (for instance, with Lua and Python).

I agree that this would be great. However it's not really suited for Just Player in its poor state. Maybe use gathered knowledge in a new project.

automatic subtitles downloading

My opinion is that such feature could exist outside of a video player.


DEFAULT_HOST as IP of another server

Is it possible to use DEFAULT_HOST to redirect requests to some other server in local network. For example -e DEFAULT_HOST=<IP_ADDRESS>? If not, how can this be done?
Thanks! :smile:

Being able to proxy services on other local servers in general would be awesome!


Query Frontend: missing port in address

Thanos, Prometheus and Golang version used:

thanos, version 0.20.0 (branch: HEAD, revision: 893188a6752e260cf54f3c082392a521b6c92f75)
  build user:       root@83239bffd915
  build date:       20210428-12:54:57
  go version:       go1.16.3
  platform:         linux/amd64

Object Storage Provider:
Irrelevant
What happened:
After an upgrade from Thanos 0.19.0 to 0.20.0, Thanos Ruler is logging following errors:
Apr 29 06:03:56 hostname thanos: level=error ts=2021-04-29T06:03:56.854131338Z caller=http.go:48 protocol=http http.component=server msg="failed to parse host port for http log decision" err="address metrics.example.com: missing port in address"
Apr 29 06:03:56 hostname thanos: level=error ts=2021-04-29T06:03:56.854439031Z caller=http.go:48 protocol=http http.component=server msg="failed to parse host port for http log decision" err="address metrics.example.com: missing port in address"

Following parameters are being used to start the service:
/usr/bin/thanos rule --data-dir=/var/lib/thanos/rule --grpc-address=<IP_ADDRESS>:10910 --http-address=<IP_ADDRESS>:10911 --rule-file=/etc/prometheus/thanos_alerts.yml --query=localhost:10913/thanos/query --alertmanagers.url=https://alerts.example.com --alert.query-url=https://metrics.example.com/all --web.external-prefix=/thanos/rule
If I change -alert.query-url parameter value to https://metrics.example.com:443/all, these errors are gone.
What you expected to happen:
It is perfectly fine for URL not to contain port number when default port is used. I would expect https://metrics.example.com/all to work properly.
How to reproduce it (as minimally and precisely as possible):
Run Thanos Ruler service with --alert.query-url=https://metrics.example.com/all flag.
Anything else we need to know:
No.

@yeya24, thanks for looking into this!
I've investigated it bit further, and it appears that issue is not with Rule but with Query Frontend. I initially assumed that it was Rule issue as the only place where we reference metrics.example.com server is Rule command line parameters. As for the reason why adding :443 to URL resolved an issue - we are running everything behind load balancers and load balancer failed over to other backend node, so it appeared that this had solved an issue, while in reality these errors were still there, but on different Thanos node.
I added SyslogIdentifier parameter to better distinguish different Thanos service logs:
# cat /etc/systemd/system/thanos-query-frontend.service.d/identifier.conf
[Service]
SyslogIdentifier=thanos-query-frontend

Errors are now following, and it is clear that these are logged by Query Frontend service:
Apr 30 07:36:24 hostname thanos-query-frontend: level=error ts=2021-04-30T07:36:24.670221963Z caller=http.go:48 protocol=http http.component=server msg="failed to parse host port for http log decision" err="address metrics.example.com: missing port in address"
Apr 30 07:36:24 hostname thanos-query-frontend: level=error ts=2021-04-30T07:36:24.884668317Z caller=http.go:48 protocol=http http.component=server msg="failed to parse host port for http log decision" err="address metrics.example.com: missing port in address"
Apr 30 07:36:24 hostname thanos-query-frontend: level=error ts=2021-04-30T07:36:24.933126736Z caller=http.go:48 protocol=http http.component=server msg="failed to parse host port for http log decision" err="address metrics.example.com: missing port in address"
Apr 30 07:36:25 hostname thanos-query-frontend: level=error ts=2021-04-30T07:36:25.222138567Z caller=http.go:48 protocol=http http.component=server msg="failed to parse host port for http log decision" err="address metrics.example.com: missing port in address"

I've also tried enabling debug logging, but it didn't produce any additional output.
In our current setup we are always connecting to Thanos services through Nginx load balancer - metrics.example.com. I see these errors logged every time I open Query Frontend web page on load balancer by following URL: https://metrics.example.com/thanos/query/
If I connect to Thanos Query Frontend server directly without load balancers, there are no errors in logs: http://thanos1:10913/thanos/query/
Relevant NGINX load balancer configuration:
    upstream thanos_query_frontend {
        server thanos1:10913;
        server thanos2:10913;
    }
   ...
        location /thanos/query/ {
            proxy_pass http://thanos_query_frontend/thanos/query/;
            proxy_redirect off;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header Host $host;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }

Thanos Query Frontend service is running with following flags:
/usr/bin/thanos query-frontend --http-address=<IP_ADDRESS>:10913 --query-range.response-cache-config-file=/etc/prometheus/thanos_query_frontend_cache.yml --query-frontend.downstream-url=http://localhost:10904 --query-frontend.log-queries-longer-than=5s --query-frontend.compress-responses
And has following config:
# cat /etc/prometheus/thanos_query_frontend_cache.yml
---
#
# Ansible managed
#

type: IN-MEMORY
config:
  max_size: "2GB"
  max_size_items: 0
  validity: 0s

Thanos Query service is running on same servers where Thanos Query Frontend, with following flags:
/usr/bin/thanos query --grpc-address=<IP_ADDRESS>:10903 --http-address=<IP_ADDRESS>:10904 --query.replica-label=replica --store=prom1a:10901 --store=prom1b:10901 --query.timeout=1m --store.response-timeout=10000ms --web.external-prefix=/thanos/query

As a test, I've changed Nginx Host header from $host to kaka.example.com and now Query Frontend logs contain following error:
Apr 30 08:03:16 thanos1 thanos-query-frontend: level=error ts=2021-04-30T08:03:16.516654107Z caller=http.go:48 protocol=http http.component=server msg="failed to parse host port for http log decision" err="address kaka.example.com: missing port in address"

So it is probably safe to assume that Thanos Query Frontend has some issues when Host header is set.

Confirming the issue while running query-frontend v0.20.1 behind ingress-nginx in k8s.
As a workaround have to add annotation
nginx.ingress.kubernetes.io/upstream-vhost: "$host:10902"

I'm also seeing the same issue and in my case running behind istio. query-frontend config is:
spec:
  containers:
  - args:
    - query-frontend
    - --log.level=info
    - --log.format=logfmt
    - --log.request.decision=LogFinishCall
    - --http-address=<IP_ADDRESS>:10902
    - --query-range.split-interval=24h
    - --query-range.max-retries-per-request=5
    - --query-range.max-query-parallelism=14
    - --query-range.response-cache-max-freshness=1m
    - --query-frontend.downstream-url=http://thanos-query-query-http.kube-system.svc.cluster.local:10902
    - --query-frontend.compress-responses
    - --labels.split-interval=24h
    - --labels.max-retries-per-request=5
    - --labels.max-query-parallelism=14
    - --labels.response-cache-max-freshness=1m
    - --labels.response-cache-max-freshness=1m
    - --query-frontend.log-queries-longer-than=1s

we are also seeing the same error with the query component
level=error ts=2021-05-19T00:34:14.718846301Z caller=http.go:48 protocol=http http.component=server msg="failed to parse host port for http log decision" err="address tq-xavier.prod.ourcompany.cloud: missing port in address"```

we have an nginx ingress-controller that uses an NLB in a private subnet.

Seeing same behavior with 0.21.0 too:
$ thanos --version
thanos, version 0.21.0 (branch: HEAD, revision: d19aea21b178a6c08838c6a05b834dd44ef14273)
  build user:       root@30b80273f41d
  build date:       20210603-13:49:01
  go version:       go1.16.4
  platform:         linux/amd64

Should be solved in #4348. Thanks @spaparaju


Is it possible to add another function like id() but returns long instead of byte array

When I run the following cypher query, the results are byte arrays and unfriendly to read.
MATCH (n: name)-[:Linking {IsActive: true}]->(a: Account {Source: 10})
WHERE n.LinkingValue = 'FIVE|RISKTESTSUITE'
RETURN id(a)

The output are as follows.
╔══════════════════════════╗
║ id(n)                    ║
╠══════════════════════════╣
║ [-48, -63, -95, -115, 6] ║
║ [-48, -96, -47, -122, 3] ║
║ [-88, -95, 1]            ║
╚══════════════════════════╝

But I expect they are in the format as Gremlin outputs. How can I achieve that?
gremlin> g.V().hasLabel('name').has('LinkingValue','FIVE|RISKTESTSUITE').inE('Linking').has('IsActive',true).outV().hasLabel('Account').has('Source',10).id().toList()
==>1638424784
==>819220560
==>20648

Hello @ministat , thanks for opening the ticket. Unfortunately this project is no longer maintained and the knowledge of internals vanished a bit as well :)
I digged a bit through the code though and found that we apparently encode ids using a var long encoding. That class also contains the code that reverses the operation. If you are using scala to execute your query you could use that function to map ids back to a long.

@soerenreichardt Thanks for your information. I composed a fix and it works for me:


Execcuting UBW_C.py for CIFAR10

Dear authors,
I am trying to execute UBW_C.py as a part of my project. However, the execution time is very large. Please let me know if I am going wrong anywhere, I am using Google colabs and have also changed the runtime  type  to GPU.

Hi, Suhina123,
Thanks for reaching out! In general, it may take a few hours to run UBW-C on CIFAR-10 since we need to train the model 200 epochs. I am unsure what your 'the execution time is very large' means. BTW, it seems that your codes generate some warnings. I would recommend that you first check the GPU memory usage when the code is running (via nvidia-smi or similar approaches) to ensure that your codes correctly use GPUs. If it still not works for you, you should try using a consistent Anaconda Environment to us via pip install -r requirements.txt (in the File Directory of UBW-P)
Best,
Yiming

Dear authors,
I am trying to execute UBW_C.py as a part of my project. However, the execution time is very large. Please let me know if I am going wrong anywhere, I am using Google colabs and have also changed the runtime type to GPU.

Hi, have you solved the runing problem? I will leave this issue open for a few days in case you still have some questions. I will close it after a week if there is no new response :)

Hello,
I was successfully able to execute UBW_C.py file!:) It is taking about 10 hours to complete 27 epochs. Could you please tell me how much time it should have taken? And also, if there is a way I can determine if the training has been complete after a few epochs so that I wouldn't have to wait for long.
I am unable to understand the structure of UBW-P. Please let me know the scripts that have to be run to understand the part that has been explained in the research paper.
Thank you,
Suhina

Hello,
I was successfully able to execute UBW_C.py file!:) It is taking about 10 hours to complete 27 epochs. Could you please tell me how much time it should have taken? And also, if there is a way I can determine if the training has been complete after a few epochs so that I wouldn't have to wait for long.
I am unable to understand the structure of UBW-P. Please let me know the scripts that have to be run to understand the part that has been explained in the research paper.
Thank you, Suhina

Hi, Suhina,

Unfortunately, similar to all methods based on bi-level optimization, UBW-C is really slow. You can run fewer epochs to reduce the time. Specifically, you can first find a suitable training schedule for standard training on CIFAR-10 and use the same one for UBW-C.
You can simply run train_UBW_P.py for UBW-P.

Best,
Yiming


Foreign fetch and opaque origins

Currently a foreign fetch handler can reply with a non-opaque response by including the origin of the request in the response. If a request was made from an opaque orgin this will never work though, as the origin serialized as string will always be "null", which won't actually be equal to the requests origin.
With regular CORS, a server can always reply with Access-Control-Allow-Origin: * to cover unique origins, but currently we don't allow wildcards in foreign fetch handlers. Should wildcards be supported? Or should opaque origins somehow be supported? Or should requests from opaque origins not hit foreign fetch workers at all, since they can't reply to them meaningfully (except if the request was no-cors).

Actually CORS seems to explicitly allow Access-Control-Allow-Origin: null to match any opaque origin. So maybe that's the right thing to do here as well. In which case I'll just have to clarify the foreign fetch spec text to compare serialized origins rather than parsed origins.


Have an example of showing explicitly how to calculate metrics in DDP

🚀 Feature
Given the new updates in 0.9.0, it is desirable to have an example of showing exactly and explicitly how to calculate metrics in DDP. The metrics of interest are those that requires all the labels and prediction for an entire epoch, such as F1 score or average precision.
Motivation
As a big fan of this project and a data scientist who already used Lightning in my work, I am still not sure if I have done metrics in DDP correctly or not. While it is easy to spot some obvious mistakes in F1 if the calculated F1 goes over 1 (by definition, F1 is between 0 and 1 and would never go above 1) with DDP, it is hard to know for sure if this is calculated correctly as there is no official document detailing how to do that exactly. Having the proposed example would greatly boost the adoption of Lightning in the PyTorch community.
Pitch
Have an example of calculating metrics such as F1 in DDP
Alternatives
Additional context
There are many issues related to calculating metrics in DDP and honestly this could be the most challenging part for further adoption. Having the proposed example will greatly help in this regard.

@Borda

mind have look @SkafteNicki @justusschock 🐰

Below is my pseudo-code for DDP with F1 metric, however I have seen the F1 metric for the validation/test the code returns greater than 1 , meaning somehow it is aggregated incorrectly.
class Transformer(LightingModule):
    def __init__(self, hparams):

        self.hparams = hparams

        # load the pretrained model
        self.model = BertForSequenceClassification.from_pretrained(hparams.model_loc)

        # define metric for binary classification
        self.f1 = pl.metrics.F1(num_classes=2, reduction='none')

    def __calculate(self, batch):
        input, y = batch
        y_hat = self.model(input)
        loss = torch.nn.CrossEntropy(y_hat, y)
        _, y_pred = torch.max(y_hat, dim=-1)

       return loss, y, y_pred

    def __compute_metrics(self, y_pred, y):
        f1 = self.f1(y_pred, y)[1]      # need to take f1 for positive label 1
       return f1

    def __train_valid_test_step(self, batch, kind):
        loss, y, y_pred = self.__calculate(batch)
        if kind == 'train':
            result = pl.TrainResult(loss)
       else:
            result = pl.EvalResult(checkpoint_on=loss)

        result.y = y
        result.y_pred = y_pred

        return result

    def __valid_test_epoch_end(self, result, kind):

        f1 = self.__compute_metrics(y_pred, y)
        result.f1 = f1
        return result

    def validation_step(self, batch, batch_idx):
        return self.__train_valid_test_step(batch, kind='valid')

    def validation_step_end(self, result):
        return self.__valid_test_epoch_end(result, kind='valid')

the reason of having reduction='none' for F1
self.f1 = pl.metrics.F1(num_classes=2, reduction='none')

is because I noticed the following behaviors of F1:
pl.seed_everything(2020)
n = 10000  # number of samples
y = np.random.choice([0, 1], n)
y_hat = np.random.random(n)
threshold = 0.2
y_pred = (y_hat > threshold).astype(int)

y_tensor = torch.tensor(y)
y_hat_tensor = torch.tensor(y_hat)
y_pred_tensor = torch.tensor(y_pred)

print('F1 from sklearn', f1_score(y, y_pred))
print('F1 from lightning functional', pl.metrics.functional.f1_score(y_pred_tensor, y_tensor, num_classes=2, reduction='none'))
print('F1 from lightning tensor', pl.metrics.F1(num_classes=2, reduction='none')(y_pred_tensor, y_tensor))

# print resutls are as follows
# F1 from sklearn 0.6127105666156202
# F1 from lightning functional tensor([0.2712, 0.6127])
# F1 from lightning tensor tensor([0.2712, 0.6127])

print('F1 from sklearn', f1_score(y, y_pred))
print('F1 from lightning functional', pl.metrics.functional.f1_score(y_pred_tensor, y_tensor, num_classes=2))
print('F1 from lightning tensor', pl.metrics.F1(num_classes=2)(y_pred_tensor, y_tensor))

# print results are as follows
# F1 from sklearn 0.6127105666156202
# F1 from lightning functional tensor(0.4419)
# F1 from lightning tensor tensor(0.4419)

Therefore, without reduction='none', F1 score from Lightning will automatically average F1 score of each class, which is not consistent with sklearn and not what we want.

@Borda Could some core developer can chime in and provide an example? Thanks.

related: #3225, #3230
:+1: for adding an example to docs, that would be useful

@awaelchli I'd like to but currently the code is not working :(

@junwen-austin I am hoping to finish a PR in the following days that changes the reduction parameter for metrics used in classification problem to work similar to how sklearn is doing it (micro average as default and with the option to which to macro, weighted ect)

@Borda @SkafteNicki thanks for the heads-up. Meanwhile, I figured out a way to do DDP sync with 0.9.0 manually, based on the code from https://github.com/allenai/longformer/blob/master/scripts/triviaqa.py. Specifically, one can manually add the following member method of the LightningModule. The following code is a simple modification of the sync_list_across_gpus in the link above:
    def sync_across_gpus(self, t):   # t is a tensor

        gather_t_tensor = [torch.ones_like(t) for _ in range(self.trainer.world_size)]
        torch.distributed.all_gather(gather_t_tensor, t)
        return torch.cat(gather_t_tensor)

To make it work, one can do the following when a metrics is needed, for example at the end of valid/test epoch using the pseudo-code above:
def __valid_test_epoch_end(self, result, kind):

       y_pred = result.y_pred
       y = result.y

      # sync across gpus
      if self.trainer.use_ddp:
           y_pred = self.sync_across_gpus(y_pred)
           y = self.sync_across_gpus(y)

      f1 = self.__compute_metrics(y_pred, y)
      result.f1 = f1
      return result

In addition, we have to average in the __compute_metrics function because now each gpu gets the same f1 score and by default (somehow they sum together):
def __compute_metrics(self, y_pred, y):
    f1 = self.f1(y_pred, y)[1] / self.trainer.world_size     # need to take f1 for positive label 1
    return f1

This is definitely not the best thing to do but at least this is a work-round for those like me who need sa metrics with DDP working as soon as possible.

@junwen-austin - thanks this is nice. I am doing it similarly, but worse, pickling the results of each worker and collecting them on worker 0. Instead of doing the final average of the metric I assume you could also limit this calculation to worker 0, which is anyways the one doing the logging.

@psinger I did not limit the calculation to worker 0 though I did try to find rank 0 GPU with no success :(
That's why I have to divide the metric results by self.trainer.world_size as the method above will get sum of identical metric results from each GPU.

@junwen-austin You can get the rank via self.global_rank

metric = some_unreduced_metric_fn(x, y)
group = torch.distributed.group.WORLD
group_size = torch.distributed.get_world_size(group)
gather_list = [torch.empty_like(t) for _ in group_size] if self.global_rank == 0 else None
torch.distributed.barrier(group)
torch.distributed.gather(metric, gather_list=gather_list, dst=0, group=group, async_op=False)
if self.global_rank == 0:
	metric = torch.cat(gather_list)
	metric = some_reduce_fn(metric)
	some_logging_fn(metric)

something like this?

metric = some_unreduced_metric_fn(x, y)
group = torch.distributed.group.WORLD
group_size = torch.distributed.get_world_size(group)
gather_list = [torch.empty_like(t) for _ in group_size] if self.global_rank == 0 else None
torch.distributed.barrier(group)
torch.distributed.gather(metric, gather_list=gather_list, dst=0, group=group, async_op=False)
if self.global_rank == 0:
	metric = torch.cat(gather_list)
	metric = some_reduce_fn(metric)
	some_logging_fn(metric)

something like this?

did this feature in master branch  code？

Class based metrics have been revamped!
Please check out the documentation for the new interface, and see if the new interface solves your problem (less metrics are available at the moment as we are in the process of converting them to the new api).

@SkafteNicki Thanks I'll test it out with the new version!

@junwen-austin feel free to reopen if still needed 🐰

Class based metrics have been revamped! Please check out the documentation for the new interface, and see if the new interface solves your problem (less metrics are available at the moment as we are in the process of converting them to the new api).

This link is no longer available, could you update the answer with a new link?

@erikdao now it has been moved to torchmetrics.
doc: https://torchmetrics.readthedocs.io/en/latest/references/modules.html


Rank precedence against AssignmentPrecedence

Quick lil PR so that we can change
self.seed = (ensureBetween(Seed.min..<Seed.max) <| seed)

to
self.seed = ensureBetween(Seed.min..<Seed.max) <| seed

Pushed another change to rank all precedence groups (not merely those with the same associativity). This cleans up some more cases where parentheses shouldn't be necessary. E.g., this QuickCheck snippet:
choose(1..<100) |> suchThat <| isEven

(While Haskell doesn't support infixl5 and infixr5 without parentheses, it looks like other languages—like Agda—do, slightly preferring right-associativity.


Clarification on loading ApplicationTheme from local storage

The docs show briefly
"If you give the user an option to pick a theme that's part of app UI, you must save the setting in the app data and apply it when the app is restarted."
Any of my attempts to access local storage in the ctor of App.cs will crash the app with a message saying it is impossible to activate the store app as soon as I try to read or write using FileIO ReadtextAsync (or write). Could you please provide some hint? I used Getawaiter().GetResult() (will crash), and if I ConfigureAwait to false on those async methods the theme is ignored because the ctor does not wait obviously. Please advise

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

ID: 69f25f17-cfcb-c9e5-4ba1-9fcf681290be
Version Independent ID: 1ac80111-7675-3a55-10d2-f8b6eb038db8
Content: Application.RequestedTheme Property (Windows.UI.Xaml) - UWP app developer
Content Source: https://cpubwin.visualstudio.com/DefaultCollection/windows-uwp/_git/winrt-api-build?path=%2fwinrt-api-build%2fwindows.ui.xaml.application.yml&version=GBlive&_a=contents
Service: unspecified
GitHub Login: @wdg-dev-content
Microsoft Alias: wdg-dev-content

Checkout how Windows Template Studio does it with their ThemeService.  If you start a new blank template with just this service, you can see how they wired it in.

If the APIs don't work in the app constructor then we should recommend a better place to do it (e.g. OnLaunched). We'll try to clarify in the docs.

Assigning to Kiki since she is looking at theme and styles, etc.

Settings should be saved/retrieved using ApplicationData.LocalSettings, not FileIO. An example has been added to the doc.


Generalized hashing of keys for memoization

Addresses #1067.
This approach isn't perfect but it will allow a lot more keys to be memoized than before (sets, lists, dictionaries). The main limitation is that composite values as dictionary keys are not allowed by the JSON spec.
Currently pandas Dataframes/Series and numpy arrays are allowed as mutables. In general you will want to support mutable types explicitly as using the id does not reflect the contents of the object.

Just some quick examples/performance statistics:
%%timeit
   ...: keyhash([datetime.datetime(1,2,3), set([1,2,3]), pd.DataFrame({'a':[1,2],'b':[3,4]}), np.array([1,2,3]), np.int64(34)])
   ...:
1000 loops, best of 3: 659 µs per loop

%%timeit
   ...: keyhash([1,2,3, (4,5)])
   ...:
10000 loops, best of 3: 23.5 µs per loop

Unsurprisingly, big keys hash slower than small keys (I expect most keys to be pretty small). Note that datetime objects are also supported.

Looks good to me. I doubt we'll catch all the cases we'll need straight away so it's good you can add repr_hashable and str_hashable types. Happy to merge when you've added some unit tests.

Implemented suggestions and added unit tests. Ready for final review/merge once tests pass.

Not sure why it's failing, but it looks good to me apart from the minor docstring fixes suggested.

Python 3 has an additional limitation - the sort_keys option in json.dumps fails if it encounters dictionaries with heterogenous keys. This is a very clear bug as the final JSON keys are always strings which can be sorted but unfortunately this issue is unlikely to be fixed.
If we are happy to accept these limitations, the PR is ready to merge as the test have passed. Even with its caveats/holes, this approach greatly expands what can be memoized (before a simple list wouldn't allow memoization).

Looks good to me.

Annoying this turned out to be such a pain. We'll just have to see if we run into any issues in practice. Currently the types of objects that will appear in a stream are fairly limited so I don't foresee any immediate issues. Will merge.


Include support for comma seperated strings for basic.contact-points

The motivation for the PR is that in my project while using environment variables for the configuration via a Helm chart, I am unable to pass an array as an environment variable because it ends up as a string in the application configuration. Please let me know if I missed anything in the PR. I have already signed the CLA.

This has been sitting here for a while can anyone take a look? @absurdfarce

I understand your point of view but the fact is that the approach you are suggesting is unusable with environment variables and configmaps from a HOCON point of view. Moreover, in our case, we are not using the library directly, but rather a Pekko library that uses this driver. So even if I could have one environment variable for multiple contact points, I cannot build a CqlSession and pass it along as an underlying session to the Pekko connector. Also, about the first review you posted, I don't think having ["a,b", "c"] makes much sense because I doubt that users will have one comma-separated item and one single item in the list.

Is there a reason you can't configure Pekko to use a custom session? It looks like that should be possible from this documentation: https://pekko.apache.org/docs/pekko-connectors/current/cassandra.html#custom-session-creation
You can create a custom CqlSessionProvider that sets contact points based on the environment: https://pekko.apache.org/api/pekko-connectors/snapshot/org/apache/pekko/stream/connectors/cassandra/CqlSessionProvider.html
The main drawbacks of the implementation in this PR are:

Changing the parsing behavior of basic.contact-points could break existing client configurations
Allowing some list-typed configurations to support comma-separated strings when others don't is confusing for users


Added type field to be passed to server during export

Hoist P/R Checklist
Pull request authors: Review and check off the below. Items that do not apply can also be
checked off to indicate they have been considered. If unclear if a step is relevant, please leave
unchecked and note in comments.

[x] Caught up with develop branch as of last change.
[x] Added CHANGELOG entry, or determined not required.
[x] Reviewed for breaking changes, added breaking-change label + CHANGELOG if so.
[x] Updated doc comments / prop-types, or determined not required.
[x] Reviewed and tested on Mobile, or determined not required.
[x] Created Toolbox branch / PR, or determined not required.

If your change is still a WIP, please use the "Create draft pull request" option in the split
button below to indicate it is not ready yet for a final review.

Pull request reviewers: when merging this P/R, please consider using a squash commit to
collapse multiple intermediate commits into a single commit representing the overall feature
change. This helps keep the commit log clean and easy to scan across releases. PRs containing a
single commit should be rebased when possible.

So I think we are moving in the right direction here, with defaulting the type we send to the type from the store field in the underlying column.  My concern is that the 'type' we are using here is some weird mix of our Store FieldType with some additional ad-hoc strings of 'date',  'datetime', 'longtext'.
Where It seems like

'date'  is actually FieldType.localDate
'datetime' is something like FieldType.Date
'longtext' is never used.

Could we standardize this such that type was always guaranteed to be a 'FieldType'?

So I think we are moving in the right direction here, with defaulting the type we send to the type from the store field in the underlying column. My concern is that the 'type' we are using here is some weird mix of our Store FieldType with some additional ad-hoc strings of 'date', 'datetime', 'longtext'.
Where It seems like

'date'  is actually FieldType.localDate
'datetime' is something like FieldType.Date
'longtext' is never used.

Could we standardize this such that type was always guaranteed to be a 'FieldType'?

^ Agree with this - would be great to standardize to FieldType


Reflection allows setting non-nullable properties to null

Bug
Reflection (specifically PropertyInfo.SetValue) allows setting a non-nullable property to null. This may cause the program to fail at a later point where the programmer expects that this property can never be null.
Such non-nullable property may be a struct, such as DateTime. See example below.
Note
.Net Framework doesn't throw when attempting to change the property to null either. It resets the valuetype (struct) to its default zero-ed value (default(T)).
This behaviour is documented here: https://docs.microsoft.com/en-us/dotnet/api/system.reflection.propertyinfo.setvalue?view=netframework-4.8

If the property type of this PropertyInfo object is a value type and value is null, the property will be set to the default value for that type.

Steps To Reproduce
https://deck.net/29c77883acfccdff9fea57ab1056af97
// Reported by: Christian "ChrML" Lundheim - 30.04.2019

public class Program
{
    public static void Main()
    {
        // Create the test- class with a non- nullable property.
        Test test = new Test();
        Console.WriteLine($"NonNullable.Year = {test.NonNullable.Year}");

        // Use reflection to set the non-nullable property to null.
        //Program.NonNullable = null;		// This will not compile because NonNullable cannot be null.
        PropertyInfo propNonNullable = test.GetType().GetProperty("NonNullable");
        propNonNullable.SetValue(test, null);

        // Program will fail later because nobody expects that NonNullable can be null.
        Console.WriteLine($"NonNullable.Year = {test.NonNullable.Year}");	// Crash
    }
}

public class Test
{
    public DateTime NonNullable {get;set;} = DateTime.Now;
}

Expected Result
NonNullable.Year = 2019
NonNullable.Year = 1

(tested on .NET Framework)
Actual Result
NonNullable.Year = 2019
System.Exception: TypeError: Cannot read property 'kind' of null

Hey @ChrML,
Usually, reflection is a hacking feature. You can't force the compiler to enforce that because you're breaking the rules. For example, you can get/set private and protected properties and methods from any object.
So, in my opinion, this is not an error. Just a misusage of the reflection API.

Hey @danfma,
I strongly and respectfully disagree.
Reflection is NOT hacking. It's a very central and essential part of. NET. It's used for databinding to controls, serialization, property editors, marshalling etc... There is a reason it was invented, and further abstracted by the TypeDescriptor system. It's essential for any kind of dynamic/non-hardcoded behaviour.
And this is an error. Because MSDN clearly specifies how null should work for non-nullable properties, while Bridge.NET behaves differently than the documentation says.
Best regards,
Christian Lundheim

This issue has been flagged as a defect and we'll try our best to fix in time for the upcoming Bridge 17.8.0 release. We'll keep this thread updated with our progress.

Hey @danfma,
I strongly and respectfully disagree.
Reflection is NOT hacking. It's a very central and essential part of. NET. It's used for databinding to controls, serialization, property editors, marshalling etc... There is a reason it was invented, and further abstracted by the TypeDescriptor system. It's essential for any kind of dynamic/non-hardcoded behaviour.
And this is an error. Because MSDN clearly specifies how null should work for non-nullable properties, while Bridge.NET behaves differently than the documentation says.
Best regards,
Christian Lundheim

Hey, man! No problem with your definition or discordance, we're here to discuss. By the way, when I say that it is a hack it was because usually, you can break some rules of the language when using reflection. For example, set a property of a not accessible or protected field or method. And I saw that link later, you're right about it. :)

A pull-request for this issue has been created. Our plan is to include the fix in the upcoming Bridge 17.8.0 release.

Hey @danfma,
Yep, reflection can be abused. But one shouldn't.
I use reflection a lot, but I have never used it for "cheating". Here are my uses on Bridge.NET:

TypeDescriptor implementation
XML serialization/deserialization
PropertyGrid usercontrol (lets users display and config classes and structs)
DataGridView and IBindingList implementation (sorting, filtering and viewing property values)
Applying XML configuration

Never used reflection to do anything that could not be accomplished with ordinary (hard)coding. Reflection helps generalizing things like auto-generating an UI for an implementation that would otherwise need specialized code.
Best regards Christian

Thanks @geoffreymcgill !!

Removed 'area-datetime' as this issue is not related to it at all:

Deck
Dotnet Fiddle

using System;
using System.Reflection;

public class Program
{
    public static void Main()
    {
        // Create the test- class with a non- nullable property.
        Test test = new Test();
        Console.WriteLine(test.NonNullable);

        PropertyInfo propNonNullable = test.GetType().GetProperty("NonNullable");
        propNonNullable.SetValue(test, null);

        // Program will fail later because nobody expects that NonNullable can be null.
        Console.WriteLine(test.NonNullable);	// Crash
    }
}

public class Test
{
    public Test()
    {
        NonNullable = 6;
    }
    public int NonNullable { get; set; }
}

The provided fix is going to make it to the upcoming Bridge release (see assigned milestone).


User Concern (bugfix): Send password reset instructions only to confirmed email address

User Concern (bugfix):  Send password reset instructions only to confirmed email address
This should wrap up the issue described in #287, just removing some code and letting devise route the email under the hood.  I looked for a place to maybe add a test around this but I wasn't convinced it's required considering the fallback to devise.  If we find a good place to add one, let me know, i'll add it in.

Closing this in favor of #288 (identical commits).


Support to install lws at user specified namespace

What would you like to be added:
Hope to install lws at a configurable namespace rather than the hardcode lws-system.
Here's a code snippet  we need to care about: https://github.com/kubernetes-sigs/lws/blob/main/pkg/cert/cert.go#L27
Why is this needed:
Completion requirements:
This enhancement requires the following artifacts:

[ ] Design doc
[ ] API change
[x] Docs update

The artifacts should be linked in subsequent comments.

/assign
I understand that we need to provide a configurable namespace right?

+1 to the proposal

https://github.com/kubernetes-sigs/lws/issues/170
Is it consistent with this issue?

/unassign

Yes, this should be part of the CC, would you like to take it over @googs1025


Documentation for Docker is out of date

The documentation on the VSCode website leads the reader to think that Docker support should work out of the box. I presume that was not intended, as you must first install the extension.

Hi there. I think this should go into the VSDocs repo.
https://github.com/Microsoft/vscode-docs

Thanks @MystK moving

This issue was moved to Microsoft/vscode-docs#160


Partition Support

          > You can use your own mpd.conf file which the changes you like to make. So this should be already covered.

I tried to include the following lines in mpd.conf
partition {
name: "Partition_1"
}
Restarted the addon. But the logs is giving an error unrecognized keyword/parameter Partition.
Kindly guide what am I doing wrong here.
Originally posted by @nehasjains in https://github.com/Poeschl/Hassio-Addons/issues/382#issuecomment-1451463604

Since I'm warping the mpd executable this might be a question for the mpd repository. My knowledge about the possible mpd configs is unfortunately limited. That's why the description states that you are on your own when using a custom conf.
Did you include the default settings as well in your own custom conf file?

Yes I included the default settings also in the conf file.

After some research, I found it that the partition feature is not available in the last release of MPD.
So for support MPD needs to release a stable version including the partition section.
Until then the addon won't support this.


Augment notes one LLVM IR debugging

Close #162
r? @gnzlbg

Oh man :( I messed up the rebase, so this also contains all the changes from #165... @gnzlbg If you want, I can try to remove those extra commits... or if you don't mind reviewing them... your call; let me know

I don't mind :)

LGTM, thanks!

Thanks!


Set lower CPU usage for test_shared_process_pool.py to avoid slowing down the test

Description

test_shared_process_pool.py is taking longer than expected when running on remote-ci, causing multiple ci pipelines failed due to (1h) timeout.
This is probably because:

The number of workers of SharedProcessPool is set to 0.5 * os.sched_getaffinity(0) by default. If the test is running on a machine that has 64 cores, it will maintain 32 sub-processes.
For each unit test, the process pool need to create all the sub-processes and then join() all of them when tear down, which might be slow when the number of processes is large.
Running the test in remote-ci is slower than running locally, probably because there are multiple ci jobs running on the same machine

The test should run faster by setting the number of workers to 0.1 * os.sched_getaffinity(0) and it should avoid ci from being blocked by timeout.
Closes  #1936
By Submitting this PR I confirm:

I am familiar with the Contributing Guidelines.
When the PR is ready for review, new or existing tests cover these changes.
When the PR is ready for review, the documentation is up to date with these changes.

/merge


Text version of VFFS_Demo.PDF - TwinCAT with TR88.00.02 Methodology

Hello,
Could you provide a version of VFFS_Demo.pdf that is saved as a document with text? The current version is saved as an image, so it's not possible to search for text, navigate, etc.

Original Word Document was saved as a PDF from word and not printed to PDF.

New PDF that is text searchable and linked TOC

Thank you


Set up CI

Codebuild is implemented on AWS, need to integrate into Github.
@JohnHalleyGotway - Will look into Github

[x] Embedded a code coverage badge into a top-level README file using:
https://codecov.io/gh///settings/badge
For this project that's:
https://codecov.io/gh/ncar/wrfcloud/settings/badge

[ ] Will integrate code coverage checks into GitHub PR's following these instructions:
https://docs.codecov.com/docs/github-checks

Inspecting AWS wrfcloud code builds, I note that the behavior changed between run numbers 161 and 162. The latter introduced an authentication error:
[Container] 2022/09/20 20:28:07 Waiting for DOWNLOAD_SOURCE
--
4 | authentication required for primary source and source version 2683de9e84dfaf842fc0cdec44739505a6fb760e


Create SECURITY.md

V

I am afraid what happened to express.js with spamming PRs is happening here...


xpra: 4.3.2 -> 4.3.3

Description of changes
Update Xpra, fix issues.

Fixed wrong Xvfb path
Stop xpra from executing it's makeWrapper script with python interpreter

Fixes #161975
Fixes #161975

Things done

Built on platform(s)

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

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

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

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

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

[x] Fits CONTRIBUTING.md.

Other non-fatal issues I noticed.

utility scripts get put into bin instead of libexec
Tries to search python prefix for apps. Some parts of the code search this path, others appear to properly check XDG_DATA_DIRS.
FileNotFoundError: [Errno 2] No such file or directory: '/nix/store/01kia41csjia67pry1rv828i9pvnnqfq-python3-3.9.12/share/applications'


Proof of Concept Changes to support filtering flags by CIDR ranges

I wanted to sketch out what an API/changeset might look like for #37
TODO:

[ ] The ipaddress library is added in Python 3.3 and a backport is available on PyPi for 2.7 users, what should the policy for optional dependencies be for 2.7 users?
[ ] django-ipware (https://github.com/un33k/django-ipware) is definitely an external dependency but would only be needed if the CIDR filtering was desired, would it make sense to do a try/except on import to allow it to optionally be installed?
[ ] Testing plan, I hacked this together pretty quickly to get the conversation going, it definitely needs more thought before being merged, testing being the highest on the list of things to think through.

Oh, one important one that I left out, there aren't any migrations yet. It doesn't look like there's a test project in the repo so I was wondering if any of the contributors could provide any guidance/docs on how to generate migrations? Or does everyone usually just hand code them?

extra_requires is useful for specifying additional dependencies. See https://setuptools.readthedocs.io/en/latest/setuptools.html#declaring-extras-optional-features-with-their-own-dependencies. For ipaddress, update the docs noting the use of the dependent library for Python 2.7, and informing users to install with pip install django-waffle[ip] (or something along those lines). A similar setup extra could be used for ipware, but this would be applicable to all versions of Python.
Definite 👍 to more testing. I'm not sure if RequestFactory can mock IP addresses. Although, if I understand this correctly, it's a header, so it should be doable.
test_settings.py can be used to generate new migrations. Run the command below in the repo root:
 PYTHONPATH=. DJANGO_SETTINGS_MODULE=test_settings django-admin makemigrations


Fix #17

Strangely tests in 3.8+ stopping working. pytest is failing to find the collection of tests. Rerunning tests from yesterday (which passed) now fail in 3.8+. I'll merge, because locally all tests pass and this is some strange thing with pytest, and not the code.
Pytest 8.0.0 was released today which much be the reason. Ironic they let this bug slip out.

pytest can be a pain, that's for sure.
btw, I have some additional amendments made in the issue thread which I believe fix the issue a little more elegantly, see the thread.


Saving the model

Hi.
Thank you very much for creating this. It is an absolutely brilliant idea. Once we have created the model, how do we save the model and use it for any new data that comes in?

You can save the model using .save(path="my_model"). That way, you can save the model and load it with ConceptModel.load(path="my_model")  to use it for new data.

perfect. Thank you.


How to show the tasks based on their start and finish date times?

The requirement is as follows.

We create work items mainly tasks with a start date and finish date including time.
Is there any way to show those similar to how the outlook shows the meetings?
A week's view and daily view are much appreciated.

We're closing old issues so we can get back to actively maintaining the extension. Feel free to reopen if this is still an issue for you.


[Snyk] Security upgrade django from 1.2 to 4.2.17

Snyk has created this PR to fix 2 vulnerabilities in the pip dependencies of this project.
Snyk changed the following file(s):

packages/requirements.txt

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
Max score is 1000. Note that the real score may have changed since the PR was raised.
This PR was automatically created by Snyk using the credentials of a real user.
Some vulnerabilities couldn't be fully fixed and so Snyk will still find them when the project is tested again. This may be because the vulnerability existed within more than one direct dependency, but not all of the affected dependencies could be upgraded.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open fix PRs.
For more information:
🧐 View latest project report
📜 Customise PR templates
🛠 Adjust project settings
📚 Read about Snyk's upgrade logic

Learn how to fix vulnerabilities with free interactive lessons:
🦉 Command Injection
🦉 SQL Injection

Checkmarx One – Scan Summary & Details – dfa42318-5b6e-4b56-b8cc-7a0fba8d696c
New Issues

Severity
Issue
Source File / Package
Checkmarx Insight

Aurora With Disabled at Rest Encryption
/rds.tf: 81
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: 65
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: 33
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: 49
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: 97
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: 17
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: 113
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: 1
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

Aurora With Disabled at Rest Encryption
/rds.tf: 130
Amazon Aurora does not have encryption for data at rest enabled. To prevent such a scenario, update the attribute 'StorageEncrypted' to 'true'.

CVE-2023-42282
Npm-ip-1.1.5
Vulnerable Package

CVE-2023-45133
<EMAIL_ADDRESS>Vulnerable Package

CVE-2023-45133
<EMAIL_ADDRESS>Vulnerable Package

CVE-2024-21536
Npm-http-proxy-middleware-2.0.1
Vulnerable Package

CVE-2024-21538
Npm-cross-spawn-6.0.5
Vulnerable Package

CVE-2024-21538
Npm-cross-spawn-5.1.0
Vulnerable Package

CVE-2024-21538
Npm-cross-spawn-7.0.3
Vulnerable Package

CVE-2024-27088
Npm-es5-ext-0.10.53
Vulnerable Package

CVE-2024-27351
Python-Django-1.2
Vulnerable Package

CVE-2024-29180
Npm-webpack-dev-middleware-5.2.1
Vulnerable Package

CVE-2024-29415
Npm-ip-1.1.5
Vulnerable Package

CVE-2024-37890
Npm-ws-8.2.3
Vulnerable Package

CVE-2024-37890
Npm-ws-7.4.6
Vulnerable Package

CVE-2024-37890
Npm-ws-8.3.0
Vulnerable Package

CVE-2024-37890
Npm-ws-7.5.6
Vulnerable Package

CVE-2024-38355
Npm-socket.io-4.4.0
Vulnerable Package

CVE-2024-38875
Python-Django-1.2
Vulnerable Package

CVE-2024-39330
Python-Django-1.2
Vulnerable Package

CVE-2024-39614
Python-Django-1.2
Vulnerable Package

CVE-2024-4068
Npm-braces-2.3.2
Vulnerable Package

CVE-2024-4068
Npm-braces-3.0.2
Vulnerable Package

CVE-2024-41989
Python-Django-1.2
Vulnerable Package

CVE-2024-41990
Python-Django-1.2
Vulnerable Package

CVE-2024-41991
Python-Django-1.2
Vulnerable Package

CVE-2024-42005
Python-Django-1.2
Vulnerable Package

CVE-2024-45296
Npm-path-to-regexp-0.1.7
Vulnerable Package

CVE-2024-45296
Npm-path-to-regexp-1.8.0
Vulnerable Package

CVE-2024-45590
Npm-body-parser-1.19.0
Vulnerable Package

Cx22d7540f-80c2
Npm-angular-1.8-1.8.2
Vulnerable Package

Cx7d3bd13f-4c2a
Npm-angular-1.8-1.8.2
Vulnerable Package

Cxdd90df0b-e1ac
Npm-angular-1.8-1.8.2
Vulnerable Package

Cxeaf4b44b-15c8
Npm-angular-mocks-1.8-1.8.2
Vulnerable Package

Passwords And Secrets - Generic Access Key
/providers.tf: 10
Query to find passwords and secrets in infrastructure code.

Passwords And Secrets - Generic Access Key
/lambda.tf: 45
Query to find passwords and secrets in infrastructure code.

Passwords And Secrets - Generic Password
/instance.tf: 45
Query to find passwords and secrets in infrastructure code.

Passwords And Secrets - Generic Password
/instance.tf: 11
Query to find passwords and secrets in infrastructure code.

Passwords And Secrets - Generic Password
/sql.tf: 50
Query to find passwords and secrets in infrastructure code.

Sensitive Port Is Exposed To Entire Network
/ec2.tf: 83
A sensitive port, such as port 23 or port 110, is open for the whole network in either TCP or UDP protocol

Sensitive Port Is Exposed To Entire Network
/ec2.tf: 83
A sensitive port, such as port 23 or port 110, is open for the whole network in either TCP or UDP protocol

CVE-2023-26159
Npm-follow-redirects-1.14.6
Vulnerable Package

CVE-2023-44270
Npm-postcss-8.3.11
Vulnerable Package

CVE-2023-44270
Npm-postcss-7.0.39
Vulnerable Package

CVE-2024-25710
Maven-org.apache.commons:commons-compress-1.15
Vulnerable Package

CVE-2024-25710
Maven-org.apache.commons:commons-compress-1.20
Vulnerable Package

CVE-2024-28849
Npm-follow-redirects-1.14.6
Vulnerable Package

CVE-2024-28863
Npm-tar-4.4.19
Vulnerable Package

CVE-2024-28863
Npm-tar-6.1.11
Vulnerable Package

CVE-2024-29041
Npm-express-4.17.1
Vulnerable Package

CVE-2024-37168
<EMAIL_ADDRESS>Vulnerable Package

CVE-2024-38820
Maven-org.springframework:spring-core-5.3.0
Vulnerable Package

CVE-2024-38999
Npm-requirejs-2.3.6
Vulnerable Package

CVE-2024-39329
Python-Django-1.2
Vulnerable Package

CVE-2024-4067
Npm-micromatch-3.1.10
Vulnerable Package

CVE-2024-4067
Npm-micromatch-4.0.4
Vulnerable Package

CVE-2024-43788
Npm-webpack-5.64.1
Vulnerable Package

CVE-2024-43796
Npm-express-4.17.1
Vulnerable Package

CVE-2024-43799
Npm-send-0.17.1
Vulnerable Package

CVE-2024-43800
Npm-serve-static-1.14.1
Vulnerable Package

CVE-2024-45231
Python-Django-1.2
Vulnerable Package

CVE-2024-47068
Npm-rollup-1.11.3
Vulnerable Package

CVE-2024-47068
Npm-rollup-2.59.0
Vulnerable Package

CVE-2024-47178
Npm-basic-auth-connect-1.0.0
Vulnerable Package

CVE-2024-47764
Npm-cookie-0.4.1
Vulnerable Package

CVE-2024-47764
Npm-cookie-0.4.0
Vulnerable Package

Unpinned Actions Full Length Commit SHA
/semgrep.yml: 14
Pinning an action to a full length commit SHA is currently the only way to use an action as an immutable release. Pinning to a particular SHA helps...

Unpinned Actions Full Length Commit SHA
/build.yaml: 15
Pinning an action to a full length commit SHA is currently the only way to use an action as an immutable release. Pinning to a particular SHA helps...

Unpinned Actions Full Length Commit SHA
/pull_request.yaml: 14
Pinning an action to a full length commit SHA is currently the only way to use an action as an immutable release. Pinning to a particular SHA helps...


A dangling layer in forward call?

Just came across this implementation and noticed the usage of a non-registered (dangling) layer in InvertedResidualBlock's forward call.
When this line is executed, a new conv layer will be created every time & it won't be trained by the optimizer.
Is it for any particular usecase?
https://github.com/lafith/Mobile-UNet/blob/50e159d8f39bd8300610629d0e26f4ab3b96bd72/model.py#L58-L60

@InnovArul  Thank you for pointing out. I have fixed it in the latest commit.


Thread safety cleanups in the MMFF code

The changes made as part of #2123 introduced a thread-safety problem in the MMFF code.
This fixes that.
This is a quick fix so that we can patch a crashing bug in the currently release. It would make sense to change the API that's being used here to be a little bit more modern, but that would be for the next major release.

Note that the PR is against the release branch. Once it's done there I will also apply it to master.

I'm closing this because it needs to be fixed properly. It may be something for the next feature release after all.
It's critical to have the fix for the RDKit KNIME nodes, but I can do that via a pre-build patch (the custom parameters can't be used there, so there's no risk of problems).


”Malnaș”, ”Malnaș-Băi”, ”Valea Zălanului” are listed in the drop-down menu

Description:
When user writes ”Malnaș”, ”Malnaș-Băi”, ”Valea Zălanului” the locations appear in the drop-down menu next to the comune and the county witch is a part according to the law.
Precondition:
The website is up an running.

Step 1
Write in the search bar "Malnaș"

Expected results
The location appears in the drop-down menu as "Sat Malnaș, COVASNA (Malnaș)".

Step 2
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 3
Write in the search bar "Malnaș-Băi"

Expected results
The location appears in the drop-down menu as "Sat Malnaș-Băi, COVASNA (Malnaș)".

Step 4
Press "x" button.

Expected results
The location was deleted from the search bar.

Step 5
Write in the search bar "Valea Zălanului"

Expected results
The location appears in the drop-down menu as "Sat Valea Zălanului, COVASNA (Malnaș)".


Move SR-IOV functional tests into a separate suite

This will allow us to target just SR-IOV specific tests for SR-IOV
test lane. This also makes it so that these tests are not even triggered for
multus CI jobs since we know we don't deploy SR-IOV components there.
In the future we will add a CI job for SR-IOV that will run the new SRIOV
suite.
NONE

ci test please

/hold
I'd like to merge other more involving pieces and not trigger conflicts with this one.

/hold cancel

@SchSeba @phoracek please take a look. It's just moving the SR-IOV tests into a separate suite so that we don't need to focus on a complex regex in our (future) CI job.

@rmohr @slintes can we nudge this in? it's mostly moving code around.


fix(seed): fixed seed check for 0

if (options.seed) rejects 0, changed it to check for undefined/null

Good catch thank you very much!

Yeah, had user_id 0 cause me some troubles ;)


Descriptions on sample configurations

Modify the sample-configs controller to read descriptions from each sample config and place them in the description field of the response.
Alternatively, since we'd need to read in the file to get the description anyway, why not just include the whole sample config file with the list view response and remove the single-value getter for sample configs altogether?

Implemented in https://github.com/OSVR/OSVR-Config/commit/5b79163e1c864c079e93e63ca31fcf13e76d1680


Fix broken header markup.

Does what it says on the tin. :)

Huh, TIL GitHub creates and auto-names branches when you use the web interface to fork for a file edit. Sorry for the weird branch name.


[WIP] :bookmark: (23.4.1) fix rule creation from transaction list

Docs: https://github.com/actualbudget/docs/pull/153


attempt to call field 'Recurrent' (a nil value)

I have updated rnn and all  the other dependencies to the latest version，but it still has the error：

./buildModel.lua:65: attempt to call field 'Recurrent' (a nil value)
stack traceback:
./buildModel.lua:65: in function 'buildModel_MeanPool_RNN'
videoReid.lua:100: in main chunk
[C]: in function 'dofile'
...hiyx/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:150: in main chunk
[C]: at 0x00405d50

I have also met this problem. How can I fix it ?

I solved this by https://github.com/Element-Research/rnn/issues/422


UNDER MAINTENANCE  how fix

UNDER MAINTENANCE
Pogy is undergoing maintenance. Please check back Later!
Maintenance mode is enabled which means you won't able to access the dashboard

This either means that the bot has been rate limited or is undergoing due maintenance, for rate limits, it's as easy as just simply turning it off, but if under actual maintenance, you have to wait until this maintenance is completed.

You can disable the maintencance mode in the config.json file,
"maintenance": "false"


SAK-30643 - Clean up handleReportsTriangleDisclosure in assignments

Hey @bjones86 I think this was another method you added in SAK-26318 and there were two versions of it. I just used this one here which seems to be more specific to the button being clicked on and moved it into the .js file. I tested it out and it seems to be good.

Yep, nice catch, looks good to me. Thanks @jonespm !


node_id option

Add option to specify node_id to deploy on specific node, not location

Not happening as I don't really see a reason to implement this (nor would it be directly possible through the API), you can already just set the node into a location without other nodes.

Its possible https://github.com/pterodactyl/panel/issues/3825


Starts to outline an Availability class.

l don't know if we want a Person to be passed in as a param, since that's a lot of data. The email should be sufficient, but correct me if l'm wrong.

I'm not sure. Are we still planning on using a Person's email as their key/id?

Did you merge https://github.com/googleinterns/InterviewMe/pull/37 into this PR? Don't do that, it's not feasible for reviewers to separate the code from the other PR from the code in this PR.
Can you revert this merge?


Add mathematical expressions syntax

Add inline math expressions $1+1=2$
Add block math expressions $$1+1=2$$

@murtuzaalisurti Do you want to take it up?

@murtuzaalisurti Do you want to take it up?

Yes


Update release process to update version in package.json

Migrated from GitLab: https://gitlab.com/meltano/meltano/-/issues/1019
Originally created by @bencodezen on 2019-09-20 11:38:22

Problem
When we run a release, the package.json should have their versions updated as well.
Proposed Solution
When running the make release, we should automatically script the update for package.json files.

View 23 previous comments from the original issue on GitLab


Exit immediately if the app has been run by the squirrel installer.

Most of this patch is indentation changes. I can probably get around that if you're worried about blame but it will mean moving a few things around.

Coverage decreased (-0.1%) to 45.22% when pulling 813f6c3a195b86e8fd1f96b571249adac940f5ad on Mossop:squirrel into 04baa569c5e4ebb6427623b9bfff8815f7a99e94 on mozilla:master.

Coverage decreased (-1.3%) to 44.046% when pulling 6e0402ee4850c344362888eaede20bfffdb46d8f on Mossop:squirrel into 0d4256adb42a4898dfa72b69f4c037b8e97f136b on mozilla:master.

works for me


Can't reduce the number of labels without reducing the number of

  <script>
  valuesArray = eval(document.getElementById("values").innerHTML);
  graph = new Ico.LineGraph(document.getElementById( 'graph' ), valuesArray, { meanline: { stroke: '#AA0000' },  colours: { one: '#990099'}, grid: true} );

  </script>

If I have code that looks like the above, as far as I can tell, there is no way to reduce the number of x axis labels/grid lines, without changing how they are plotted. Ideally I would be able to define how many ticks should appear on the x axis and then define them without impacting the plotting.

That shouldn't be a problem, I'll add it to my to-do list

I've made an example for you that fixes this in Ico 0.3.7:
http://jsfiddle.net/NF8fH/1/
If you specify an array of labels it'll now scale the grid accordingly.


Basic cli controls

Closes #141
Do lmk what other CLI controls you think would make our application more user-friendly.

Don't really know how to write tests for the UI.


How to exactly add a widget in Qt Designer??

Hi, Mr. Clark
I am a newbie for Qt designer, I am using Qt5. Please forgive me to post this question. I find out some ways online demo how to add a widget in Qt Designer, but they don't work on my computer.
Can you put some details on here describing how to add a new widget in Qt designer?

so this the step I stopped by....I don't know which file should be put in the Executable blanket?
Can you tell Mr. Clark?


Use cordova-plugin-cocoapods-support vs hardcoded ios firebase libs

See https://github.com/blakgeek/cordova-plugin-cocoapods-support

Pods are buggy with last Xcode on last OSx version, won't build at all


Cannot read property 'query' of undefined

I am sorry to be the first that is starting an open issue. My implementation returns
Cannot read property 'query' of undefined
error
var con;
mysql.createConnection({
    host: config.db.host,
    user: config.db.username,
    password: config.db.password,
    database: config.db.database
}).then(function(connection){
    con = connection;
});

con.query(queries.allUsers).then(function (err, users) {
    console.log(users);
});

What could I have done better?

The below snippet worked though. Maybe there is something about Promises or JavaScript that I am missing
var con;
con = mysql.createConnection({
    host: config.db.host,
    user: config.db.username,
    password: config.db.password,
    database: config.db.database
}).then(function (connection) {
    return connection;
});
con.then(function (connection) {
    connection.query(queries.allUsers).then(function (users) {
        console.log(users);
    });
});

In your first example, con is undefined because it's assignment is being done asynchronously, so when it makes the call to createConnection(), it carries on to con.query() without having assigned con.
In your second example, it works because con is a promise so after it's called createConnection() it waits for con to be resolved before continuing.
I'm going to close this issue because it's not an issue with the module.

@lukeb-uk One more thing. I just replicated the example in your docs while trying to get acquainted with the module. Does it mean the doc examples are wrong?

The doc examples aren't wrong, but they probably aren't the best for those unfamiliar with promises. I'll have a look at clarifying them.

@lukeb-uk Ok. We call it a day then...


Missing events and  condition after deployment

Just run latest operator and pmem-csi: intel/pmem-csi-driver:canary
In kubectl describe deployment.pmem-csi.intel.com/pmem-csi.intel.com -  i got missing events and missing condition
  Type:              DriverDeployed  as shown in https://github.com/intel/pmem-csi/blob/devel/docs/install.md.
All pods are running ok:
NAME                                 READY   STATUS    RESTARTS   AGE
pmem-csi-intel-com-controller-0      2/2     Running   0          11h
pmem-csi-intel-com-node-8cksq        2/2     Running   0          11h
pmem-csi-intel-com-node-dv8px        2/2     Running   0          11h
pmem-csi-intel-com-node-ldbps        2/2     Running   0          11h
pmem-csi-intel-com-node-lpljv        2/2     Running   0          11h
pmem-csi-intel-com-node-qnwqg        2/2     Running   0          11h
pmem-csi-intel-com-node-rsbn9        2/2     Running   0          11h
pmem-csi-intel-com-node-zkhf4        2/2     Running   0          11h
pmem-csi-operator-57c7c5cf8d-h687f   1/1     Running   0          11h

No errors in the logs, all volume groups are created.
Name:         pmem-csi.intel.com
Namespace:
Labels:       <none>
Annotations:  <none>
API Version:  pmem-csi.intel.com/v1alpha1
Kind:         Deployment
Metadata:
  Creation Timestamp:  2020-11-17T21:46:46Z
  Generation:          1
  Managed Fields:
    API Version:  pmem-csi.intel.com/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:spec:
        .:
        f:deviceMode:
    Manager:      kubectl
    Operation:    Update
    Time:         2020-11-17T21:46:46Z
    API Version:  pmem-csi.intel.com/v1alpha1
    Fields Type:  FieldsV1
    fieldsV1:
      f:status:
        .:
        f:conditions:
        f:driverComponents:
        f:lastUpdated:
        f:phase:
        f:reason:
    Manager:         pmem-csi-operator
    Operation:       Update
    Time:            2020-11-17T21:46:56Z
  Resource Version:  151455
  Self Link:         /apis/pmem-csi.intel.com/v1alpha1/deployments/pmem-csi.intel.com
  UID:               ff2a549c-2db3-4397-b3a5-1280f1d448cf
Spec:
  Device Mode:  lvm
Status:
  Conditions:
    Last Update Time:  2020-11-17T21:46:50Z
    Reason:            Driver certificates are available.
    Status:            True
    Type:              CertsReady
  Driver Components:
    Component:     Controller
    Last Updated:  2020-11-17T21:46:56Z
    Reason:        1 instance(s) of controller driver is running successfully
    Status:        Ready
    Component:     Node
    Last Updated:  2020-11-17T21:46:52Z
    Reason:        All 7 node driver pod(s) running successfully
    Status:        Ready
  Last Updated:    2020-11-17T21:46:56Z
  Phase:           Running
  Reason:          All driver components are deployed successfully
Events:            <none>

A log of the operator pod may be useful.

Here is the log.
pmem-operator.log
I think that RBAC may be the problem for the Events:
User "system:serviceaccount:pmem-csi:pmem-csi-operator" cannot create resource "events" in API group "" in the namespace "default"' (will not retry!)
I have used different namespace: pmem-csi instead of default. I have changed the Role and RoleBindings but is seams that operator always tries to publish events in default namespace. Maybe operator could publish events in the same namespace it is deployed ?

Seems like the code setting "DriverDeployed" condition from my initial PR(https://github.com/intel/pmem-csi/commit/8413e84898dd57741b76a1f9a7d237b4e40ef558#diff-5c7825dc51f07de287d1982277c5910adde261c2450c0f4eb43dd903f7e2d3b0R201-R205) was lost in rebasing and missing from the merged code.

Added role and role binding for namespace default - now the events are visible in CDR.

And of course we need a test for these conditions...


reinstall firmware

Hello
i want to reinstall the same firmware i have in my raspberry and not a newer/beta one
how can i do it?
and how can i install a specific firmware revision?
thanks

What version do you want?
If the current apt version, then
sudo apt-get install --reinstall raspberrypi-bootloader
sudo apt-get install --reinstall raspberrypi-kernel

If it's a specific historical rpi-update version, then look at:
https://github.com/Hexxeh/rpi-firmware/commits/master
If you click on each commit the end of the url contains a git hash. Run
sudo rpi-update <hash>
to update to that version.

@actraiser30 has the issue been resolved and this can be closed?

this issue should be closed due to inactivity for three months


Use async/await in .vue file

Trying a simple example:
async function asyncFun () {
  var value = 10
  return value
}
console.log(await asyncFun())

It always throw await is a reserved word. No matter the preset-env I change. Anyone could help on the correct settings for using async/await in this template ?
Thanks

Here is a demo repository: https://github.com/gabrielstuff/async-await-vue

I came across this problem, too.

Please refer to this issue https://github.com/babel/babel-eslint/issues/319.
As is explained by @hzoo,

you have to use await in an async function. The former isn't that syntax. You would be calling a function named async with a non-async arrow function.

Ok, thanks. Fixed with creating a whole async function around the await call.
It is better to read, but stills, I'm not sure if this is the right way to call:
async function asyncFun () {
  var value = 10
  return value
}
(async () => { console.log(await asyncFun()) })()

Looks a bit hard to read.
The code has been updated.

Yeah, await cannot be used at the top level.
console.log(await asyncFun()) -> asyncFunc().then(v = console.log(v))


v9.0.6 connect CodeCov

Current coverage is 76.23%

Branch #155 has no coverage reports uploaded yet.

No diff could be generated. No reports for master found.

Powered by Codecov. Updated on successful CI builds.

Current coverage is 76.23%

Branch #155 has no coverage reports uploaded yet.

No diff could be generated. No reports for master found.

Powered by Codecov. Updated on successful CI builds.


"ADD BLOCKS" button in multi-editor

See screenshot below. Also it seems I can't connect to hardware from the dashboard, when run in the multieditor.

Can you use https://microsoft.github.io/jacdac-docs/clients/javascript/devtools instead?

Sure thing - so I assume this is only really meant for makecode.


How to show two months?

How to show two months?

+1

This would be very helpful !... wish I could help...

+1

It's worth considering the date range picker I've linked below if you want the ability to display two months. It is relatively popular and under active development.
https://github.com/dangrossman/bootstrap-daterangepicker

Thanks David. I did come across that but your existing datepicker has a lot
of features I need, less the displaying of multiple months when embedded.
That's okay I'll work around it.
Cheers for the prompt response.
Bernie
On Fri, Mar 18, 2016 at 12:51 PM David<EMAIL_ADDRESS>wrote:

It's worth considering the date range picker I've linked below if you want
the ability to display two months. It is relatively popular and under
active development.
https://github.com/dangrossman/bootstrap-daterangepicker
—
You are receiving this because you commented.
Reply to this email directly or view it on GitHub
https://github.com/eternicode/bootstrap-datepicker/issues/983#issuecomment-198338807

Hi Bernie, I'm only someone who follows this project, don't want to take credit for any of the hard work involved. Hope you can find or build something that works for you.
All the best,
David

Duplicate of #1154

Date:


Copy updates to Exhibition Guides

Update the copy on this page: https://wellcomecollection.org/guides/exhibitions/ZthrZRIAACQALvCC to:
[Exhibition name] digital guides
Find out more about the exhibition with our highlights tour, available in short audio clips with audio description and transcripts, or as British Sign Language videos.
Listen to audio
Watch British Sign Language videos
Please note: the title is changing to be plural, from [exhibition name] digital guide to [exhibition name] digital guides

In prod


instrument redis pipelined requests

Closes #BASE-137
💸 TL;DR
We might want to drop the command label for these?
📜 Details
Design Doc
Jira

🧪 Testing Steps / Validation

✅ Checks

[ ] CI tests (if present) are passing
[ ] Adheres to code style for repo
[ ] Contributor License Agreement (CLA) completed if not a Reddit employee

Would like a test for the context manager handled track_inprogress call

Changed it back to inc/dec with tests. Also added tests for the cluster client.


add query/paging/sort to the channel interfaces

Can you add documentation here as well pls?

@MatthiasKainer I will add it later

you can also add an issue for it, then I would take the task and you can close the pr :)

already updated the document , please check :-)


Compatibility with pyScss 1.3, almost

This is what I came up with.  It turns out your STATIC_URL hack does still work.
Still not done:

Trying to compile /css/bar.scss doesn't work, just because Compiler.compile doesn't consult the search path; it assumes you're feeding it a regular filesystem path.  This isn't terribly hard to fix; I'm just not sure what I want to do about it yet.  Maybe a new Compiler entry point?  But there are already a lot of those.

The DEBUG toggle for only searching static files in prod mode was lost and hasn't been restored.

I just remembered I didn't update setup.py, whoops!

Doing this has revealed some places that pyscss's extensibility is still pretty awkward.  I'm not in any hurry to go change everything again, but suffice to say I might have to send you another PR come pyscss 2.0.  API design is hard!  Still, this is rather a bit better than before.  :)

Hi @eevee,
I got this working with the Extensions interface.
It's released in 2.0.0.
Thanks so much for your help.


Data Science with Python : Gmail Spam Detection

Welcome to 'DSWP' Team, good to see you here
With this issue, readers will get introduced with core information to Gmail Spam Detection along with sample code completely in a effective way.
To get assigned to this issue, add your serial numbers mentioned in the spreadsheet of "Data Science with Python", the approach one would follow and choice you prefer (Documentation, Audio, Video). You can go with all three or any number of options you're interested to work on.
If you had referred any resources, add them up in "DS Resources". Similarly if you had used datasets, include them in "DS Datasets".
Domain : Natural Language Processing
Mentors Assigned : Dhruv Bajaj / Aishani Singh
Points to Note :
The issues will be assigned on a first come first serve basis, 1 Issue == 1 PR.
"Issue Title" and "PR Title should be the same. Include issue number along with it.
Changes should be made inside the Datascience_With_Python/ directory & Datascience_With_Python branch.
Follow Contributing Guidelines & Code of Conduct before start Contributing.
This issue is only for 'GWOC' contributors of 'DSWP' domain.
All the best. Enjoy your open source journey ahead. 😎

/assign

I would like to work on this.
Name: Saloni Thete
Sr.No: 821
Type : Documentation
issue no: 4168
Approach: Explanation of Gmail Spam Detection with python code.
@prathimacode-hub , kindly assign :)

/assign

@prathimacode-hub Can i get assigned to this issue for audio contribution?

Issue assigned to @yashh18 for audio contribution

I would like to work on this. Name: Saloni Thete Sr.No: 821 Type : Documentation issue no: 4168 Approach: Explanation of Gmail Spam Detection with python code. @prathimacode-hub , kindly assign :)

Text me on Discord, i have to talk to you. @SaloniThete

@Sakshi1700 I have been assigned the audio contribution for this.
Can you please let me know when you are done with the documentation, so I"ll make an audio explaining it!
Connect with me on discord : @yashhh#7188

@prathimacode-hub yes mam I have texted you on Discord. kindly check the message.

@yashh18 yeah sure.

Hello, I am Deepthi M with serial number:172, Batch-5. I would like to do video on this issue.
My approach: a detailed explanation

Issue assigned to @deepthi1107 for video contribution


opentelekomcloud.cloud.cbr_vault  assign policy ends  with changed in the second and further run

Hi all,
today i tried opentelekomcloud.cloud.cbr_vault.
After creating a server vault i  tried to bind a policy.
I i run the task several times it alway ends with changed. In my opionion only in the first run the task should end with changed.
Afterwards it should end with OK.
        - name: Associate policy
          opentelekomcloud.cloud.cbr_vault:
            name: "vault-gateway-server"
            resources:
              - id: '42604a31-d6dc-450b-9a06-3e4781da1ad8'
                type: "OS::Nova::Server"
              - id: '8d4d223a-1983-4f16-b13e-66726d6d036d'
                type: "OS::Nova::Server"
            action: "bind_policy"
            policy: "uli_policy"

Could you please check ?
Thanks in advance
Uli

Duplicate issue


Close button not working

<alert id="errors" type="danger" class="radius" close >

{{error}}

</alert>

The close button is rendered but when I click it, nothing happen.

I have the same issue. I check the source code and I fail to understand why. The alert template generate a  ng-click='close()' that should close the alert box as soon as we click on it, doesn't it ?

The alert directive declares the following scope:
scope: {
  type: '=',
  close: '&'
}

Thus, when the close button is clicked, the expression within the close attribute is evaluated. It is up to you to actually remove the alert element from the DOM (this is usually accomplished via a ng-if, ng-show, or ng-hide).
The documentation is lacking here. :no_mouth:

Thank you for this quick response. It effectively works. Oviously the chosen var name has to be unique to each alert box, or in one click you close all of them.
 <alert data-ng-hide="closeAlert1" close="closeAlert1=true"> dfsdfsdf</alert>
 <alert data-ng-hide="closeAlert2" close="closeAlert2=true"> 1234</alert>

Many thanks!


speed up integration tests

Many integration tests just need to wait for the Mandarine server to start up.
Currently, they do that with a rather generous hardcoded timeout.
This PR adds a waitForMandarineServer function that takes an integration test app file name and returns a promise that resolves as soon as the Mandarine server is initialized and listening. Feels a bit hacky but seems to work.
Anyway, this can considerably speed up execution time for the integration tests.
A lot of possible improvements come to mind (expose pipes / pass piping options? re-introduce max timeout & kill process when it hangs?) but this may serve as a start.

@Fusselwurm Very much appreciated.

Is this still a draft PR?
Do we know by how much we are speeding up the tests?

@Fusselwurm Very much appreciated.
1. Is this still a draft PR?

It seems to work now, will remove draft flag

2. Do we know by how much we are speeding up the tests?

Depends on how long compilation/startup usually lasts.
On my machine it needs abt 10s to 15s for each test where the safe timeout was before at 50s.
For github CI we're going from roughly 16m down to 8m for the whole integration test run

@Fusselwurm So simple yet great work. Thank you so much. LGTM.


(WIP)perf: deps

I adjust the dependencies between them. Shall we release new minor version?

It's OK to me.


Update ReadMe File

Update readme file with below details:

CircleCI Build status as a Badge.
Continuous integration details.
App distribution details.

Refer:
https://github.com/gokulnathperiasamy/WeatherMap
NOTE: When updating ReadMe file, we don't have to trigger CircleCI build. Check how to skip CircleCI builds, before committing to ReadMe file.

Created Pull Request. Please merge with master.
https://github.com/SuganyaKumarasamy/Math-OP/pull/13


WDL Viewer not displaying the WDL

I have a large-ish WDL that I am testing out but looks like the WDL tab is not working? I get a blank screen (see below)

Thanks @sitapriyamoorthi !
Can you try on dev and see if you get the same thing?

Dev is not letting me start a PROOF server currently

@sckott works there

ok great. glad it works - do you prefer to use prod now or dev? if prod I can see about fixing it, but if it works in dev maybe just forget about prod for now.

Would be nice to be able to download and save a copy as pdf or something!

Sure can probably do that. What is more useful? An image or a pdf?

I can work with both so if the intention is to upgrade dev->prod eventually its fine i could go back and forth. Also I think PDFs are better

Ok i'll close this and open an issue for the pdf download

https://github.com/FredHutch/shiny-cromwell/issues/151


Unable to render weighted pages by term when taxonomy has space in name

config
[taxonomies]
"book author" = "book authors"

content
content/books/good-omens.md
---
title: Good Omens
book authors:
  - Neil Gaiman
  - Terry Pratchett
---

... and two others
template
{{- $taxonomy := "book authors" }}
{{- range $term, $weightedPages := index site.Taxonomies "book authors" }}
  {{- $term }}|
  {{- range $weightedPages }}
    {{- .Title }}|
  {{- end }}
{{- end }}

results
v0.122.0
neil-gaiman|Coraline|Good Omens|terry-pratchett|Dodger|Good Omens|

v0.123.0-DEV-a80c3021 --> nothing rendered
example
git clone --single-branch -b hugo-github-issue-12001 https://github.com/jmooring/hugo-testing hugo-github-issue-12001
cd hugo-github-issue-12001
hugo && cat public/index.html

Is this something you have found in a real Hugo site? I have never seen this before.

No worries, when looking at it, the bug was obvious and fix simple.


I've discovered a bug where introducing DebugSwift affects the normal functioning of Alamofire, specifically when using Alamofire to upload files. The issue arises with the uploadProgress method

Hello there,
I've discovered a bug where introducing DebugSwift affects the normal functioning of Alamofire, specifically when using Alamofire to upload files. The issue arises with the uploadProgress method:
public func uploadProgress(queue: DispatchQueue = .main, closure: @escaping ProgressHandler) -> Self

This closure does not get called when DebugSwift is included. However, removing DebugSwift allows the progress closure to be called normally.
My environment details:

iOS 17.4.1
Xcode 15.3
DebugSwift 0.3.1
Alamofire 5.8.1

I would appreciate it if you could help optimize this issue. Your assistance with this problem would be greatly appreciated and beneficial to me. Thank you!

Hello @JunkyTang ! Could you please create a sample SwiftUI app that illustrates the problem in a separate github repo and link it here. Thanks!

"I'm afraid it won't work because the upload service involves sensitive information, so I can only provide reference code:
session.upload(multipartFormData: { data in
    data.append(url, withName: "files")
}, to: url).uploadProgress(closure: progressHandler).responseDecodable(of: ResponseType.self) { response in
    callback(response.result)
}

When integrating DebugSwift via CocoaPods, uploadProgress(closure: progressHandler) does not trigger callbacks. Removing DebugSwift resolves the issue."

The problem is not a simple one - the CustomHTTPProtocol is not handling properly urlSession(_ session: URLSession,                          task: URLSessionTask,                          didSendBodyData bytesSent: Int64,                          totalBytesSent: Int64,                          totalBytesExpectedToSend: Int64). The correct implementation should delegate this back to Alamofire. I'll keep checking for a solution. The same problem has been reported in other projects which are "capturing" the requests & responses to be able to render it.
https://github.com/pmusolino/Wormholy/issues/77
If you turn off the network reporting/viewcontroller, Alamofire will start working as expected. So, the problem is strictly related to the URLSessionConfiguration.swizzleMethods().

I've also noticed another issue probably related to this one: setting URLSessionConfiguration.default.requestCachePolicy = .useProtocolCachePolicy is ignored if DebugSwift.setup() is called.

@JunkyTang  Could you please try reproduce this issue in a PR at the DebugSwift example? :)

I have an example with Alamofire, based on DebugSwift example app. I'll create a PR.

Maybe I found one solution, not is perfect, but works fine see the @heitara PR

I have an example with Alamofire, based on DebugSwift example app. I'll create a PR.

@JunkyTang @GraemeHarrison @heitara fix in the develop :), soo I close the create a new Release in master! Thanks for helping the project to grow!


Update dependencies + Revert package name, fixing PR

Changes:

Revert package name to fido2-lib (was fork-fido2-lib)
Update various dependencies in both node and deno lockfile

Ready!


max_retries comment

qq - this comment appears on both the sync and async client
skip_confirmation: bool
If false, send_transaction will try to confirm that the transaction was successfully broadcasted.

When confirming a transaction, send_transaction will block for a maximum of 30 seconds. Wrap the call inside a thread to make it asynchronous.

Just checking it's valid for both clients (i.e. the threading part)?

No. You should need threads when using the async client.


HandlerType for voice messages

Do you consider adding HandlerTypeVoiceMessage to Types?

Hello. Custom handlers made for automatic text matching checks. For example, Update.Message.Text or Update.CallbackQuery.Data. Voice is a part of a Message. You can use this example
func main() {
	ctx, cancel := signal.NotifyContext(context.Background(), os.Interrupt)
	defer cancel()

	opts := []bot.Option{
		bot.WithDefaultHandler(handler),
	}

	b, _ := bot.New(os.Getenv("EXAMPLE_TELEGRAM_BOT_TOKEN"), opts...)
	b.Start(ctx)
}

func handler(ctx context.Context, b *bot.Bot, update *models.Update) {
	if update.Message != nil && update.Message.Voice != nil {
		// handle voice message
		return
	}
}

Will this solve your issue?

Hello, thank you very much for your response.
It wasn't quite an issue, it was a suggestion. And yes, your previous comment solve this for sure.


Surelog doesn't find System Verilog modules in library directories

I've noticed an issue where Surelog doesn't pick up SV files in library directories specified with a -y flag.
For example, create a file foo.sv:
module foo(
    input a,
    output b
);

bar mybar(
    .a(a),
    .b(b)
);

endmodule

And then a subdirectory bar/ containing a file bar.v:
module bar (
    input a,
    input b
);

assign b = a;

endmodule

If you then run surelog foo.sv -parse -nobuiltin -top foo -y bar/, everything seems to compile no problem:
[INF:CM0023] Creating log file ./slpp_all/surelog.log.

[WRN:PA0205] foo.sv:1: No timescale set for "foo".

[WRN:PA0205] /Users/noah/zeroasic/surelog-test/bar/bar.v:1: No timescale set for "bar".

[INF:CP0300] Compilation...

[INF:CP0303] /Users/noah/zeroasic/surelog-test/bar/bar.v:1: Compile module "work@bar".

[INF:CP0303] foo.sv:1: Compile module "work@foo".

[NTE:CP0309] foo.sv:3: Implicit port type (wire) for "b".

[INF:EL0526] Design Elaboration...

[NTE:EL0503] foo.sv:1: Top level module "work@foo".

[NTE:EL0508] Nb Top level modules: 1.

[NTE:EL0509] Max instance depth: 2.

[NTE:EL0510] Nb instances: 2.

[NTE:EL0511] Nb leaf instances: 1.

[INF:UH0706] Creating UHDM Model...

[INF:UH0708] Writing UHDM DB: ./slpp_all//surelog.uhdm...

[  FATAL] : 0
[ SYNTAX] : 0
[  ERROR] : 0
[WARNING] : 2
[   NOTE] : 6

However, if you rename bar.v to bar.sv and run the same command, Surelog can't find the module bar:
[INF:CM0023] Creating log file ./slpp_all/surelog.log.

[WRN:PA0205] foo.sv:1: No timescale set for "foo".

[INF:CP0300] Compilation...

[INF:CP0303] foo.sv:1: Compile module "work@foo".

[NTE:CP0309] foo.sv:3: Implicit port type (wire) for "b".

[INF:EL0526] Design Elaboration...

[NTE:EL0503] foo.sv:1: Top level module "work@foo".

[WRN:EL0500] foo.sv:6: Cannot find a module definition for "work@foo::bar".

[NTE:EL0508] Nb Top level modules: 1.

[NTE:EL0509] Max instance depth: 2.

[NTE:EL0510] Nb instances: 2.

[NTE:EL0511] Nb leaf instances: 1.

[WRN:EL0512] Nb undefined modules: 1.

[WRN:EL0513] Nb undefined instances: 1.

[INF:UH0706] Creating UHDM Model...

[INF:UH0708] Writing UHDM DB: ./slpp_all//surelog.uhdm...

[  FATAL] : 0
[ SYNTAX] : 0
[  ERROR] : 0
[WARNING] : 4
[   NOTE] : 6

I'd expect the behavior to be the same when the file is called bar.sv as when it's called bar.v.
Thanks!

You need to add +libext+.sv on the command line (Per standard). Default is .v file.


Fix async validators capturing and overwriting validation results

I noticed that when there are two or more asyncValidators, the last one calling done() overwrote the results of all validators that finished before.
The reason was that fieldValue was captured when the validators were kicked off, and then merged at done(), even if they had changed.

Opened pull request in clone.  Look here: https://github.com/davidkpiano/react-redux-form/pull/1198


How to handle libraries with language dependent API/ABI

Some libraries have a different API/ABI depending on the language version they are compiled with.
E.g. abseil is using std::string_view or their own string view depending on wether the standard library version is available or not.
How should this be handled if a) I want to compile the library in a different language version than what the cmake file specifies by default (if any) and b) if I need different versions for different projects.
I guess here the answer to b) is to use different vcpkg instances, but I'm not sure what the best solution would be for a) - maybe feature packages could be used for that purpose.

Thanks for bringing this up!
In the specific case of libraries which break ABI based on the C++ standards version level, you'll need to use different triplets or different vcpkg instances to manage each different build of the library you'd like. Ideally, the standards version would be set in the triplet (since the triplet "owns" the toolchain) and each package would respect it, though this rule is probably broken more often than followed at the moment.
Further, libraries which are ABI sensitive should encode their ABI into their headers (likely by just embedding the macro setting instead of "sensing" it in the downstream TU) to at least make it possible for consumers to upgrade the language settings.
For now, in the concrete case of abseil, the easiest method is probably to use entirely separate vcpkg instances and just modify the CMakeLists.txt in each to whatever standard version you want. In the future, we can improve it to coordinate better with the triplet as described above.

For now, in the concrete case of abseil, the easiest method is probably to use entirely separate vcpkg instances and just modify the CMakeLists.txt in each to whatever standard version you want.

Is there an easy way to copy the list of installed packages from one vcpkg instance to another?

Right now, you would need to do something like
./vcpkg list | % { @($_.split(" "))[0] }

which would (in powershell) output just list of installed packages.
See also #4067 for a proposed feature to explicitly get this.

Thanks.

FYI: It seems boost will / might run into the same problem:
https://groups.google.com/forum/#!topic/boost-developers-archive/EWG5NVOZo_g

Would you accept a PR that added triplets with defined c++ versions? Many libraries will probably not honor this, but we should try to start somewhere.

Push

@MikeGitb Sorry for late, feel free to create a PR to fix this issue.
Thanks.

@JackBoosY : So your really want me to add new tripplets to vcpkg? If so, which ones would make sense? <base-triplet-name>-cpp14,-cpp17,-cpp20 for all existing triplets?

At present, we can add set(VCPKG_CXX_FLAGS ${VCPKG_CXX_FLAGS} -std=c++17) in triplets/TRIPLET.cmake or set it as a port feature.

Sure, but that wasn't the question.
Also, it seems to me, that a cleaner (albeit more complicated) solution would be to add a separate VCPKG_CXX_STANDARD option that is propagated to CMAKE_CXX_STANDARD in vcpkg_configure_cmake (not sure how to handle it in ports that are not using cmake though).