feature request: hits (or accuracy?)

Hi,
@osf9018 mentioned it in #2 but I guess it’s better to create a specific issue.
Motivation
It is often difficult to estimate the total number of relevant document for a query.
For example, in Question Answering, if you have a large enough Knowledge Base, you can find the answer to your question in a surprisingly large number of documents that one cannot annotate in advance. Because of this, the relevance of the document is often estimated on-the-go, by checking whether the answer string is in the document retrieved by the system.
Because of this, recall is not an appropriate metric. However, one way to circumvent this is to compute recall "as if" there was only a single relevant document. After averaging over the whole dataset, it corresponds to the proportion of question for which the system retrieved at least one relevant document in top-K. This is what @osf9018 and I call "hits@K" (I can’t remember but I’ve seen it in a paper) and others, such as Karpukhin et al., call "accuracy". Accuracy is a confusing term IMO.
The request
Would you be interested in implementing or integrating this feature in your library?
It might take some renaming but it could be implemented very easily by using the _hits function. It is simply min(1, _hits(qrels, run, k))

Hi, I can add it to the pool of the provided metrics for sure! :)
I'm just not confident about how I should call it.
Could success_rate or hit_rate be appropriate?
I can even call it hits and rename or hide the current hits metric.
What do you think?

hit_rate seems fine, as you want really :)

Hi,
I will need this feature pretty soon, do you plan to implement it soon?
Otherwise could you provide instructions so that I implement it myself?
Bests,
Paul

Should probably update report:
Traceback (most recent call last):
  File "/gpfswork/rech/fih/usl47jg/miniconda3/envs/meerqat/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/gpfswork/rech/fih/usl47jg/miniconda3/envs/meerqat/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/gpfsdswork/projects/rech/fih/usl47jg/meerqat/meerqat/ir/metrics.py", line 165, in <module>
    compare(args['--qrels'], args['<run>'], output_path=args['--output'], **kwargs)
  File "/gpfsdswork/projects/rech/fih/usl47jg/meerqat/meerqat/ir/metrics.py", line 136, in compare
    print(report)
  File "/gpfsdswork/projects/rech/fih/usl47jg/ranx/ranx/report.py", line 202, in __str__
    return self.to_table()
  File "/gpfsdswork/projects/rech/fih/usl47jg/ranx/ranx/report.py", line 75, in to_table
    for x in list(list(self.results.values())[0].keys())
  File "/gpfsdswork/projects/rech/fih/usl47jg/ranx/ranx/report.py", line 75, in <listcomp>
    for x in list(list(self.results.values())[0].keys())
  File "/gpfsdswork/projects/rech/fih/usl47jg/ranx/ranx/report.py", line 59, in get_metric_label
    return f"{metric_labels[m_splitted[0]]}@{m_splitted[1]}"
KeyError: 'hit_rate'

this fixes it. I can open a PR https://github.com/PaulLerner/ranx/commit/f9a67510488ab43af6c3dfa539614a76e4149c91

Fixed in 0.1.10. Sorry for the inconvenience.


separation of micro service related repositories and process from RobotFramework AIO build

currently micro service related repositories and processes (e.g. pypi release) are part of RobotFramework AIO build.
ToDo:
separate all micro service related repositories and process and use/execute in DevAtServ project.

Step:
Identify all things which DevAtServ / build_DevAtServ need to provide
e.g. documentation, test, release_info, aggregated documentation (inclusive microservice documentation, pypi process, Tagging process (e.g. microservice repos need to get tag from DevAtServ, but not from RobotFramework AIO), ....)
Corresponding task issues to be created.
Step:
Identify all things which need to be removed from RobotFramework_AIO build

Hi Thomas,
I have a discussion with @huavanthong today related to this topic, please refer our conclusion as below:

From DevAtServ project

Define release tag for releasing this DevAtServ project: such as rel/das/<IP_ADDRESS>
New repo for documentation of DevAtServ

Copy tool chain and configurations to build main document from robotframework-documentation
Create new content for book and update maindoc_config to import library's document properly

Update build pipeline in this DevAtServ repo to add:

tag job (trigger by DevAtServ release tag) to tag all library repos with DevAtServ release tag  rel/das/<IP_ADDRESS>
update documentation job
test job : currently there is not test case
Release jobs (trigger by DevAtServ release tag): tag library repos to trigger publish PyPI pipeline, create Github Release, update version in control file

Update in package repos:

Change trigger-aio pipeline to trigger-das pipeline: to trigger DevAtServ build pipeline when there is changes from library repos
Verify/update pipeline to publish package library to PyPI (trigger by package release tag)

From AIO project:

Merge PR https://github.com/test-fullautomation/RobotFramework_AIO/pull/329 to remove repos from AIO build pipeline - OSS version
Merge PR https://gitlab-apertispro.boschdevcloud.com/robotframework-aio/main/build/-/merge_requests/111 to remove repos from AIO build pipeline - BIOS version

Thank you,
Ngoan


feat(fab): Add fab

Based off of the top app bar branch, so this PR is adjusted to that branch to show my diffs. Will be merged to master some time after top app bar is merged.

Codecov Report

:exclamation: No coverage uploaded for pull request base (feature/top-app-bar@794c69b). Click here to learn what that means.
The diff coverage is 100%.

@@                 Coverage Diff                  @@
##             feature/top-app-bar    #14   +/-   ##
====================================================
  Coverage                       ?   100%
====================================================
  Files                          ?      2
  Lines                          ?     57
  Branches                       ?      5
====================================================
  Hits                           ?     57
  Misses                         ?      0
  Partials                       ?      0

Impacted Files
Coverage Δ

packages/top-app-bar/index.js
100% <100%> (ø)

packages/material-icon/index.js
100% <100%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 794c69b...aa3cfca. Read the comment docs.


Establish html page and their css for start and event pages

We can change "After College / University" to "Graduated", and everything else I think you mentioned you'd add in our meeting, so looks good to me!


Add ability to register default fields to be logged with every message

Hi,
this is a proposal to fix #444 , as this is a feature we needed in our projects, and passing around the logger is not always feasible for us.
If the solution looks good to you, I can add more comments and documentation to complete it, and/or more tests if required.
If it's not, I am open to try a different way. :)
Thanks!

You can do that today, with something like:
var logger *logrus.Entry
func init() {
   log := logrus.New()
   logger = log.WithFields(logrus.Fields{"default":"value"})
}

func main() {
   logger.Debug("Logger with Default Field(s)")
}

Yes, I know. The problem with that solution is that you need to pass the logger around everywhere, adding a dependency to every function or manually running an init for every module in your application to either share the logger or use a ServiceLocator or a DIC.
For very small applications it is feasible. For medium-sized applications, with separate (sub) modules it's easier to rely on the default logger but being able to add global fields to it.
For example, in our case, we need to log a unique ID assigned to each of our microservices on every message. Passing the logger around or (worse) reading the env var on every logger call is very painful.
For now I solved it by writing a custom logger wrapping logrus, but it's hundreds of lines of code for a feature that can be implemented easily in the core.

Up? Please 🍺?

On every project where we do this, we just centralize the log entry into a package. It works great and remove the necessity for this upstream. https://github.com/containerd/containerd/blob/master/log/context.go shows how we do this with context, but you could also just have a global.

Is there a plan to merge it?

great job!

A code sample has been added in the repo.

It is indeed very inconvenient to not being able to configure default logger with some default fields. :-/


Improve error message

Saw this while writing a mixed version roachtest and had to waste
time on this.

This change is

TFTRs!


Errors when running unfi_lab.py

He guys I am getting this error after running unifi_lab.py
C:........\unifi-lab-master\python unifi_lab.py
installing handler for correct redirect
Traceback (most recent call last):
File "unifi_lab.py", line 428, in (module)
main()
File "unifi_lab.py", line 424, in main
myUnifiLab.continuousLoop()
File "unifi_lab.py", line 356, in continuousLoop
sendMail(errorMessageText % {"error": logError(e)}, self._config)
File "unifi_lab.py", line 106, in logError
msg += e.args[0] + "\n"
TypeError: unsupported operand type(s) for +: 'SSLError' and 'str'
Any ideas guys??
Thanks in advance

Try running Python version Python 2.7.6 - 2013-11-10. Mine worked with windows.
I gave up trying to setup on debian.


ci: use Personal Access Token to login to Github container registry

Authentication to Github container registry requires personal access token, see: https://docs.github.com/en/packages/guides/configuring-docker-for-use-with-github-packages#authenticating-to-github-packages
Github container registry can’t accept App tokens, see this discussion

We are closer as we are testing GITHUB_TOKEN support internally right now.

Any ETA you could share (even a rough one)?

½ way through March we should be GA

👍


Upgrade WebOB (and webapp2 to be safe)

Our current Docker setup is running Python v2.7.12 (because that's what's in the Ubuntu Xenial repository). It breaks with Python 2.7.15 (I haven't tried versions in between).
The reason is that the newer version of xml.sax.expatreader.ExpatParser (used by app/pfif.py) expects to be able to call close on its input file, and the input object provided by WebOB v1.1.1 (a LimitedLengthFile) doesn't have a close function. It does have that function in WebOB v1.2.3, so we should upgrade to that. It might be a good idea to upgrade to webapp2 v2.5.2 at the same time (since they're closely linked it seems better to run versions from similar times).

Once I get things working with Python 2.7.15, I'll see if I can set up Travis to run with two environments: one that uses 2.7.12 (because that seems to be what App Engine currently uses for its 2.7 runtime) and one for the latest thing I can find (to be safe if/when App Engine upgrades its runtime).

TL;DR for @gimite: is there a partner or anyone else you know of who's using the charsets URL parameter?
This is turning out to be a big can of worms, because of the way WebOB 1.2.3 supports non-UTF8 requests. You can't just assign the charset field anymore, you need to manually call request.decode(), which doesn't sound so bad except decode() doesn't modify the request in place; instead it builds a brand new request and returns that. If your original request object is actually a subclass of the WebOB BaseRequest class (say, a webapp Request object), any fields from the subclass (which WebOB's BaseRequest.decode doesn't know about) get lost. webapp uses at least one of those (the route field) for critical functionality.
webapp isn't being maintained, so it's never going to call Request.decode in the right place in its own code to deal with it under the hood (which I think is the theoretically correct way this should be handled).
This isn't a long-term problem for us since we're abandoning webapp2 anyway, but it does leave us in a bad position in the meantime. I think there's three options:

Do nothing. Hope that App Engine doesn't start using Python 2.7.15 before we've migrated to Django.
Abandon support for non-UTF8 requests to make it easier to move to WebOB 1.2.3 (I think we could still support non-UTF8 responses if we wanted).
Basically fork webapp2 to address the WebOB change ourselves.

(1) seems dangerous and (3) seems like a lot of work and risk to deal with an edge case with a framework we're already planning to get rid of. Further, it looks like we currently don't support non-UTF8 requests* unless they're specified with the charsets param (i.e., setting a non-UTF8 charset with the Content-Type header doesn't seem to work). So, unless there's a partner or someone who knows about and is using our charsets URL parameter, there's actually no reduction in functionality from (2).

I tried running this curl command:
curl -X GET "http://www.google.org/personfinder/japan/results?query=%8D%B2%93%A1&role=seek" -H "Content-Type: text/html; charset=shift_jis"
and it shows up in the logs with an error saying "rejecting", from line 249 of results.py.

I believe it is no longer necessary to support encodings other than UTF-8. But I'm asking @nmakida in a mail thread to confirm because it was originally introduced to support old Japanese feature phones.
FYI Request encoding and response encoding are tightly related because (I believe) browsers send request in the same encoding as the encoding of the page.

Confirmed with @nmakida that it should be OK to drop support of non-UTF-8 encodings.
As a reference, this article (found on the web, in Japanese):
https://gist.github.com/uupaa/e19c25029190d2329d8d
says UTF-8 is available for most of  feature phones in Japan sold after 2010.

That's great to hear. I'll go ahead with the WebOB upgrade without non-UTF8 support.
I think it could be worth talking about supporting other character sets again once we're on Django though (seems reasonably well-supported, at least from a quick glance at their docs), so I'll leave #579 open for now.


Replay Buffer isnt Loaded Enough Yet

While running the Actor-Crtic Experiment, "the Pre-Training Critic with fixed Actor", the program stops expectedly after saying the replay buffer isnt loaded enough yet.
The error code is actually this:
W0618 13:04:57.966608<PHONE_NUMBER>74624 replay_buffer.py:156] Bucket input queue is empty when calling next_batch. Bucket queue size: 0, Input queue size: 0
I0618 13:04:57.967000<PHONE_NUMBER>74624 run_summarization.py:481] replay buffer not loaded enough yet...
^C
I have had a look at the summarization file and online but I really dont know how to fix this. I noticed it also occurs during the Training with true Q estimates.
@yaserkl Can you please help me out?

@Fatman003 i have had same error ^C ^C

@khoaiha12 I think it might have to do with the GPU allocation. try editing the command to use only one GPU(which is available) gpu_num=0..

@Fatman003 I tried it, but that error still occured. I run on GG Colab, only 1 GPU per session.

INFO:tensorflow:Running local_init_op.
INFO:tensorflow:Done running local_init_op.
INFO:tensorflow:Saving checkpoint to path ./src/logs/actor-critic-ddqn2/train/model.ckpt
INFO:tensorflow:global_step/sec: 0
INFO:tensorflow:Starting standard services.
INFO:tensorflow:Starting queue runners.
INFO:tensorflow:Saving checkpoint to path ./src/logs/actor-critic-ddqn2/dqn/train/model.ckpt
INFO:tensorflow:current_relay_network/global_step/sec: 0
INFO:tensorflow:Preparing or waiting for session...
INFO:tensorflow:Created session.
INFO:tensorflow:Starting run_training
INFO:tensorflow:Starting DQN training thread...
WARNING:tensorflow:Bucket input queue is empty when calling next_batch. Bucket queue size: 0, Input queue size: 0
INFO:tensorflow:replay buffer not loaded enough yet...
INFO:tensorflow:Starting Seq2Seq training...
INFO:tensorflow:Saving checkpoint to path ./src/logs/actor-critic-ddqn2/train/model.ckpt
INFO:tensorflow:global_step/sec: 0
INFO:tensorflow:seconds for dqn collection: 19.2806758881
INFO:tensorflow:Q-values collection time: 43.3507909775
ReplayBatch size: 1546
ReplayBatch example queue size: 1
ReplayBatch batch queue size: 0
INFO:tensorflow:RUNNNING DQN PRETRAIN: Adding data to relplay buffer only...
INFO:tensorflow:Saving checkpoint to path ./src/logs/actor-critic-ddqn2/dqn/train/model.ckpt
WARNING:tensorflow:Bucket input queue is empty when calling next_batch. Bucket queue size: 0, Input queue size: 0
INFO:tensorflow:replay buffer not loaded enough yet...
INFO:tensorflow:seconds for dqn collection: 23.9194500446
INFO:tensorflow:Q-values collection time: 25.8006739616
^C
This is the log when i trained with true Q estimates.

Did you change your GPU allocation? I didn't have this issue when I changed the gpu_num to 0 and used my school cluster. It retrained but it might be an issue with Colab.


Command missing: New-Contact, Set-Contact

Hello,
the following commands are missing:

New-AzureAdContact (AzureAd)
Set-AzureAdAccount (AzureAd)
New-Contact (ExchangeOnlineManagement)
Remove-Contact (ExchangeOnlineManagement)

PS C:\> Get-command -noun AzureADContact

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Cmdlet          Get-AzureADContact                                 <IP_ADDRESS>  AzureAdPreview
Cmdlet          Remove-AzureADContact                              <IP_ADDRESS>  AzureAdPreview

PS C:\> Get-command -noun Contact

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Function        Get-Contact                                        1.0        tmp_hcroih1x.2yk
Function        Set-Contact                                        1.0        tmp_hcroih1x.2yk

PS C:\> Get-command -noun MailContact

CommandType     Name                                               Version    Source
-----------     ----                                               -------    ------
Function        Get-MailContact                                    1.0        tmp_hcroih1x.2yk
Function        New-MailContact                                    1.0        tmp_hcroih1x.2yk
Function        Remove-MailContact                                 1.0        tmp_hcroih1x.2yk
Function        Set-MailContact                                    1.0        tmp_hcroih1x.2yk

If someone could tell me how I can create Contact objects (for use in Teams!) in AzureAd or in a specific Global Address List, I would appreciate it. I need to cover the full lifecycle: New/Get/Set/Remove
I am trying to solve a migration issue moving from Skype to Teams and create Contact Objects for Analog Devices we have in the organisation.
Thanks,
David

Cross-promoted in azure-docs-powershell-azuread as well: https://github.com/Azure/azure-docs-powershell-azuread/issues/552

Cross-promoted in azure-docs-powershell-azuread as well: https://github.com/Azure/azure-docs-powershell-azuread/issues/552

Hello @DEberhardt David.
Have you tried with New-MailContact and Remove-MailContact ?

Hello @DEberhardt David.
Have you tried with New-MailContact and Remove-MailContact ?

I have managed to creating a Contact with New-MailContact, then using Set-Contact to add the Phone Number.
My use-case is to add Contact Objects (for Analog Devices) for use in the Teams Global Address list and finding Objects by Name and Extensions.
However, I feel, the whole procedure is not well documented:

An Example Page would be good to demonstrate the whole process for Contact objects in general
OR
Clean availability of all PowerShell commands

The latter can be achieved either with an Alias to the existing commands or with introduction of dedicated Cmdlets to enable people to find them.

I have managed to creating a Contact with New-MailContact, then using Set-Contact to add the Phone Number.
My use-case is to add Contact Objects (for Analog Devices) for use in the Teams Global Address list and finding Objects by Name and Extensions.
However, I feel, the whole procedure is not well documented:

An Example Page would be good to demonstrate the whole process for Contact objects in general
OR
Clean availability of all PowerShell commands

The latter can be achieved either with an Alias to the existing commands or with introduction of dedicated Cmdlets to enable people to find them.

Hello @DEberhardt David. How are you?

An Example Page would be good to demonstrate the whole process for Contact objects in general

This in particular I think would fit in another repo (https://docs.microsoft.com/en-us/MicrosoftTeams/), you can always propose an improvement to documentation.

Clean availability of all PowerShell commands

I know the team behind the Teams PowerShell module is constantly working on adding new features, as I always say, the best thing to do in this case is create a uservoice entry so it reaches the team.

Hello @DEberhardt David. How are you?

An Example Page would be good to demonstrate the whole process for Contact objects in general

This in particular I think would fit in another repo (https://docs.microsoft.com/en-us/MicrosoftTeams/), you can always propose an improvement to documentation.

Clean availability of all PowerShell commands

I know the team behind the Teams PowerShell module is constantly working on adding new features, as I always say, the best thing to do in this case is create a uservoice entry so it reaches the team.

@get-itips Thank you very much for the contribution and sharing this explanation. @DEberhardt Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

@get-itips Thank you very much for the contribution and sharing this explanation. @DEberhardt Hope this comment is helpful for you. If you see a documentation update is required, please feel free to open an issue for the same. We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.

Hello, FYI
UserVoice entry created - more general in phrasing, but no takers yet:
https://microsoftteams.uservoice.com/forums/555103-public/suggestions/42449707-powershell-commands-for-contact-objects-common-ar


[Android] lock phone while typing message and try to type more you can't

https://github.com/user-attachments/assets/04b0019b-4276-4a29-836a-b4642cfc7de1

If you tap into the text field again does it work?


DNM [nrf mergeup] merge upstream up to commit 288682c

do not override TEXT_SECTION_OFFSET (The nrf52840_pca10059 board no longer
overrides TEXT_SECTION_OFFSET but sets the correct FLASH_LOAD_OFFSET
instead)
Fix bug https://github.com/JuulLabs-OSS/mcuboot/issues/399 where dts.overlay was not being appended.
imgtool disallow using public RSA key for signing.

cc @Qbicz


feat: Cache pointCloud data

:tada: This PR is included in version 1.0.0 :tada:
The release is available on npm package (@latest dist-tag)
Your semantic-release bot :package::rocket:


fix #92

Description

Fixed issue #92
Optimized chart display effects

Closes: #92

please check it @xiaolin199912


[WIP] CUDA JIT

Very interesting!!!
cc: @jakirkham @mnicely @gmarkall @sklam @beckermr

I was curious about how to deal with variable types using ast and found the following
https://stackoverflow.com/questions/8425371/how-to-get-a-type-of-the-variable-from-the-pythons-ast
This is just for reference and to spark discussion

I suppose that an option is we can wrap ast nodes to have type variables, and infer the types of those nodes:
class Constant:
    def __init__(self, node):
        self.node = node           # An instance of ast.Constant
        self.type_var = TypeVar()  # An type variable to infer

Fortunately, as the target language is CUDA C, we don't need to think of the dynamic feature of Python.

Question: Is it possible to provide an API to dump generated CUDA source code? Something like this:
@jit.cuda_function()
def kernel(x, y):
     tid = jit.blockIdx.x * jit.blockDim.x + jit.threadIdx.x
     x[tid] += y

code = kernel.dump_source([('int', 'int'])  # specify that x and y are int*; could also be done in @jit.cuda_function?
print(code)

Expected output:
__global__ void kernel(int* x, int* y) {
    int tid = blockIdx.x * blockDim.x + threadIdx.x;
    x[tid] += y;
}

This could be useful for debugging as well as other purposes, like cuFFT callback (#4141).

@leofang Yes, we are planning to support it!

Moved the task list to #4290.


error running on DNANexus platform

Hi,
an error issue was reported when I ran the ENCODE ATAC pipeline on DNANexus platform. I had ran the pipeline on DNANexus platform before, everything was ok. I don't know why some errors were occurred this time.
The following steps were failed:
if(enable_idr)
if(!align_only && !true_rep_only && enable_idr)
qc_report
scatter(I in range (length(fastqs_ataqc)))
outputs
the error information is: "Failed to find index Success(WomInteger(0)) on array: Success([]) 0".
Below is the detailed log showed on platform:
DNANexus Log.docx

Can you try with the latest pipeline which uses a pipeline docker container v1.1? Also, please upload all .qc files on your output directories. These will be helpful for debugging.
This repo has been deprecated. We can still discuss this issue here but next time post an issue on the new pipeline repo https://github.com/ENCODE-DCC/atac-seq-pipeline/.


[Question] Why [tool.poetry] in pyproject.toml?

In Cargo.toml you have a [package] section and [depencencies] section by default.
Here we have [tool.poetry] and [tool.poetry.dependencies].
Why do we have to have more verbose sections? I like when it’s straightforward.
How does it relate to the PEP 518?

This the specification of PEP 518 (see last paragraph of the Specification section: https://www.python.org/dev/peps/pep-0518/#id24)

If I understand correctly, this verbosity will disappear as the PEP and other tools stabilize.


Fix missing match arm false positive

If the type of the match expression is {unknown}, don't do exhaustiveness checks, as it could be an uninhabited type.

Nice!
bors r+

Did this fix https://github.com/rust-analyzer/rust-analyzer/issues/5779?

This did address my extra case in #4896. The original issue tracked there (not needing to match uninhabitable variants at all with #![feature(uninhabitable_patterns)]) is not impacted by this. #5779 seems unrelated.


Display long text of the cell - right align content of the status bar

PerfView displays content of the string in the status bar and one can even scroll/select text there to see full content. This is very useful when investigating deep call stacks where things are getting further to the right in the tree.

But I often find myself clicking the status bar and scrolling it to the end with mouse to look at the end of the line. Mostly because generic parameters are usually there and it's the way to get understanding what kind of overload was called at that node.
Suggestion is to modify status bar to show rightmost part of the cell by default. Like that:

Could be that additionally it would be good to show some visual indication in the bottom left corner that something is there on the left.
Additional bonus would be to have a tooltip shown for the grid cell with full content and also some hotkey to scroll the status bar to the right. Most likely the latter would not be obvious, so it might be enough to add ability to press End in the status bar or just have a small button on the right to quickly show end of the text.

@ilabutin thanks for the feedback.  I am hesitant to make the bar the bottom show the last bit of text as opposed to the first bit.  I could imagine this would be confusing for most users who aren't expecting this, and haven't ever seen it in another app.  That said, I do think that the idea of a tooltip is good, and would be useful to implement.  I realize this is an old issue, but would you be interested in submitting a PR for this?

Actually tooltip won't help much unless it shows the rightmost part of the cell.
But what I tried to implement instead is horizontal scrolling of the grid itself. So that there is a horizontal scrollbar under the grid which scrolls the content of the "Name" column of the grid.
My two previous pull requests were not merged for various reasons, but I personally use the version of PerfView with this functionality and it feels OK.
If you feel this might be interesting, then I can try to prepare another PR for this change so that you can evaluate.
@brianrob


Implement federation (timeseries streaming)

It should be possible to efficiently stream timeseries from one Prometheus instance to another, with exchanged series determined based on a federation configuration.

A way to do this via console templates, until we've got a full-on solution: https://github.com/prometheus/prometheus/blob/master/consoles/federation_template_example.txt

The solution might include "streaming" as in "transfer more than one timestamped sample per time series during one scrape of a higher-level Prometheus server from a lower-level Prometheus server".

I'm a little wary of doing more than one value. The main reason you'd need that would be if a previous scrape failed, and requesting more data from a server that failed last time may lead to a cascading failure.

There are two common use-cases for federation:

Scaling, as folks have mentioned. Given prometheus' scaling this is actually probably the rarer use-case
Aggregating data across zones of some form

It's generally important to monitor a target from "nearby". You want to run prometheus as close to the target in the network sense as possible. It's actually generally a good idea to run it in the same failure domain as well, as then your monitoring goes down exactly when your system goes down, instead of alternate with it, this helps avoid your system being up while your monitoring is down, minimizes netsplits impacting monitoring, etc.
In the case of multiple zones though it's often useful to cross-correlate data across those zones. So you'd use the federation to pull the data in to a "global" level prometheus. In this case it'd be fairly common for a scrape to fail due to a network-level event (fiber cut, router failure, etc.)... and it kind of sucks to just lose that data from your global level prometheus instance when it still exists in the lower level monitoring.
I should note here that in the prometheus model there isn't a global store to pull from, so if the data isn't in that top-level right now, you'll never get it there. You'd end up having to do periodic dumps and imports from your lower-level promethei to fill in holes for network outages... ick :(.
I'd suggest pulling data in in a more "streaming" fashion with a bounding the window. The default bound can be relatively small to avoid the cascading problem, this way it should at least be able to bridge small network "glitches" like those frequently seen in intercontinental links. If someone wants to expose themselves to cascade failures to handle a cruddy network, they could extend the window if desired.

Oh, also, this way you can handle high-frequency data without having a high-frequency poll at the federation layer.

I don't think a bounding window is sufficient to prevent cascading failures, even if it now requests at most two data points that means that the load on the slave prometheus server could double in an outage - which would be bad.
My experience is that gaps due to small blips due to network fun don't usually cause problems in practice. I'd try to avoid putting anything critical in a global prometheus, due to the fundamental unreliability of the WAN (and data appearing a bit back in time may cause weirdness with rules) - it's more for general information with the per-cluster/failure domain prometheus servers being the place you usually go to first.

What about higher frequency data? It seems the scrapes will have to happen at least as fast as the fastest scrape that the lower-level prometheus is doing.

At the global level, high frequency data is much less useful than at a local level.
High-frequency data (on the order of seconds) is primarily useful for debugging things like microbursts for which you usually want to look at a handful of variables in roughly one datacenter at a time to figure things out, and reduce the impact of the various race conditions inherent in monitoring.
At a global level you tend to want a wide range of metrics at no more than a minute granularity. A well instrumented server will tend to have hundreds to thousands of metrics, and many thousands of time series. Doing scrapes more often will make you run into performance problems sooner without much benefit from the increased frequency, rather it's the breadth of instrumentation that helps you pin down all bar the microbust-level issues. If anything you'd be looking at downsampling a bit at the global level.

This has been implemented. http://prometheus.io/docs/operating/federation/


Restrict class interface?

Hi,
Subclassing bloated classes (like cmd.Cmd) will result in pdoc showing all methods from the inheritance tree, which is a lot.
Is there some kind of __all__ at the class level to restrict these? The Cmd class for example has lots of internal methods that do not begin with underscores, and I would like to omit those from the documentation.
Any ideas how to go about this?

Hmm. You can technically achieve your goal today, but it isn't pretty. It's based on this little line at the end of the docs:

If __pdoc__[key] = None, then key will not be included in the public interface of the module.

So if Cmd has a member foo that you don't want to show up, I think you can do this:
class MyCmd(Cmd):
    __pdoc__['MyCmd.foo'] = None

Listing all the fields sucks, so maybe you can do:
class MyCmd(Cmd):
    for field in Cmd.__dict__.keys():
        __pdoc__['Cmd.%s' % field] = None

But this isn't pretty. In that light, I think #15 is a duplicate.

Thanks!
It does the job for my use case, so I'll close this in favor of #15 which has more discussion.


Nested functions

I haven't tested this, so maybe it is already possible.
Support n levels deep of this:
Value(foo.Env(BAR))

Will implement some template engine instead


Add more cmd tests

Codecov Report

Merging #159 into master will increase coverage by 1.53%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #159      +/-   ##
==========================================
+ Coverage   81.44%   82.97%   +1.53%
==========================================
  Files          12       12
  Lines         388      423      +35
==========================================
+ Hits          316      351      +35
  Misses         72       72

Impacted Files
Coverage Δ

src/bin/os_info.rs
0.00% <ø> (ø)

tests/cli.rs
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 820f3c9...225995e. Read the comment docs.


The hand on mouse is not replacing with the other image.

Well I want instead of cat I want to replace it yoda. so everything works fine but there is one problem as his left hand the one which he hold the pen. How do I fix that.
https://gyazo.com/09bbb7786aaf4aa7ee45ffd1774797c3

Sorry for bothering, but any progress on this feature?

The developer told me he hasnt implement this functionality yet
On Wed, 13 May 2020, 12:28 pm DeoxyShocK<EMAIL_ADDRESS>wrote:

Sorry for bothering, but any progress on this feature?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/kuroni/bongocat-osu/issues/27#issuecomment-627801907,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AE6DJNEPAX24NMGYLXMFQPDRRJDYZANCNFSM4KK2H6UQ
.

Hi, I have tried several things, but I can't manage to make this work. Also my free time is incredibly limited, so I don't think I will work on this in the foreseeable future. If anyone wants to make it please do and make a PR for me :(

Is there a way you could have it replaced with a similar image? The hand I'm trying to get it replaced has a similar shape to Bongo, which might be a bit easier to configure compared to the Yoda hand. Here's an example https://i.imgur.com/2zQd3Rb.png. It's completely fine if you can't do it, thanks for the quick response :)

For that case, you can try setting the paw color, you can see in the wiki here.
However, if you want to completely change the hand's structure, I don't think I am in the position to do it right now. The curve was drawn completely by code.

I see; there is no way to change the texture of the curve, like in the paw in that image? What about changing the color of the curve so it's not limited to black? Thanks!

I think I've done it. I will build the package when I have time.

Alright, thanks!

Can you try the latest release?

So far so good! I do seem to be having a color problem where if I were to put in (0, 0, 0) it would appear a bit grey-er (lighter of color) than the normal black https://i.imgur.com/Zm81Qb0.jpg. This isn't exactly a huge issue and I could input a color slightly darker than the one I want so I can get the color I need, and if you aren't too busy it would be helpful if you could try and fix the problem, thanks :)

Please check out the new release here :)

Wow, it worked perfectly! Thanks so much for putting your time into this, is there a place I could donate to appreciate your help?

I don't take donations, but I appreciate that :)

Alright, thanks a lot :)

Is it possible for you to allow users to change the alpha of the hand? That way if someone wanted to use a different style of hand they could have the option of just putting the hand on the mouse image file and then making the hand that is drawn an alpha of 0.

I think I could do it myself because it seems like it's just hard coded in as 255 right now, but I cannot for the life of me figure out how to actually make changes to the source code and then make my own exe.

I don't have any plans for changing paws in the future, since it is too much work to be done. Best I can do is changing the texture of the paw, but that is also a difficult thing to do.


Bidirectional REST calls between WLS 14110/12214 w/H3

Environment Details

Helidon Version: 3.x
Helidon MP
JDK version:
OS:
Docker version (if applicable):

issue addressed in PR #6864


test: add diagram explaining test workflow

Improve documentation.
Simplify timeouts (unrelated minor fix)

Pull Request Test Coverage Report for Build<PHONE_NUMBER>5
Details

0 of 0   changed or added relevant lines in 0 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 71.005%

Totals

Change from base Build<PHONE_NUMBER>2:
0.0%

Covered Lines:
2564

Relevant Lines:
3611

💛  - Coveralls


Shift Go Support Window to [1.19, 1.20]

Go 1.20 is released with release notes!
It is time to shift the window for go support to [1.19, 1.20] by updating

go. mod
GitHub Actions

Notably, Go 1.20 introduces a new package crypto/ecdh.
We might want to support the *ecdh.PrivateKey and *ecdh.PublicKey by converting them to keys in the package crypto/ecdsa.

Notably, Go 1.20 introduces a new package crypto/ecdh.
We might want to support the *ecdh.PrivateKey and *ecdh.PublicKey by converting them to keys in the package crypto/ecdsa.


Upgrade Python to 3.11

What happened?
Currently the version of python is 3.9. This is a little outdated.
Example
N/A
Output of pulumi about
N/A
Additional context
No response
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Related to #144. I think we're going to want to do something like that, as upgrading the existing image can potentially break folks, so we try to minimize it as much as possible.

For Python, we now have images for 3.9 through 3.12 https://hub.docker.com/u/pulumi?page=1&search=pulumi-python. The default image (without suffix) pulumi/pulumi-python still uses 3.9, but we will start updating this and other languages to track the latest stable version of each language in November. For more details see https://www.pulumi.com/blog/docker-containers.


Add support of DNS editing

Example has been included as examples/dns_edit_eth1.yml and
examples/dns_remove.yml.
If DNS not defined in desire state, old DNS configuration will be
perceived.
If DNS defined in desire state, old DNS configuration will be fully override
with desired state.
To remove static DNS configuration, Please use this state:
{
    DNS.KEY: {
        DNS.CONFIG: {
            DNS.SERVER: [],
            DNS.SEARCH: []
        }
    }
}

Limitation: only support saving DNS configuration to state default
gateway interfaces.
Unit and integration test cases has been included.

Wait on PR #395


🐛 BUG: Could not resolve "_worker.js" when running wrangler pages dev with --proxy flag

Which Cloudflare product(s) does this pertain to?
Wrangler core
What version(s) of the tool(s) are you using?
3.22.1 [Wrangler]
What version of Node are you using?
18.17.1
What operating system are you using?
Mac
Describe the Bug
I have a _worker.js in my project root:
export default {
  async fetch(request, env) {
    return new Response('Ok');
  },
}

I ran pnpm exec wrangler pages dev --proxy <port> and got:
✘ [ERROR] 1 error(s) and 0 warning(s) when compiling Worker.

▲ [WARNING] Failed to bundle _worker.js. Error: Build failed with 1 error:

  .wrangler/tmp/bundle-RCsC8p/middleware-insertion-facade.js:1:43: ERROR: Could not resolve
  "_worker.js"
      at failureErrorWithLog
  (/Users/matt/Library/pnpm/global/5/.pnpm/esbuild@0.17.19/node_modules/esbuild/lib/main.js:1636:15)
      at
  /Users/matt/Library/pnpm/global/5/.pnpm/esbuild@0.17.19/node_modules/esbuild/lib/main.js:1048:25
      at
  /Users/matt/Library/pnpm/global/5/.pnpm/esbuild@0.17.19/node_modules/esbuild/lib/main.js:1512:9
      at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
    errors: [
      {
        detail: undefined,
        id: '',
        location: [Object],
        notes: [Array],
        pluginName: '',
        text: 'Could not resolve "_worker.js"'
      }
    ],
    warnings: []
  }

Please provide a link to a minimal reproduction
No response
Please provide any relevant error logs
✘ [ERROR] 1 error(s) and 0 warning(s) when compiling Worker.

▲ [WARNING] Failed to bundle _worker.js. Error: Build failed with 1 error:

  .wrangler/tmp/bundle-RCsC8p/middleware-insertion-facade.js:1:43: ERROR: Could not resolve
  "_worker.js"
      at failureErrorWithLog
  (/Users/matt/Library/pnpm/global/5/.pnpm/esbuild@0.17.19/node_modules/esbuild/lib/main.js:1636:15)
      at
  /Users/matt/Library/pnpm/global/5/.pnpm/esbuild@0.17.19/node_modules/esbuild/lib/main.js:1048:25
      at
  /Users/matt/Library/pnpm/global/5/.pnpm/esbuild@0.17.19/node_modules/esbuild/lib/main.js:1512:9
      at process.processTicksAndRejections (node:internal/process/task_queues:95:5) {
    errors: [
      {
        detail: undefined,
        id: '',
        location: [Object],
        notes: [Array],
        pluginName: '',
        text: 'Could not resolve "_worker.js"'
      }
    ],
    warnings: []
  }

Hi @mattp0123 🙂👋 , I think that the issue is that the _worker.js entrypoint is getting referenced to without using an absolute path
I've opened #4652 to fix the issue, I think it should do the trick, if you want please give the PR's prerelease package a try and let me know if that works for you 🙂


test(bridge): include freebsd tests for bridge interfaces

Merging.  Test failure is due to new lint requirements that I cannot reproduce locally.


RLException: ERROR: unable to contact ROS master at [http://<IP_ADDRESS>:11311]

pi@raspberrypi:~ $ roslaunch turtlebot3_bringup turtlebot3_robot.launch
... logging to /home/pi/.ros/log/43e51212-a586-11ee-99f5-b827ebbac163/roslaunch-raspberrypi-4058.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://<IP_ADDRESS>:41565/

SUMMARY
========

PARAMETERS
 * /rosdistro: melodic
 * /rosversion: 1.14.3
 * /turtlebot3_core/baud: 115200
 * /turtlebot3_core/port: /dev/ttyACM0
 * /turtlebot3_core/tf_prefix:
 * /turtlebot3_lds/frame_id: base_scan
 * /turtlebot3_lds/port: /dev/ttyUSB0

NODES
  /
    turtlebot3_core (rosserial_python/serial_node.py)
    turtlebot3_diagnostics (turtlebot3_bringup/turtlebot3_diagnostics)
    turtlebot3_lds (hls_lfcd_lds_driver/hlds_laser_publisher)

RLException: ERROR: unable to contact ROS master at [http://<IP_ADDRESS>:11311]
The traceback for the exception was written to the log file

经排查发现，主机roscore开启的端口不匹配，source后问题解决了。


Update suppressions.md

Description of the change: Adding clarification that asm_group_id should only be passed as integers
Reason for the change: asm groups should not be passed as strings, only integers for us to be able to correctly process the message
Link to original source:

Closes #

Hello @emilyruppe,Thanks again for the PR! We appreciate your contribution and look forward to                                              continued collaboration. Thanks!                                             Team SendGrid DX


Update repositories.toml

Please find the issue list:
https://github.com/4paradigm/OpenMLDB/issues?q=is%3Aopen+is%3Aissue+label%3A"good+first+issue"
ℹ Repository information
The repository has:

[x] At least three issues with the good first issue label.
[x] Detailed setup instructions for the project.
[x] CONTRIBUTING.md
[x] Actively maintained.

are there any problems to add our repo? Thanks.


NumericUpDown crashes when deleting the content

Describe the bug
When the content of a NumericUpDown is selected and deleted it crashes the app.
To Reproduce
Minimal app for reproduction:
NumericUpDownBug.zip
Expected behavior
It should not crash. Instead it should return to a default value or minimum value.
Desktop (please complete the following information):

OS: Windows
Version 11.0.0-rc1.1

duplicate of https://github.com/AvaloniaUI/Avalonia/issues/10793


change name of command-line unterface from command to cli

It appears that cli is the first guess when people looking for this facility. It would also align it properly with CHANGELOG.md.

I messed up in the CHANGELOG, command is a better name for sure in my opinion.

I fixed the typo in the changelog btw.

Thank you. I wanted to give you an option.


PineconeEmbeddings.dimension is ignored

Checked other resources

[X] I added a very descriptive title to this issue.
[X] I searched the LangChain documentation with the integrated search.
[X] I used the GitHub search to find a similar question and didn't find it.
[X] I am sure that this is a bug in LangChain rather than my code.
[X] The bug is not resolved by updating to the latest stable version of LangChain (or the specific integration package).

Example Code
This will raise an exception:
from langchain_pinecone import PineconeEmbeddings

embeddings = PineconeEmbeddings(
    model="multilingual-e5-large",
    dimension=512,
)

vector = embeddings.embed_query("Why?")
assert len(vector) == 512

Error Message and Stack Trace (if applicable)
No response
Description
I see that you have some tests here, but the tests use the default embedding of 1024, so don't catch the fact that it doesn't work for any other dimension.
I suspect if you change that line in the test to DIMENSION=333 or something the tests will fail.
System Info
langchain==0.2.16
langchain-anthropic==0.1.22
langchain-community==0.2.16
langchain-core==0.3.0
langchain-google-genai==1.0.8
langchain-google-vertexai==1.0.8
langchain-milvus==0.1.4
langchain-openai==0.1.20
langchain-pinecone==0.2.0
langchain-text-splitters==0.2.2

Windows, Python 3.10

@gdj0nes could you look at this? Agreed the dimension parameter doesn't seem to do anything, and looks like this was in the initial Pinecone integration here: #24515


⚠ Bofrost.at has degraded performance

In 3122133, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 2030 ms

Resolved: Bofrost.at performance has improved in 2448a53.


Feature disparity between the NixOS and h-m modueles

I've found that there's an abysmal difference between the feature set of the both modules provided by this flake.
Why is it that you cannot change the permission, the persistentStorage path, etc... while in the home-manager module?
The most frustrating part is that, by default, all directory paths  in the m-m mod. are relative to the the user home. Is there a reason for this?
It is a problem if you want to, for example, so things like this one:
home.impermanence."/nix/persistence" = {
  directories = [
    config.xdg.dataHome;
  ]:
};

Which can be very useful in a lot of situations.
Thanks for you're time and this project. :)

I was just discovering the lack of persistentStoragePath in the home-manager module myself... I wanted to declare my persistent setup in home-manager.sharedModules, name the attrs in home.persistence to "state" and then set the persistentStoragePath individually based on config.user.username but this is proving non-trivial due to the differences.

@nocha1n I mean, this is what I had to do in order to avoid putting specific paths instead of just using config.xdg.dataHome:
    # Persists the requiered gpg directories.
    persistence."/nix/persistent${config.home.homeDirectory}" = {
      directories = [
        (builtins.toString (lib.path.removePrefix (/. + config.home.homeDirectory) (/. + (config.programs.gpg.homedir + "/private-keys-v1.d"))))
      ];
    };

The previous chunk of code "relativises" paths to the user home directory. I'm currently working in making a function that does this exact thing since I need it in a lot of places.

If anyone wants to test out #135 , I would appreciate it.
I've been running it for some time, and AFAIK it works well :)

I'm going to test it right now! I'll post an update if my computer explodes.


typo in sample code

the first sample code on the policy definitions section of this page has a typo
https://docs.microsoft.com/en-us/azure/cloud-adoption-framework/ready/azure-best-practices/private-link-and-dns-integration-at-scale#policy-definitions
it says "notequals" when it should say "notEquals" ... the all-lowercase results in an invalid policy definition and error, as we are dealing with case sensitivity here.

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

ID: 2bd28f7b-1764-83c9-9d82-d65ba75bcb94
Version Independent ID: e91679fb-9d61-7f89-5cb6-238e2eb91757
Content: Private Link and DNS integration at scale - Cloud Adoption Framework
Content Source: docs/ready/azure-best-practices/private-link-and-dns-integration-at-scale.md
Service: cloud-adoption-framework
Sub-service: ready
GitHub Login: @JefferyMitchell
Microsoft Alias: brblanch

Thanks for reporting - this issue is under review. This is a Microsoft Internal DevOps Bug ID # 474136


fix: tiny translation fix

Just fixed the german translation typo for "Anwendungsgeheimnis"

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

:D good catch thank you very much. Will be part of the next 6.0.x release :)


weave seems to hang at one point for me

I am using Weave version 0.1.2 under Julia 0.5.0 to generate documentation for the MixedModels package.  The file docs/src/man/bootstrap.jmd is the source.  If I run the chunks separately, it takes about 8 seconds to execute chunk 7.  When I try to weave the file it hangs at chunk 7, the call to bootstrap!.

The issue seems to be related to time required for evaluation.  If I change the number of bootstrap replicates from 100,000 to 1,000 in the call to bootstrap! the run succeeds.

Thanks for letting me know and sorry for not being more responsive. I'll look into it when I find some time.

The issue seems to be related to using term true which causes the whole result to be displayed. Printing out the result is clearly a bug as the semicolon doesn't suppress output.
When I remove term=true from options the bootstrap! call doesn't hang anymore.
Also Weave hanging when a chunk produces too much output is a bug which I need investigate further.

The bug for semicolons in term=true is now fixed and so your document now works. It seems that I can't fix the more general issue of Weave hanging when there is too much output.


openstack-crowbar: fix crowbar_tempest rerun for SOCC8 (SOC-9799)

SOCC8 uses testr instead of stestr (SOCC9) which has a different syntax
and output format. This change updates the command to rerun the failed tests accordingly.

Tested in: https://ci.suse.de/job/openstack-crowbar-tests/41/


Event bubbling, derived & session properties, hash merging

Changed how model events bubble from child pushing to parent, to parent listening to child. This allows models to be reused in multiple places while maintaining events.
Adding derived properties to models, using the syntax from Ampersand State. Nested properties can be listened for using the 'prop:relation' syntax.
Added basic hash merging to extend function so events / childViews / relations hashes are merged together during extend rather than being overwritten

On hold because this breaks some existing functionality.

Plan is to split this pull request up into event bubbling and derived properties.


Android - Chat - Composer is not responsive after tapping on the composer

If you haven’t already, check out our contributing guidelines for onboarding and email<EMAIL_ADDRESS>to request to join our Slack channel!

Version Number: 1.4.62-0
Reproducible in staging?: y
Reproducible in production?: n
Issue reported by: Applause - Internal Team
Action Performed:

Launch New Expensify app.
Go to chat.
Tap on the composer.

Expected Result:
The text cursor in the composer will blink and typing anything on it will be responsive.
Actual Result:
The text cursor in the composer does not blink and typing anything on it does not show response.
Workaround:
n/a
Platforms:

Which of our officially supported platforms is this issue occurring on?

[x] Android: Native
[ ] Android: mWeb Chrome
[ ] iOS: Native
[ ] iOS: mWeb Safari
[ ] MacOS: Chrome / Safari
[ ] MacOS: Desktop

Screenshots/Videos
Add any screenshot/video evidence
https://github.com/Expensify/App/assets/93399543/fc095b91-8e72-496a-91e2-f7f143a172b0
View all open jobs on GitHub

We think that this bug might be related to #wave-collect - Release 1

I tried reproducing on this same version on my Pixel 3 and could not reproduce. Does it happen every time for this user and across all Android devices?

Tester device is Samsung Galaxy z fold 4, Android 14

@kbecciv Does it happen every time for this user and across all Android devices?

@AndrewGable Checking

I was able to reproduce this on dev with a Pixel 4a

Can't reproduce on my Pixel 7a either 🤔
https://github.com/Expensify/App/assets/2838819/be5d6c52-9938-4e55-ab11-734ef4a5e08c

https://github.com/Expensify/App/assets/47436092/4d26293f-620d-4892-8d34-e63e890cadc0

not much of a hint but I notice that when this happens (which is 100% of the time for me), the cursor doesn't blink like it normally does

Hello, I’m from Software Mansion, I’d like to work on this job

Issue is still reproducible
https://github.com/Expensify/App/assets/93399543/620990c8-7a4a-4e72-ba1f-90e12ee15704

Seems like this could be related to New Arch + gyroscope animations, we are investigating here: https://expensify.slack.com/archives/C05LX9D6E07/p1713283087444259?thread_ts=1713050865.385749&cid=C05LX9D6E07

Could you check if https://github.com/Expensify/App/pull/40302 solves the problem?

@roryabraham confirmed https://github.com/Expensify/App/pull/40302 fixed this


Migrate from mocha to jest

Just testing the waters here. I find jest to be much more ergonomic than mocha/sinon/chai.
It provides out-of-the-box:

coverage reporting
nice mocking facilities
expect
snapshot testing
fast enough to do continuous testing while writing code

This PR only takes away mocha, but keeps sinon and chai, as replacing those need some thinking.
Sinon and chai can be replaced later or kept as is if needed.
To try out coverage reporting, run:
npm run test:coverage

How do you feel @whawker, is this something that could be changed?

I think migrating to Jest is a good idea.
The current testing setup is a bit clunky, it was more a cobbling together of things that worked back when this project was only a proof of concept.
Jest is much more suited to a React project than mocha. So I'm happy.

So let's merge this?
Most of the changes here are made with js jest-codemods, but I think they are fine.

The migration should be complete now.
I tried and the following works in react-jsx-highstock with version 6.2.0 (older break):
import Highcharts from 'highcharts/highstock'
import {
  HighchartsStockChart,
  Chart,
  YAxis,
  XAxis,
  AreaSplineSeries,
  Navigator,
  withHighcharts,
  Title
} from '../../../src';
import React from 'react';
import { renderIntoDocument } from 'react-dom/test-utils'

describe('<HighchartsStockChart />', () => {
  let testContext;

  beforeEach(() => {});

  it('renders to document', (done) => {
    const addSeries = (event) => {
      expect(event.options.type).toBe('areaspline');
      done();
    }
    const Component = (props) => {
      return (<HighchartsStockChart>
        <Chart zoomType="x" onAddSeries={addSeries}/>

        <Title>Highstocks Example</Title>

        <XAxis>
          <XAxis.Title>Time</XAxis.Title>
        </XAxis>

        <YAxis>
          <YAxis.Title>Price</YAxis.Title>
          <AreaSplineSeries id="profit" name="Profit" data={[1,2,3,4]}/>
        </YAxis>

        <Navigator>
          <Navigator.Series seriesId="profit"/>
          <Navigator.Series seriesId="twitter"/>
        </Navigator>
      </HighchartsStockChart>);
    };
    const WithComponent = withHighcharts(Component, Highcharts);
    const renderedChart = renderIntoDocument(<WithComponent />);
  });
});

So it should be possible to trigger regressions and changes in real highcharts code.

Wow, excellent work on this! 😮💯
I agree we should add tests similar to your previous comment, as they would provide a level of integration tests that we currently don't have.

Also, enzyme seems to be lagging behind on support for react 16, so different type of testing might be needed for some components (Contexts for example).


Fix HTTPS

Each edge server is running under http instead of https. By default, every browser blocks MIXED CONTENT (HTTPS to http).
Will have to make each nginx edge server https unless there is a better solution to this.

LetsEncrypt doesn't allow wildcard certificates

How many servers are there?

The problem isn't about how many. The problem is if I add more servers to scale up for events.

done
https://github.com/TimIsOverpowered/AngelThump/commit/7802fc03f36b897f936f6d92a41947022baea5a9


cheatsheet

During our last course we got this feedback give table with file formats and tools (what for, what in, what out). I guess this is a general good idea which we can extend to a cheatsheet.

Hi @bgruening, @hexylena, @bebatut, I finished the first one cheatsheet based "Peaks and Genes tutorial" to imagine an example of how one might look like. Also, I added in the table link to every tool because of older versions I saw in the tools list In the end layout might be different. What do you think of it? https://github.com/millen2223/Galaxy-cheatsheets/blob/main/Peaks_and_Genes_cheatsheet/CheatSheet based on Peaks and Genes_last.pdf

Very cool @millen2223! We'll have to think how and where to integrate this into the GTN.

@hexylena Thank you a lot for your feedback!!

I added as I promised pptx and pdf versions :)

https://github.com/millen2223/Galaxy-cheatsheets/blob/main/Peaks_and_Genes_cheatsheet/Peaks_and_Genes_cheatsheet_last.pptx

https://github.com/millen2223/Galaxy-cheatsheets/blob/main/Peaks_and_Genes_cheatsheet/Peaks_and_Genes_cheatsheet_last.pdf

I was thinking about this again today because of a Teacher Training course I'm currently taking for my work. We have a lot of these "important things to remember" and I have the feeling a lot of them are essentially "definitions", we're defining a term (maybe a file format, maybe a process like 'assembly') and they feel a lot like flashcards somehow. It came up in the course to use flashcards to help students remember topics, so, maybe we should combine this somehow. We annotate tutorials (optionally!!) with Important Terms they should know, and from that at the end of the tutorial have some flash cards and a cheatsheet table.
Hey @millen2223 it seems the links are broken, is that expected? I wanted to compare what I was thinking to your implementation but it might be gone?

@hexylena I just changed visibility, please check it again

It is interesting what you wrote about, and I haven't seen flashcards for software or an environment though I used them multiple times to learn words or while preparing for an exam. I find them so good for conciseness and speed when revising a topic as a game. As for me, remembering flashcards on the computer or phone will be easier for a student than a cheat sheet. On the other hand, a cheat sheet, on the other hand, is more visible because then you can access all definitions when searching for a term that you have forgotten. By the way, I often made a quiz, closing one side of the list and writing term definitions on the other, and then checking definitions I got incorrectly. This type helps to run through the paper fast and improve weak points... Maybe a checklist with flashcards of terms would be good? I will be glad to support any ideas @hexylena please say if something else comes to mind.

Both is an option! It's great to hear that you used something like that when you were learning, so if we can offer this data in a structured way maybe we can have all of the above automatically generated/updated. I wonder what's the easiest way to annotate this data in tutorials, maybe just tutorial metadata like we do with the abbreviations. There we could define something like
key_tools:
  - title: UCSC Main
    description: retrieve and export data from the Genome Browser annotation track database
    input: |
	  In a table browser select dataset, define region
	  of interest (genome | position + identifiers) then
	  retrieve or display the data
    output: |
	  File type as a plain textplain text - data is in ASCII
	  format, or as *.*.gzip gzip compressed archive
	  format for Linux/Unix ![](../images...)
    example: |
	  Retrieve list of genes of an
	  animals, viruses, insects for i.e.
	  mice etc.

and then from that generate the flashcards (there's several open standards we can use), cheatsheet, etc?
What do you think @bebatut is it better if it's in the tutorial metadata than inline in the tutorial? Or should this be a global file in the GTN with quick descriptions of the tools, and then the header metadata could be
key_tools: [ucsc_main, grep1, cut]

and we do the same.

I think we have a couple categories of this type of information that students might want to study, key_tools, key_terms (what is 'mapping'? general, unstructured definitions), and maybe also the abbreviations we have defined. For key tools the data is very general, I could definitely see keeping a single source of that for all of the GTN.
For the key terms it might make sense to annotate on the tutorial the term/definition in a special box or so? That way we keep the definition close to its use and we can show a nice box directly where the term is used defining that term?


[docs] migration

Document the following:

[ ] migration requirements
[ ] migration preparations
[ ] migration
[ ] rollback

might be worthwhile to also document these settings?
https://github.com/SovereignCloudStack/rookify/blob/main/config.example.yaml

udpated README here

started with docs here:
https://github.com/SovereignCloudStack/rookify/pull/72https://github.com/SovereignCloudStack/rookify/pull/72

Issue in the OSISM repository is ready to be merged. Let's close this one in favor of the OSISM one.


Improved entity type generation

type-writer is currently using a JSON object being written to the dynamic.d.ts file as the information source powering entity definitions. This doesn't work great, and there isn't many paths forward for a simple JSON.stringify based approach to improve with. The current structure of the data works great, but the various properties and attributes need a secondary processing step. This should produce a structure in the end that conforms to the same general rules as the current object, but contains real types
Rough set of changes:

take current data structure, and work with typescript factory functions to quickly convert to AST as a starting point
set up a general processing pipeline for different workflows to come in and traverse the AST, making modifications to the types

change type for state on switches/binary_sensors to: "on" | "off" | "unavailable", for example
do pre-processing on items such as supported_features, to allow easy feature flag checks by typescript

print out completed node in place of current json. No changes to existing utility types should be required

This could possibly include an "extended information" mode, where entity history is looked up and used to form more complete type definitions

Restructuring to always assume entities area available in type definitions. Unhappy path can be a separate enhancement at a future date if it ever becomes a need


Speed up TESS data product searches by a factor 10x

Issue: one of our beloved users (@dfm) pointed out to me that searches for TESS light curve and target pixel files have become incredibly slow.
Cause: a huge number of TESS FFIs records now exist in the MAST Portal database. Whenever someone calls search_lightcurvefile or search_targetpixelfile, Lightkurve unnecessarily downloads all the FFI records for the requested target before filtering them out locally.
Solution: we need to make sure we specify dataproduct_type=['cube', 'timeseries'] as a parameter in our calls to astroquery.mast.Observations.query_criteria(). This prevents FFI records from being returned (they have dataproduct_type='image').
This PR makes this change.  The speed up is pretty incredible.  For example, search_lightcurvefile("Pi Men") now takes 2 seconds instead of 2 minutes.
Before:

After:

@dfm The speed-up has been released as part of Lightkurve v1.9.1 last night.  Upgrading will help your code!


Reverse normalizing nan in the GpuSortArray

Signed-off-by: remzi<EMAIL_ADDRESS>Close #6588

build

Thank you for reviewing @ttnghia


mongolite rPackage

Issue description
Installing mongolite rPackage fails
Steps to reproduce
Create a default.nix:
with import <nixpkgs> {};
let
  R-stuff = rWrapper.override{ packages = with rPackages; [ mongolite ]; };
in stdenv.mkDerivation {
  name = "rtest";
  buildInputs = [ R-stuff ];
}

and nix-shell.
* installing *source* package 'mongolite' ...
** package 'mongolite' successfully unpacked and MD5 sums checked
Using PKG_CFLAGS=
Using PKG_LIBS=-lssl -lcrypto -lsasl2 -lresolv
** help
*** installing help indices
** building package indices
** testing if installed package can be loaded
------------------------- ANTICONF ERROR ---------------------------
Configuration failed because openssl/sasl was not found. Try installing:
 * deb: libssl-dev, libsasl2-dev (Debian, Ubuntu, etc)
 * rpm: openssl-devel, cyrus-sasl-devel (Fedora, CentOS, RHEL)
 * csw: libssl_dev, sasl_dev (Solaris)
 * brew: openssl (Mac OSX)
If openssl is already installed, check that 'pkg-config' is in your
PATH and PKG_CONFIG_PATH contains a openssl.pc file. If pkg-config
is unavailable you can set INCLUDE_DIR and LIB_DIR manually via:
R CMD INSTALL --configure-vars='INCLUDE_DIR=... LIB_DIR=...'
--------------------------------------------------------------------
ERROR: configuration failed for package 'mongolite'

Technical details

system: "x86_64-linux"
host os: Linux 4.14.62, NixOS, 18.03.133126.4df3426f5a5 (Impala)
multi-user?: yes
sandbox: no
version: nix-env (Nix) 2.0.4
channels(root): "nixos-18.03.133126.4df3426f5a5, nixos-unstable-18.09pre143771.a8c71037e04"
nixpkgs: /nix/var/nix/profiles/per-user/root/channels/nixos/nixpkgs

This has been resolved by 028e67abced1a1609fa336c7e5489ed7058909f1.


A training bug in network_exp_msg_chn.py?

Hi,
Please correct me if I'm wrong. I find that there seems to have a bug in the training code.
Line 137 in trainers/DepthTrainer.py, the network takes 3 inputs. However, Line 182 in workspace/exp_msg_chn/network_exp_msg_chn.py specifies that the network only takes two arguments as the input. In this case, which C should we use? Shall we use C from input or C computed in Line 183?
Thanks

Hi @yzhao520, thank you for pointing out this bug for me. The msg_chn network just takes 2 arguments as the input. C in Line 183 and C from the dataloader are identical. I just fixed the bug in '''trainers/DepthTrainer.py'''.

Hi @yzhao520, thank you for pointing out this bug for me. The msg_chn network just takes two arguments as input. C computed in Line 183 and C from the dataloader are identical. I just fixed the bug in trainers/DepthTrainer.py.

Thanks for your reply! Closing this issue now.


Create different examples of pages under website

Bakery inspired by this theme: https://images.unsplash.com/photo-1577133165246-c3862448dd65?ixlib=rb-1.2.1&ixid=eyJhcHBfaWQiOjEyMDd9&auto=format&fit=crop&w=934&q=80

Created 2 examples within the main webpage + method to make creating examples with site settings easier using hacked layouts.


Go to definition cannot work as expected

Here is the case:
var x = {
    "abc": function () {
        return 1;
    },
    "def": function () {
        this.abc(); //cannot go to definition
    }
};

This function works well in sublime

The issue is not go-to-def. the issue is that the type of  this is any in an object literal by default. the rational here is object literals are passed around as property bags, and can be accessed with different this arguments.
If you are running with TS 2.3 or later, we have a change only under --noImplicitThis that allows for a stricter type of this in object literals among other things. go to def should work as expected under this flag.

@mhegazy Thanks for your explanation. It works after I added the parameter. But I meet the same problem when I put the object as parameter:
Child.extend("Paraent", {
    "abc": function () {
        return 1;
    },
    "def": function () {
        this.abc(); //cannot go to definition
    }
});

how is Parent.extend defined?

I don't think it's quite related to the function definition. But  you can take jQuery extend function as reference.
jQuery.extend({
    "abc": function () {
        return 1;
    },
    "def": function () {
        this.abc(); //cannot go to definition - the type of this is any
    }
});

JQuery.extend is defined with target : any; this pushes a contextual type of any for the function, and thus the this parameter.
if it was defined using generics instead:
declare function extend<T>(target: T): any;

you would get your this type correctly under --noImplicitThis.
You can take this one step further and make the type of this the combination of all the object literal properties using ThisType<T>, so:

declare function extend<T, U, V>(target: T & ThisType<T & U & V>, object1: U & ThisType<T & U & V>, object2: V & ThisType<T & U & V>): any;

extend({
        "abc": function () {
            return 1;
        },
        "def": function () {
            this.abc(); // OK
        }
    },
    {
        "another": function () {
            this.def(); // OK
         }
    },
    {
        "yetAnother": function () {
            this.another(); // OK
         }
    });

you can find more info about the use of ThisType in https://github.com/Microsoft/TypeScript/pull/14141

Actually, I just want to use Visual Studio Code to develop in JavaScript, which is is using TypeScript as JS compiler. But I cannot use "declare function ..." in JS code.
Seems it too complex for me to achieve the "Go to definition" function works like sublime.
Anyway, thank you very much. @mhegazy

Where is extends comming from? VSCode gets your declarations form an @types package, so updating it should do the trick without you having to change your code.

Extends is one of functions in my JS library. Here is only a example. I don't think I can add all the functions declaration manually.

This issue seems to have been already addressed or is unactionable at the moment. I am auto-closing it for now.


conanfile.txt

This moves the hardcoded dependencies from Conan.cmake to the conanfile.txt.
This has many benefits:

this is the standard way of keeping track of the deps.
allows using the tools for automatic bumping, etc (they work on conanfile.txt).

Also supersedes https://github.com/lefticus/cpp_starter_project/pull/63

Just to verify - the Requires block and the conan_file block can coexist? I tend to put the dependencies inside of the CMakeLists so it's easy to make them optional depending on the build options chose.

@lefticus It seems to work, but apparently this is not supported officially.
I have created a couple of issues to track this.
https://github.com/conan-io/cmake-conan/issues/235
https://github.com/conan-io/cmake-conan/issues/236
https://github.com/conan-io/conan/issues/7068

I've been using what I have in this PR for a while, and I haven't had any issues. I prefer one single file to manage the dependencies.

I just pulled this branch and tried to build the IMGUI example, using Conan version 1.34.0. CMake gives me this error message during configuration:
CMake Error at src/imgui/CMakeLists.txt:2 (add_executable):
  Target "test_imgui" links to target "CONAN_PKG::imgui-sfml" but the target
  was not found.  Perhaps a find_package() call is missing for an IMPORTED
  target, or an ALIAS target is missing?

When I add imgui-sfml/2.1@bincrafters/stable to conanfile.txt, it builds just fine. Perhaps the Conan devs explicitly removed the ability to mix REQUIRES with CONANFILE?
I know this used to work, but have you tried it recently?

I haven't updated my Conan recently, but the CI passes. Maybe, we should build one of the optional libs in the CI to make sure it works.

The CI doesn't test any of the GUI examples, but I agree that it should.

Closing in favor of #126


Add some minimal documentation about pfsync interfaces to README.md

The subject says all. I was looking into configuring a PF/CARP firewall cluster, and was wondering about pfsync. This is to prevent me to do the same again in the future ;)

Excellent, thanks!  Did you get the cluster working?

generally, the cluster works.
However, there is one drawback. Interfaces, that have parent interfaces, i.e. trunks, vlans, carp etc. the module doesn't care about the order, so that for example a carp interface might be created, and started up, before the underlying vlan interface, or trunk interface is setup.
Don't know if the module can/should do something about it via 'autorequire' in bsd_interface maybe?

I'd like to continue making improvements to the bsd_interface type, so I think some autorequire could help here.


Granger causality tutorial notebook

I have implemented the GC tutorial notebook focusing on pairwise and conditional causality methods. Please feel free to suggest changes and additions.

Coverage remained the same at 90.252% when pulling 8733d83ce973418d7dd7a7331541c3771c9b191d on INM-6:feature/ar_granger_tutorial into 25d4b1e5fdab386901beb947a87582c8704f1924 on NeuralEnsemble:master.

There is an issue with the diagram plot (check the built doc, link will be posted later), that is circles are (partially or completely) invisible. I'm thinking about whether we should create a folder with such images for additional materials. For now, just fix the diagram.
A description that the direct and indirect non-zero causality values are expected at the end of the tutorial is missing. Probably, you wanted to show that in this case a non-zero value is expected (but the value itself does not matter unless we want to compare it with another causality value).

There is an issue with the diagram plot (check the built doc, link will be posted later), that is circles are (partially or completely) invisible. I'm thinking about whether we should create a folder with such images for additional materials. For now, just fix the diagram.
A description that the direct and indirect non-zero causality values are expected at the end of the tutorial is missing. Probably, you wanted to show that in this case a non-zero value is expected (but the value itself does not matter unless we want to compare it with another causality value).


Is there a get_batch(indices) method + custom collate function?

Hi everyone, I am wondering if it is possible for a user to create a custom batch of images with ffcv's speed.

Specifically I would like to know if there is something like get_batch(indices) that creates a batch from the input indices that is a method of ffcv.loader.Loader. The reason why I would like this is because I need an infinite random sampler - aka, if I have a dataset of 5000 images, I need to create batches of 100 images by random selection and an image can be drawn multiple times

Additionally, is there a way a batch of images can also contain other relevant information? I am wondering because it would be ideal if the batch could be a python dictionary with keys such as ['image', 'index'] where batch['image'] returns a list of tensors or something similar (as my images are not the same size) and batch['index'] returns the dataset index of each image.

I am assuming perhaps this is possible, you just write a custom pytorch dataset with these properties and then write it to the FFCV dataset format with a ffcv.writer.DatasetWriter?

Hi! The first feature (get_batch(indices)) is unfortunately not supported, but you can create a loader from a specific set of indices, so if the overhead isn't too big you can create a loader with one batch from those indices and iterate through that loader.
For the second question, this is very easy! You can indeed just create a PyTorch dataloader that serves indices and write that to a beton. If that's too expensive, you can design a custom transform to do this, for example see here: https://github.com/libffcv/ffcv/blob/3a12966b3afe3a81733a732e633317d747bfaac7/examples/docs_examples/transform_with_inds.py or the docs here: https://docs.ffcv.io/ffcv_examples/transform_with_inds.html


any possibility to add vp9 and opus ?

I made some extensive tests for a project that involves encoding and decoding with webcodecs, and I need it to work on mobile phones. the mp4a codec is not yet supported on android chrome so using opus is the only option.
I've tried muxing vp9 and opus and it works nicely with webm-muxer, but I can't demux the output of webm-muxer with jswebm. jswebm fails for most webm videos (track data element not found, invalid file size, Invalid Seek Formatting, etc) I've been trying, but works for the big bad bunny demo video. project has not been updated since a while and I couldn't find a better option.
I don't know how hard it would be to add support for vp9 and opus to mp4-muxer. it would be a nice addition so along with mp4box, it would cover all webcodec needs.
the following reference show vp9 and opus are valid codecs for mp4 :
https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Video_codecs
https://developer.mozilla.org/en-US/docs/Web/Media/Formats/Audio_codecs
I will meanwhile craft a mp4 with vp9 and opus to check if it can be demuxed correctly with mp4box
regards,

Interesting! First of all, I'm surprised that you say MP4A isn't widely supported. It's AAC, and that has absolute crazy support since it's used in like almost every MP4 file ever.
But, good to know MP4 supports VP9. I mean, it does make sense, MP4 has a very general format, but AVC (and maybe HEVC) is definitely the biggie here when it comes to codecs. The MDN page even says that AV1 works with MP4, which we could also try.
I don't think adding VP9 and Opus support to this library should be too hard; all I'll need for that is a sample MP4-with-VP9-and-Opus file so I can see which blocks are being used. Do you have any of those around? And, while we're at it, do you have one with AV1?
Also a shame to see that jswebm doesn't seem to understand my WebM files. That stuff always confuses me since either this is a jswebm bug, or the files I'm creating are malformed. However, my WebM files seem to play pretty well pretty much everywhere, and MKVToolNix has no trouble reading them.

I crafted two sample video files with ffmpeg :
https://keny.toys/tmp/testvp9opus.mp4
https://keny.toys/tmp/testav1opus.mp4
I read somewhere there's a milestone set for android aac support in webcodec for chrome 118. I hope they can add it.
AV1 is available in webcodecs on android and desktop but it just crashes the browser when I try it.

Got around to implementing the new codecs - a new version's out. Would be awesome if you could play with it a bit :)

great will try to implement it next week and at least make a desktop test. ty !

did some first test. I managed to get a working video with vp9 and opus from webcodecs chunks. it plays fine with chrome but can't decode it with mp4box. I have the following :
mp4box.all.js:589  Uncaught (in promise) RangeError: Invalid typed array length: -4
at new Uint8Array ()
at DataStream.readUint8Array (mp4box.all.js:589:13)
at BoxParser.FullBox.parseDataAndRewind (mp4box.all.js:2548:21)
I'll try to dig in this when I can


Image Counter

would be nice to see the amount of images in each individual filter/view

Added in v1.5.7


Possible mistake in docs

Oruga version: 0.8.2
The duration prop doesn't get listed in Notification props, but in Notification Notice Component.
However I'm using oruga notification as follows:
oruga.notification.open({
			...config
		});

by passing a config like che class that follows and that includes the duration. The prop works perfectly fine:
export class ConfigNotification {
	duration?: number;
	message?: string;
	position?: string;
	icon?: string;
	closable?: boolean;
	animation?: string;
	variant?: DialogType;

	constructor(message?: string) {
		this.duration = 3000; // 3 seconds
		this.message = message ?? 'Elemento salvato con successo';
		this.position = 'bottom';
		this.icon = 'toast-success';
		this.closable = true;
		this.animation = 'fadeInUp';
		this.variant = DialogType.SUCCESS;
	}
}

is the doc missing the prop?

@Nemesis19 No, the docs are correct. The programmatic interface uses the NotificationNotice component, which is a wrapper around the normal Notification component.
Only the programmatic NotificationNotice component has the auto-close feature where the durationprop is used.
Does this helps?

I understand now, the wrapper uses the notification prop to make everything work with the original notification object props. Thanks


Add API functions tasks/rows refreshed (redrawn ...)

If I change the viewScale of the gantt chart, some tasks that were not there previously may be drawn (when going from month to year, for instance) or they may be removed (when going from year to month, for instance).
How can I know when the DOM nodes for the tasks have been rendered? I tried to check in a $timeout of 0 millis inside api.columns.on.generate, but that doesn't always work.

There should be some API event I think ... I'm not sure it's possible, but I add this in the backlog.

That will be useful - thanks!
Currently I'm using:
api.directives.on.new($scope, directiveName => {
  if (directiveName === 'ganttTask') doSomething()
})

Not sure if this is good enough.


Microsoft.ServiceFabric/clusters ?

Could you please specify- is this service fabric cluster really   "type": "Microsoft.ServiceFabric/clusters"?
if so, could you specify here or https://docs.microsoft.com/en-us/azure/azure-stack/user/azure-stack-develop-templates an API Versions

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

ID: 80a333ac-8208-4146-2d99-6b6258b64a3f
Version Independent ID: 553642a3-6125-062f-350e-2538e3401a5d
Content: Deploy a secured Service Fabric cluster in Azure Stack
Content Source: articles/azure-stack/user/azure-stack-solution-template-service-fabric-cluster.md
Service: azure-stack
GitHub Login: @mattbriggs
Microsoft Alias: mattbriggs

Thanks for the feedback! I have assigned the issue to the content author to evaluate and update as appropriate.

@SychevIgor Thanks for your note. I have a question out and should be able to update shortly. My contact is at Ignite. #in-progress

@mattbriggs I already know an answer, but it will be nice to see it in a documentation.
Answer is "No, it's not Microsoft.ServiceFabric/clusters. It's Virtual Machine Scale Set with pre installed software using DSC"


Lbaker/zanecodes connection user

Description
This change allows Chef to optionally use a different username for establishing database connections than is used within database queries. This is necessary when using Azure PostgreSQL as an external database.
We would like to thank https://github.com/zanecodes for their contributions to this effort.
Issues Resolved
#1559
Task Outline

[X] Conduct preliminary investigation and testing, identify what is broken and where.
[X] Procure Azure account and access.
[X] Investigate Azure VM and database setup.
[X] Setup development environment to make it conducive for this and future Azure work.
[X] Investigate configuration settings.
[X] Fix issues identified in preliminary investigation.  In particular:
Fix chef-server-ctl psql... connection to use username@hostname format.
Fix psql: FATAL:  password authentication failed for user ... for internal postgresql setup.
Change URI format in make_connection_string to create a correctly parseable connection URI (bad URI error in external azure postgresql setup).
[X] Add sql_connection_user attribute for each service to permit a different username to be used for DB connection vs DB queries.
[X] Replace uses of sql_user and db_superuser for establishing PostgreSQL connections with corresponding connection_user attribute.
[X] Fix private-chef preflight postgres checks to allow Azure-specific error.
[X] Update chef-server-ctl to support differing connection and database user names.
[X] Add ChefSpec test for Azure PostgreSQL connection validation.
[x] Conduct 'final pass' testing for particular chef-server setups (internal postgresql, external postgresql, external postgresql on Azure, SSL=on and SSL=off modes).
[x] Generate user documentation.
https://github.com/chef/chef-web-docs/blob/lbakerchef/server_overview1/chef_master/source/server_overview.rst.
[x] Investigate adding sql_ro_connection_user (see 'Tasks Remaining...' below)
[x] Verify pipeline green
https://buildkite.com/chef/chef-chef-server-master-verify/builds/586
[x] adhoc pipeline green
https://buildkite.com/chef/chef-chef-server-master-omnibus-adhoc/builds/541#2abd23f0-104e-41ac-bc65-3a3efde6e50b
[x] Local build
[x] Speak with Natham Hames and/or Will Fisher regarding use cases in chef-server-ctl psql ...
[x] Make whatever changes after doing step #1
[x] Place documentation in Vagrantfile or other regarding dev env changes and usage
[x] Test Tiered without ssl (not with External/Azure enabled) - thanks @christopher-snapp
[x] Test HA (with chef-backend, External/Azure not enabled)

Preliminary Investigation
Build/Install
Kitchen + Ad hoc builds: YES
Local install: YES
Internal PostgreSQL
chef-server-ctl reconfigure PASSES
chef-server-ctl test SSL=off PASSES
chef-server-ctl test SSL=on N/A (SSL Internal PostgreSQL incomplete)
chef-server-ctl psql ... FAILS FIXED
External PostgreSQL
chef-server-ctl reconfigure PASSES
chef-server-ctl test SSL=off PASSES
chef-server-ctl test SSL=on PASSES
chef-server-ctl psql ... FAILS FIXED
External Azure PostgreSQL
investigate deployment/setup/config:  DONE
chef-server-ctl reconfigure FAILS FIXED
chef-server-ctl test SSL=off FAILS FIXED
chef-server-ctl test SSL=on FAILS FIXED
chef-server-ctl psql ... FAILS FIXED
various connections failing  FIXED
Configuration Settings Investigation
Completed
Dev Environment Modifications
Completed
Final Pass
internal postgres ssl=off
chef-server-ctl reconfigure PASSED
chef-server-ctl test PASSED
chef-server-ctl psql ... PASSED
chef-server-ctl status PASSED
chef-server-ctl list-server-admins PASSED
chef-server-ctl cleanup-bifrost PASSED
external postgres ssl=off
chef-server-ctl reconfigure PASSED
chef-server-ctl test PASSED
chef-server-ctl psql ... PASSED
chef-server-ctl status PASSED
chef-server-ctl list-server-admins PASSED
chef-server-ctl cleanup-bifrost PASSED
external postgres ssl=on
chef-server-ctl reconfigure PASSED
chef-server-ctl test PASSED
chef-server-ctl psql ... PASSED
chef-server-ctl status PASSED
chef-server-ctl list-server-admins PASSED
chef-server-ctl cleanup-bifrost PASSED
external postgres azure local chef-server ssl=off
chef-server-ctl reconfigure PASSED
chef-server-ctl test PASSED
chef-server-ctl psql ... PASSED
chef-server-ctl status PASSED
chef-server-ctl list-server-admins PASSED
chef-server-ctl cleanup-bifrost PASSED
external postgres azure local chef-server ssl=on
chef-server-ctl reconfigure PASSED
chef-server-ctl test PASSED
chef-server-ctl psql ... PASSED
chef-server-ctl status PASSED
chef-server-ctl list-server-admins PASSED
chef-server-ctl cleanup-bifrost PASSED
User Manual / Instructions
Finished

https://buildkite.com/chef/chef-chef-server-master-verify/builds/418

https://buildkite.com/chef/chef-chef-server-master-verify/builds/418

Re: QUESTION: Do we need to test HA and Tiered setups?
Not with Azure external sql option on; we don't support those topologies with Azure. We should of course make sure that we've not broken those topologies in the default case w/o these changes.

https://buildkite.com/chef/chef-chef-server-master-omnibus-adhoc/builds/622#19bfab64-6214-459e-947b-bfd8e3d91226

I've run the omnibus-tiered-fresh-install terraform scenario successfully against this branch after doing some of my own testing against an Azure instance.

@christopher-snapp That's awesome news!
@lbakerchef  What remains to be done to get this merged in?

Thanks.

https://github.com/chef/chef-backend/commit/7a065c0a0b4afffad6437a2c02cc5217d484a6a5 builds https://buildkite.com/chef/chef-chef-backend-master-omnibus-release/builds/14#fd42ff74-9d2d-49fa-a201-a81d34e32c67 This tests the latest chef-backend with a package containing changes from this PR. Compat with check-backend looks good!

latest testing of the psql fix, local chef-server, azure postgresql:
root@api:~# chef-server-ctl psql opscode_chef
psql (9.6.15)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.

opscode_chef=> \q
root@api:~# chef-server-ctl psql opscode_chef --as-admin
psql (9.6.15)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.

opscode_chef=> \q
root@api:~# chef-server-ctl psql opscode_chef --write
psql (9.6.15)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.

opscode_chef=> \q
root@api:~# chef-server-ctl psql opscode_chef --debug
Host: pr1729.postgres.database.azure.com
Port: 5432
Username<EMAIL_ADDRESS>Password: a05e2f221c01783e30b9f354c2d90d12455a6799eb659bf404bc315d1e36
DBName: opscode_chef
psql (9.6.15)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.

opscode_chef=> \q
root@api:~# chef-server-ctl psql opscode_chef --debug --as-admin
Host: pr1729.postgres.database.azure.com
Port: 5432
Username<EMAIL_ADDRESS>Password: Iluvd3v0ps!
DBName: opscode_chef
psql (9.6.15)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.

opscode_chef=> \q
root@api:~# chef-server-ctl psql opscode_chef --debug --write
Host: pr1729.postgres.database.azure.com
Port: 5432
Username<EMAIL_ADDRESS>Password: 9372ddcbb09ba3c43fb2a5d56d94efcb813a71fc37a0d11b756ddb593857
DBName: opscode_chef
psql (9.6.15)
SSL connection (protocol: TLSv1.2, cipher: ECDHE-RSA-AES256-GCM-SHA384, bits: 256, compression: off)
Type "help" for help.

opscode_chef=> \q

@PrajaktaPurohit @markan it looks like we're moving along pretty nicely here, any ETA on when these changes will be merged?

@danielcbright we did find some issues due to which these changes were not included in the recent release. We have pushed up some fixes for those. The new changes are in the process of being tested. We are actively working on getting these changes merged.
My apologies for the delay in getting them in.

I 'foxed the box' or 'tricked out' the chef-server into thinking it was talking to an Azure PostgreSQL, when in reality it was talking to various locally-installed PostgreSQL scenarios.  I did this to try to tease-out whether errors might be coming from Azure or test environments vs. something in the code itself.  No errors.  Here's a crude diagram explaining what I did, and some text of a report.

$ chef-server-ctl test -J pedant.xml --all --compliance-proxy-tests

[SNIP]

Finished in 19 minutes 9 seconds (files took 3.54 seconds to load)
5177 examples, 0 failures, 132 pending

[2019-12-16 19:55:32] INFO  going to shutdown ...
[2019-12-16 19:55:32] INFO  WEBrick::HTTPServer#start done.
root@api:~#

current rebased branch is: lbaker/zanecodes-connection-user-final

Tested these changes with:

External postgres in Azure using Postgres as a service in Azure (with ssl enabled and disabled)
External postgres in Azure using another machine with postgres installed on Azure
Chef-backend
Chef-infra-server tiered install
External postgres in aws (with ssl enabled and disabled)
Ensured chef-server-ctl psql commands are working as expected
And they all look good.


The runtime parameter of python3.7 is no longer supported

Hello,
I am trying to use the project for Forwarding TCP ports over SSH tunnel.
I am trying to deploy the section IAM SSM Setup
While running the command:
cdk -a "$APP" deploy SSH-IAM-SSM-Stack \
  -c sagemaker_role="$SAGEMAKER_ROLE_ARN" \
  -c user_role="$USER_ROLE_ARN"

I am getting the following error L:
6:02:16 PM | CREATE_FAILED        | AWS::Lambda::Function   | TrustRelationshipLambdaTrigger562CEAC4
Resource handler returned message: "The runtime parameter of python3.7 is no longer supported for creating or updating AWS Lambda functions. We recommend you use
the new runtime (python3.12) while creating or updating functions.

Is there a workaround to avoid this issue ?
Regards
Clement

Hi, @clementrey-dev , thank you for pointing this out. It will be fixed in the new release, I'm working on it now.

Hi @ivan-khvostishkov, I also got blocked by this issue. Is there any update on the fix?
Is the only alternative the manual steps given here?

@ivan-khvostishkov I followed the manual steps given in the doc, but unfortunately it did not work for me as far as I could tell. I am not able to see the sagemaker instances on SSM console under Systems Manager/Fleet Manager/Managed nodes. I am also not able to see the instances with
➜ sm-ssh list
SageMaker SSH Helper v2.2.0
Listing SageMaker instances for sagemaker
  Region: us-west-2
  Type: all
  FQDN: sagemaker

Neither with
➜ aws sagemaker list-notebook-instances
{
    "NotebookInstances": []
}

Can you please confirm that the manual steps given in the doc are up-to-date and valid?

Hi team, I produced a fix for the automated CDK + Cloud9 way. Request to please review once you have a chance to do so.
Thanks team,
Rohan

Hi @ivan-khvostishkov can you please look into the PR please? it's been open for two weeks so gentle reminder.

Fixed and released in v2.2.1


Cannot clean unknown queue type 1000

error in bullMQ.ts:27
public async clean(jobStatus: JobCleanStatus, graceTimeMs: number): Promise {
await this.queue.clean(graceTimeMs, 1000, jobStatus);
}
need
public async clean(jobStatus: JobCleanStatus, graceTimeMs: number): Promise {
await this.queue.clean(graceTimeMs, jobStatus, 1000);
}

Can you elaborate? I'm not sure how can I reproduce your issue.

Do you use bull or bullmq? Check that you are using the correct bull /bullmq adapter

?

Yes, I used bull and bullmqadapter. That's my fault. Thank you!

I have to add a check for that... recently there are many cases like this.


Changes around Classification and Sensitivity Labels

Type

[X] Bug Fix
[X] New Feature
[ ] Sample

Related Issues?
N/A
What is in this Pull Request ?
Went through the entire situation around Site Classification and Sensitivity Labels and rewrote it.

@KoenZomers  - Some of these cmdlets are missing [RequiredMinimalApiPermissions("InformationProtectionPolicy.Read.All")], is it by design ??

@gautamdsheth Yes. Mainly because of how this has been developed within PnP. As we may execute these cmdlets using a delegate and an app only token, it would require different permissions for either of them. If we specify that attribute, it will error out if we use the other one since it will be missing from the scp in our access token. We would need something where we can specify if it works for delegate tokens and app only tokens. Fairly easy to implement and I believe it was like this originally but at one point Erwin decided to simplify the permissions leaving just this.