Access

I have been getting unsolicited phone calls from 1<PHONE_NUMBER> that states it is from Microsoft.  Since I did not recognize the number or know that I had any pending issues, I blocked the number as I do any number that appears to be a nuisance.  If this blocked a legitimate number I need to access my MLMIC account, please re-establish contact; I do need access.

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

ID: 276c38fe-aa72-6afa-23d8-14ff206c6f50
Version Independent ID: 9ffe59dd-c667-4802-1da0-6917638804c5
Content: Troubleshoot two-step verification - Azure Active Directory
Content Source: articles/active-directory/user-help/multi-factor-authentication-end-user-troubleshoot.md
Service: active-directory
GitHub Login: @eross-msft
Microsoft Alias: lizross

@hmg1 Thank you for your query . We will investigate and update this thread.

@hmg1 This would be one of the numbers from which MFA related calls get initiated from our side. I have faced this same problem once but later I found that while testing some MFA i had created multiple  test users not just in my Office365 lab but within other tenants with my colleagues and that caused the call to get generated whenever someone else was using those test accounts. Because my phone number was listed there. Once I got rid of the test user accounts in my lab azure AD instance , it solved the problem. Could you please check the same in all the azure AD tenants that you work with ?
Please use this article to install azure AD Powershell on any windows 10 machine and use the cmdlet connect-AzureAD to connect to Azure AD instance you would like to search.
You can used the following command prompt to search for all users with your phone number listed within any of the attributes.
Get-AzureADUser -SearchString "<your phone number>"
Hope the query helps you find out the users where you had set your phone number.

@hmg1 Please let us know in case you were able to follow the instructions. As for the details on MLMIC account , it may be a Microsoft account but I am not specifcally aware of it . If your MLMIC account have 2 factor authentication enabled and within 2FA if phone call verification is the method specified then you may get a call from this number. Its a host of multiple numbers from where you can get the verification call .  So I believe that if you do not get a call while logging to your MLMIC account then you may have the problem and may need to unblock it . I do not think you may have the problem in any other scenario.  Hope this clarifies everything.
We will close this issue for now . Should you further have any query feel free to tag me to your reply and we will be happy to help .
Thank you.

Thank you.  The MLMIC technical team solved the issue and I have the
access I need.
Henry
On Fri, Mar 29, 2019 at 7:27 AM ShashiShailaj-MSFT
<EMAIL_ADDRESS>wrote:

@hmg1 Please let us know in case you were able to follow the instructions. As for the details on MLMIC account , it may be a Microsoft account but I am not specifcally aware of it . If your MLMIC account have 2 factor authentication enabled and within 2FA if phone call verification is the method specified then you may get a call from this number. Its a host of multiple numbers from where you can get the verification call . So I believe that if you do not get a call while logging to your MLMIC account then you may have the problem and may need to unblock it . I do not think you may have the problem in any other scenario. Hope this clarifies everything.
We will close this issue for now . Should you further have any query feel free to tag me to your reply and we will be happy to help .
Thank you.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

--
Henry Greenberg, MD
Special Lecturer
Department of Epidemiology
Mailman School of Public Health
Institute of Human Nutrition
College of Physicians
Columbia, University


[3161] Trainee start date row - record view

Context
https://trello.com/c/3DnYjTL4/3161-trainee-start-date-row-record-view
Changes proposed in this pull request

Updated RecordDetails component to dynamically set trainee start date row

Guidance to review

Non-draft Trainee record details page.

 Trainee start date row - record view


Improve oc.WaitCondition

make failures easier to debug by logging the output of oc describe after the oc wait command fails
log "Wait for condition..." instead of low-level shell.Execute failures

Really cool to have the describe to give more information in failures :)

Yeah, we may also want to add a oc get pods and oc get rs to WaitSMCPReady(), since the oc describe SMCP only shows that it's waiting for a component to be ready. It doesn't actually show why the component isn't ready.

oops, closed by mistake.

Oh, and we should add a similar oc describe thing (and others) to WaitDeploymentRolloutComplete

And maybe oc logs after a failed oc.WaitPodReady. We do have this information in the must-gather, but maybe having at least the last few lines of oc logs in the test log would cover 90% of the cases.

@luksa going to open a task to add that :) to those functions, useful information to make a first approach when something fail


Example for training a BERT model from scratch using new data without using pre-trained weights

Hi,
The library looks great. I'm trying to use BERT for biological sequence tasks so I cannot use the pre-trained models with language data. Could you provide an example to show how to train a BERT model from scratch using new data without using any pre-trained weights?
Thank you in advance.
Bo

I would love to see this too, I need to pretrain for a different task and an example would be great!


[VisUI] Input cursor blinking with non continuous rendering

I recently started to develop new skin for desktop app optimized for non continuous rendering behavior and noticed that VisTextField's input cursor is not blinking. I shortly found the code under VisTextField#blink() that omits timer logic for that case.
It was actually a quite obvious solution to me and I would go the same way, but this was before I really get in touch with the widget and eventually find out it is little hard to spot the cursor position when it isn't animated at all. I had have an idea to offer to implement some sort of a middle case, when user decides if cursor should blink during non continuous rendering state. But few moments later I thought about how rare this blink really happens and also it only appears when field is selected. So maybe would be better to drop those lines
if (!Gdx.graphics.isContinuousRendering()) {
    cursorOn = true;
    return;
}

and just call Gdx.graphics.requestRendering() when the blink triggers?
What do you think?

This bit comes from libGDX and I haven't really used non continuous rendering. You should probably also report it in libgdx repo.
That said I think cursor blinking is essential even when using non continuous rendering to save resources. It should just blink normally in that mode. Do you want to make PR for this change?

Oh, you're right, I didn't think it could have come from the original LibGDX code. I made PR and opened issue for the LibGDX repo and only than suddenly realized that blink() calls from the render() and to solve this we should go by other approach.
I see Timer as a best candidate to solve this, but no sure if it's safe enough to use with Scene2d.
I saw that you use Timer for ToastManager and that should generally works fine, just require a little more checks due to Timer callbacks are not bound to actor lifecycle and may be called after host is already removed from the stage.

libgdx is using Timer.schedule in TextField for repeating keys, in TooltipManager (which was added after VisUI tooltips so it's different implementation) and in DragScrollListener. I would say it's pretty safe to use in scene2d.

Alright, so I'm going to fix this with Timer then and make PR

@kotcrab please have a look at https://github.com/libgdx/libgdx/pull/5027
If that's fine with you, I can prepare same PR for VisUI

I think we can skip this for the next LibGDX release, because Nate modified Timer and made this properly.

Alright, if you think this is not required right now we can wait for next libGDX release.


Unused imports

Codecov Report

Merging #38 (cbbf353) into main (563d12a) will increase coverage by 1.46%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main      #38      +/-   ##
==========================================
+ Coverage   92.29%   93.75%   +1.46%
==========================================
  Files           7        7
  Lines        1375     1313      -62
  Branches      202      194       -8
==========================================
- Hits         1269     1231      -38
+ Misses        105       81      -24
  Partials        1        1

Impacted Files
Coverage Δ

src/collection.ts
90.14% <100.00%> (+5.71%)
:arrow_up:

src/session.ts
96.36% <100.00%> (-0.13%)
:arrow_down:

src/utility.ts
99.00% <100.00%> (-0.34%)
:arrow_down:

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 563d12a...cbbf353. Read the comment docs.


chore(package): update body-parser to version 1.16.1

https://greenkeeper.io/

Codecov Report

Merging #227 into master will decrease coverage by -0.1%.
The diff coverage is n/a.

@@            Coverage Diff            @@
##           master     #227     +/-   ##
=========================================
- Coverage   84.51%   84.42%   -0.1%
=========================================
  Files          17       17
  Lines        1072     1072
  Branches      179      179
=========================================
- Hits          906      905      -1
- Misses        166      167      +1

Impacted Files
Coverage Δ

src/worker/client.js
88.09% <ø> (-1.2%)
:x:

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 e581893...fd23d94. Read the comment docs.


Vickel: Watch (?-i:sabach90)(?#fiverr.com)

Vickel requests the watch of the watch_keyword (?-i:sabach90)(?#fiverr.com). See the MS search here and the Stack Exchange search in text, in URLs, and in code.

(?-i:sabach90)(?#fiverr.com) has been seen in 1 true positive, 0 false positives, and 0 NAAs.


spam cleaner

something to clean the spam someone left in all channels before leaving

implemented this before it seems, cleaners are not limited to members


How to remove tick icon just behind the "checkall" when user unchecks any item from the list

Hi ,
This is a great module . Thanks a lot first .
In my case when page loads first , all items are selected by default and now if user uncheck any item from the list the corresponding checkbox unchecks however the tick icon just on the side of "checkall" does not disappears.
I am looking for an option where if there is any unchecked item in the list ,  remove tick icon just behind the "checkall" .
This is an urgent need , Please help .
Regards
Manish Tiwari

There is currently no solution for that, if you still need this feature could you please comment. Otherwise I'll close this issue in 2 weeks


How to add multiple handlers

HI @rduldulao
I tried your sample code and I am trying to use multiple handlers.
Here is my make_app method
def make_app():       return Application(api_routes(), autoreload=False)     # return Application([     #     (r"/v1/foosh1", SampleHandler1),     #     (r"/v1/foosh2", SampleHandler2),
How to use api_routes() to work with multiple handlers?

Hi,
You just need to use the decorateor @restapi to all the handlers you're gonna include:  i.e.
`
@restapi(url='/v1/foosh1')
class SampleHandler1(RequestHandler):
. . .
@restapi(url='/v1/foosh2')
class SampleHandler2(RequestHandler):
. . .
`
The way we did it in our project though is IF you do not want to use the restapi decorator and use it as a func instead:
 def swirlify(base_path, path, handler):     """Convert path, handler"""     return path, restapi("/" + base_path + path)(handler)
routes = [
swirlify("", r"/v1/foosh1", SampleHandler1),
swirlify("", r"/v1/foosh2", SampleHandler2)
]
app = Application(routes)


dotnet 3.5 requirement

when i run the bat i get prompted by windows to install dotnet 3.5. put a lot of effort into installing it but am finally tapping out (some fluke win10 issue)
what in the script has this requirement? i did a quick read and didnt notice anything

vpkmod tool that does all the heavy lifting - it is made for maximum compatibility with naked Windows 7
you can however unzip tools\build vpkmod.zip
then run build csc vpkmod.bat and it will create a bin\vpkmod.exe via default .net command line compiler
finally replace the default vpkmod with the one you just compiled and it should work
next version will probably come without pre-compiled tool and instead just create the tool on-the-fly from script


Charts an images are not copied to output presentation if placed on a slideLayout

It will result to corrupted pptx files if a slideMaster and related slideLayouts are (auto-) imported into an output presentation when there are images or charts on a slideLayout, but not on the corresponding slideMaster.
Currently, it is not supported to use images or charts on a slideLayout, but only on the underlying slideMaster.

This will work by 0.3.3


Add support for SSL

Some SYSLOG servers support SSL (when TCP is used). We should add support for it.

SSL was included in Version 4.


[publication_list] list from mulitple bibtex files

Can we give more than one .bib files with the publication_list directive ?
I would like the plugin to be able to read the bibtex entries from mulitple files and create the pages.
Something like:
.. publication_list:: person1-publcations.bib person2-publications.bib person3-publications.bib

I think this can be done (in the plugin) by concatenating all bib files into a single temporary bib file and load that file. However, the issue is that, how do we tell you are specifying multiple bib files, or a single bib file with spaces?

I'm currently creating a combined file. But I think it would be nice if this feature is in the plugin as it simplifies having this in github/gitlab hosted page where we don't need to run this command to create a combined .bib source file.
I do not know exactly how the directives work, but is it possible to use the syntax such that the directive looks for a tuple/list of filenames instead of a single filename ?
Sth like:
.. publication_list:: (p1-pub.bib, p2-pub.bib, p3-pub.bib) ?

I don't know :(  @Kwpolska I would appreciate if you can give some suggestions.

Use a comma separated list, not even need for parenthesis.
Unless people actually use commas in filenames, in which case use something else :-)

This should be fixed now (should be available for download within 24h). If you don't mind, may I add your website as a live example in the document?

And add a link to the plugin on your website if you like :-)

Thanks. The website where I am using these features of multiple files is an organisational website that is not public yet. I will send you the link once it is publicly launched.
I have a personal website where I use Nikola and this plugin too, so if it is any useful you can add it as an example (I'd be keen to use other features such as hierarchy, issue #262 ) on this website:
https://bishesh.github.io/
For adding the link to th plugin on my/our websites, we'll be happy to do that. Is there a way to edit the footer "Powered by Nikola", to be sth like "Powered by Nikola, and publication_list" for the publications page ?

Thanks! You can do so by modifying CONTENT_FOOTER in your conf.py file. I will add a link to your website.

Actually the fix was incomplete (found another issue). Can you try the latest version?

Yes, the latest version fixes this, thanks.


Make Automaton available in the Maven central repository

To increase availability of and attention to this great testing framework it would be great to make it available in the Maven central as well. Probably the Maven central repo has no all features and capabilities that Bintray/Jcenter provides but the Maven central repo is a well known repository and it does not require for Maven users special configuration to download artifacts from it. In addition, for conservative/lazy/legacy developers, absence of this or that library in the Maven central repo might be a bad sign or a sign that something needs to be re-configured in existing build infrastructure that he/she don't want or can't do.

Yeah, I would like to do that! I will try for the next release.

I would suggest to publish Automaton 1.2.3 and the latest beta(s) to the Maven central if it does not require a lot of effort. And does not wait for next releases.

I've started the process! Let's see how long it will take for them to respond.

I will release version 1.3.1 (un-released yet) because dependencies need to be updated, and some important changes have been made in the beta versions (1.3.0-beta and 1.3.1-beta)....

Version 1.3.2 is on Maven Central but it still requires Swing-selectors from JCenter... will close this issue once swing-selectors is also on Maven Central

All good now... automaton version 1.3.2 and swing-selectors 1.0 are on Maven Central!
@AlexanderZobkov hope that helps!


Nitric Terraform CDK AWS Provider

A published nitric provider, which generates Terraform HCL/JSON using CDKTF, allowing Nitric applications to be deployed using Terraform to AWS.

https://github.com/nitrictech/nitric/pull/619


Do not capitalize paasdag/pinksterdag/kerstdag

According to official Dutch ortography (Green Booklet = Groene Boekje), public holidays such as eerste/tweede paasdag/pinksterdag/kerstdag should not be written in title case.
The alternative spelling, White Booklet (Witte Boekje), recommends title-case, i.e. Eerste/Tweede Paasdag/Pinksterdag/Kerstdag.
According to Wikipedia (https://en.wikipedia.org/wiki/White_Booklet), Groene Boekje has some traction in the Netherlands but not in Belgium, so the Green Booklet spelling should be used for nl_BE.
I don't know how widespread Green Booklet is in the Netherlands, but it is my impression that the official Green Booklet is a more neutral choice for nl_NL for a general-purpose library like Yasumi. However, my knowledge of Dutch is very limited, so please correct me if I'm wrong (I'm looking at you, @stelgenhof :-).
References:
https://onzetaal.nl/taaladvies/feestdagen/
https://www.languagepartners.nl/blog/nederlands-nt1/valentijnsdag-of-valentijnsdag/
https://www.vandale.nl/gratis-woordenboek/nederlands/betekenis/kerstdag#.XEtn1s9KhfI

@c960657 I took the time to read a bit more about the rules regarding title case for the Dutch holidays. Indeed compound words with the name of the holiday are written in lowercase. Reference to the event itself (e.g. Christmas), is written with a capital letter.


Code fence not working in the list on GFM mode

I found that the code fence is not working in the list.
As you see below image.

To test this can paste below codes to http://codemirror.net/mode/gfm/
And to https://codemirror.net/mode/markdown/, markdown mode works fine.
Might cause by the code fence chars, trace down a little bit but still not sure.
Code fence in list
===

- Test
	- subtest
	```
	just a code test
	```
	- subtest2
	```javascript
	var i = 0;
	```
	- subtest3
- test2
	- subtest2

Thank you guys!

Thank you @marijnh !


removing stats.yml until an alternate can be found that can publish P…

this github action should be removed until we can figure out how to have it write comments to a PR properly within the org
Signed-off-by: Mark Cohen<EMAIL_ADDRESS>Description
ensures that this action does not prevent all checks from passing.
Issues Resolved
N/A
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

Codecov Report

Merging #110 (fb1a6a5) into main (a38a5e3) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main     #110   +/-   ##
=======================================
  Coverage   81.42%   81.42%
=======================================
  Files          13       13
  Lines         140      140
  Branches       27       27
=======================================
  Hits          114      114
  Misses         24       24
  Partials        2        2

Flag
Coverage Δ

dashboards-search-relevance
81.42% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

Could this be a potential fix?

Could this be a potential fix?

I don't think so. There are settings at the org level that disallow PRs from forks to have certain permissions in the repo like writing a comment to a PR. So, I'm looking for some alternatives. In the meantime I'd like this to merge this if no one sees an issue with the change...

@noCharger any further comments on this or can it be approved to remove?


Detach enhancement

detach function could take an argument indicating the depth-level intended.

Thanks @vitorenesduarte. It could be:
doc.detach( String iFetchPlan );

In this way the fetchplan syntax is taken, allowing complex rules. Cool!

To detach only the first level, it would be:
doc.detach( "*:1" );

Great :+1:

Not relevant anymore. Closing it.


Update to use Jest and react-testing-library

@pd-smith
Is there any way to collect coverage report?

@georgeOsdDev Working through that right now. It should have the coverage report generating now, just need to figure out how to get codebeat to pick it up

Please use
jest && codecov
https://github.com/codecov/example-node#jest

@georgeOsdDev Okay looks like codecov is good to go. Do you know what needs to be done for codebeat to register the codecoverage?

@pd-smith
Thanks for your great work.
We are using codecov, so we don't cate about coverage report for codebeat.


Pre-trained checkpoints and features on MODEL_ZOO/FEATURES_ZOO missing

It looks like none of the links in the model/feature zoo pages link to anything. Do you have a plan to release them?
UPDATE: are these them? https://github.com/alibaba/EssentialMC2/blob/main/MODEL_ZOO.md

It looks like none of the links in the model/feature zoo pages link to anything. Do you have a plan to release them?
UPDATE: are these them? https://github.com/alibaba/EssentialMC2/blob/main/MODEL_ZOO.md

Sorry for the late reply. Our HyRSM is based on ImageNet pretrained ResNet-50, and the code can load the pre-trained model. Because of the lengthy and complicated approval process, our checkpoints are not open source. Feel free to contact me if you have any issues while reproducing.

Hey are the checkpoints available now? I click on the link and it directs me back to the homepage. Am I missing something here?

Hey are the checkpoints available now? I click on the link and it directs me back to the homepage. Am I missing something here?

Hi, thanks for your attention. Due to the lengthy company approval process for open source model training weights, we did not open source training checkpoints, you can run our code to train your own model, the code will automatically download the image net pre-trained ResNet50 model.


citeseq count is returning negative count values

Hello, I'm running into a very odd issue where some of the entries in the hashtag count matrix are negative. Below are some examples of the numbers I see.

I couldn't attach all the output files and the notebook I used to generate them, so I've put them in this google drive folder:
https://drive.google.com/open?id=1guoYnF4-whi_0aUgGQeugQ966bFBoc_J
This aberrant count matrix was generated with the following call:
CITE-seq-Count -R1 /home/munfred/hashing/data/SRR8281307_1.fastq.gz -R2 /home/munfred/hashing/data/SRR8281307_2.fastq.gz \
-t ./HTOs_len13.csv -cbf 1 -cbl 16 -umif 17 -umil 26 \
-o ./citeseqcount1 -cells 500000

SRR8281307 is the RNA HTO dataset from the hashtag paper: https://www.ncbi.nlm.nih.gov/Traces/study/?acc=SRP127179
Additionally, I have one more question: can you confirm that the UMI bug has been fixed? I have done the installation with the command pip install CITE-seq-Count==1.4.1
However, after running  CITE-seq-Count on the SRR8281307 data, I get back a matrix with 71,195,205 entries. This is suspiciously close to the 74,219,921  entries in the original fastq file, and suggests to me that the UMIs are not being collapsed. I have looked into both read_count and umi_count folder contents and they are identical.

Hello, I think I found the cause of the negative numbers. Int overflow. I noticed that the maximum values of hashtags were suspiciously close to 32768, (as you can see on the table below) which is the maximum value supported by numpy int16: https://het.as.utexas.edu/HET/Software/Numpy/reference/generated/numpy.iinfo.html

I did a quick search on the repo scripts, and I think I found the offending lines, 250 and 251 on processing.py:
https://github.com/Hoohm/CITE-seq-Count/blob/7e8b5f068b578424a6a518e9b81d77cd3eee3463/cite_seq_count/processing.py#L249-L250
If you change them to use dtype=int32 that should fix the issue

Hello @Munfred and thanks for the catch!
I think this might also be linked to the other major issue that hangs the umi correction. I'm working on an update that should come out this week that will include the 16->32 fix and probably the umi correction issue fixed.

Hi, I just wanted to give you an update I forgot to do earlier
The reason why I was running CITE-seq-Count on the cell hashing dataset is because I wanted to compare it's results with a different demultiplexing approach that uses kallisto.
I have finished a forst prototype of the pipeline on a jupyter notebook and it agrees quite nicely with the results from CITE-seq-Count when I make the confusion matrix.
You can see the jupyter notebook and some explanation of the workflow here: https://github.com/pachterlab/kite
I also made a poster explaining it if you are curious:
https://drive.google.com/file/d/1TKyjlFvHwwxfF7UqPn_-LMl7TBavp9Xm/view?usp=drivesdk

Hey @Munfred,
thanks for the heads up and the poster.
Happy to see that results are matching nicely :)
Is this the new "sircel" or is it totally different from this project?

Hi, sorry for the delay.
This is unrelated to sircel, was a result of the new kallisto bus feature that let's kallisto process single cell datasets from various technologies.
More info about the BUS format can be found here: https://bustools.github.io/
Some example workflows in python for processing single cell datasets are here: https://github.com/BUStools/BUS_notebooks_python

This is interesting. I might look into it and use it for dropSeqPipe!
Thanks for the heads up :)
Closing this as the bug was fixed


Building error

Hello, this project is not running successfully on my computer. I guess it is a maven package. I can't successfully deploy to my computer. If you can provide binary or more detailed knowledge, any help is very grateful.

I solved my own problem because I was not very familiar with maven and after two days I learned maven. Thanks.


pass signer from wagmi into ThirdWebSDKProvider

https://portal.thirdweb.com/react/react.thirdwebsdkproviderprops

Been closed!


BMP file truncated following parse/unparse

The last 106 bytes of the BMP in the attached zip are removed after the file is parsed and unparsed using Daffodil 2.7.0 (Java API).
token.zip

I think there are sort of two issues here:

The File_Size field in the BMP_File_Header (bytes 2-6) do not appear to be correct. This field has a value of 60514, but the file size is actually 60618 bytes, so it's short by 104 bytes. Either this is intentional and the File_Size field isn't supposed to describe the size of the entire file in some cases, or this field is corrupt--it's not obvious to me based on a quick reading of the spec. If it's the latter and this field is corrupt, I assume most bitmap parsers just ignore this field and rely entirely on fields in the DIB_Header to parse a full bitmap file, so this field being wrong doesn't really matter in most cases. Which leads to issue 2:
This schema is not really complete. All it really does is parse the BMP_FIle_Header and the DIB_Header and treats the rest of the file as a blob. In order to calculate the length of the rest of the file to turn it into a blob, we use the aformentioned File_Size field and subtract the lengths of the BMP_File_Header and DIB_Header. But this relies on a correct File_Size field which does not appear to be the case.

The right fix is probably to update the schema so that we actually describe the pixel data, or at least use different fields to figure out the length the pixel data if we can't always rely on the accuracy of the File_Size field.


Re-submit a single message with binary content created with Azure.Messaging.ServiceBus nuget package

I found out that the issue discussed in #712 only occurs when Azure.Messaging.ServiceBus is used.
I added UnitTest to show that the issue does not occur if you use Windows.AzureService.
I failed to reproduce exactly the error. I added a test that somehow emulates the error behavior. I do have not enough knowledge of what was changed between the two APIs. Also, the current Protobuf Nuget Package does not support 4.6.2 so i had to add the Protobuf message as a byte array :(
I ended up adding an additional menu item to resubmit a single message without changing the content.
I reused the code from the resubmit of multiple messages.
But that is just a workaround.
I manually tested re-submitting in Azure ServiceBus Queue and Topic and in both cases DLQ-Messages.
I was not able to manually test Azure Event Grid because I have no test environment.
Finally, I updated NUnit3TestAdapter to the newest version to locally run tests.

Please provide screen shots of the new GUI parts.

Before:

After:

Multiple Messages are unchanged:

Hey..
I am not completely sure what I have to do now.
Do you wait for me to move the menu item to the first place?

No need to do anything @KinNeko-De. I'd prefer if @paolosalvatori or @SeanFeldman also reviewed the PR.

@ErikMogensen Thx :) I was confused because the bot marked my issue as stale and 'wontfix' even if there is an open pull request.
I have no problem to wait :)


[New] jsx-tag-spacing: Add multiline-always option

This option enforces that the closingTag or the selfClosingTag is on a
new line if the entire tag is a multiline tag

Fixes #3210.

Thanks for merging this, may I ask what if there is an eta for 7.29.5 (or more likely 7.30.0)?

it'd be 7.30, yes. and there's no ETA.


[BUG] VAI Cache Namespace Taking ~9 Mins to Propagate Across All .DB Files

Rancher Server Setup

Component
Version / Type

Rancher version starting
v2.10-dae07ed09601506420c133a69d6e6d27bb7a53ec-head

Installation option
Helm (high availability)

RKE binary version used
v1.6.2

If Helm Chart k8s cluster
v1.30.4

Cert Details
external tls aws acm

Docker version
20.10.7, build f0df350

Downstream cluster type
not applicable

Downstream K8s version
not applicable

Authentication providers enabled
local

Logged in user role
admin

Describe the bug
Running an HA Rancher with VAI / ui-sql-cache enabled. When creating a namespace, that namespace is not immediately propagated across all .db files from each Rancher pod. I thought this used to be the case with resources like secrets, but that namespaces would propagate almost immediately across database files.
To Reproduce

Start an HA rancher on head
Enable the VAI / ui-sql-cache feature flag, wait for restart
In the Rancher UI navigate to the local cluster and create a namespace under the default project named myspace
On the projects/namespaces page in the Rancher UI give the browser a hard refresh
After this is done have the cluster kube config file on your local machine and run the following command:

You'll need the following installed

kubectl with access to a Rancher cluster
sqlite3 installed
zsh shell

curl -sL https://raw.githubusercontent.com/brudnak/rancher-test-scripts/refs/heads/main/vai/namespace/script.sh | zsh -s -- myspace 10

Result
It took ~9 minutes for the namespace to propagate across all .db files. Is this expected?
=== 📊 FINAL SUMMARY ===
Search for: myspace
✅ Successfully found in all pods!
Planned duration: 10 minutes
Actual duration: 8.76 minutes
Completed 10.0% faster than maximum time

Pod Discovery Timeline:
rancher-7fb5cfc58d-mtrnb: Found after 46 seconds
rancher-7fb5cfc58d-tvvl8: Found after 7 seconds
rancher-7fb5cfc58d-8qc92: Found after 522 seconds

Total propagation time: 515 seconds

Expected Result
For a namespace not to take ~9 minutes to propagate across all .db files. As this was not previously the case
Bug Frequency

Frequency
Selected Option

Consistent (10/10) - A consistent bug can be replicated every time the test is executed.
✅

Frequent (7/10)- A frequent bug can be replicated like 7 out of 10 times when a test is replicated

Occasional (5/10) - Occasional bug is more hard to replicate than a frequent bug.

Once thus far, twice thus far - Few bugs cannot be reproduced every time you run the test.

As the SQLite database is not meant to be read or used by any process other than Rancher, we've used options that forego flushing data to disk unless memory pressure requires that.
IOW, it is completely expected that looking at SQLite DB files from another process such as sqlite3 will give you an outdated and potentially inconsistent view of data actually available in Rancher.
I am sorry I fear this testing approach will just not work well under current assumptions.
Is it a possibility to check from the Steve API instead of going directly to the database file?

@moio , are you saying this may not be a bug at all?

Correct. We do not expect the DB files to be correct and complete at any point in time
What is expected to be correct and complete at any point in time is the whole state of the database - files and memory (inside of the Rancher process)
The problem is you can't easily look at that without being inside Rancher itself

If we really want to look at the inside of the database, then we may use VACUUM INTO /path/to/snapshot.db sqlite statement to make snapshot of the DB to another file.
I don't think rancher has the sqlite3 binary installed so we'd need to use debug containers for this.

Is it a possibility to check from the Steve API instead of going directly to the database file?

One benefit I see from looking at the DB, at least to check that it exists / has content is you can be somewhat sure that vai is enabled. Just going through steve won't give you that information (afaik), so we could have a regression there and not be aware.

One benefit I see from looking at the DB, at least to check that it exists / has content is you can be somewhat sure that vai is enabled. Just going through steve won't give you that information (afaik), so we could have a regression there and not be aware.

This was qa's pov as well - (afaik too there isn't a way to confirm this with steve alone)

I agree adding a Steve endpoint to dump the DB can be useful for QA purposes (and possibly troubleshooting).
IIUC VACUUM INTO will work even with PRAGMA synchronous = OFF, because the file is closed before returning, so it should fit this use case really well.
Note that running VACUUM INTO from a debug container will not work - it must be run from inside the Rancher process, for it to take into account unflushed and in-memory state.
Once we have that, if more than a handful seconds is necessary to propagate state, then it should be considered a bug.

Note that running VACUUM INTO from a debug container will not work - it must be run from inside the Rancher process, for it to take into account unflushed and in-memory state.

Hum, here's my understanding and why I think this should still work with a debug container.. First, we're running with PRAGMA journal_mode = WAL so all changes to othe database are appended to the -wal file. We're using PRAGMA synchronous = off so those writes are only given to the OS, but we're not explicitely waiting for them to be written to disk. So they might be in the OS cache, but not yet in disk. Fine. Now say another process (debug container) opens the database and runs VACUUM INTO.. I would expect that database to see the changes even if they're not yet written durably to disk. Otherwise, I don't really see how multiple goroutines living in many (sometimes changing) processes can view the latest state of the DB. Does that make sense? I've been trying and failing to find an explanation / proof for the above. :/

I will admit I was not aware of unix behavior for written but unflushed changes to a file.
This answer looks like a credible explanation to me: https://stackoverflow.com/questions/39070671/linux-is-data-written-to-a-file-guaranteed-to-be-visible-to-other-processes
So, there is a good chance I was wrong and it should work.
I'd appreciate if @brudnak could do a quick test - even completely manually - just to prove the theory is correct - 9 minutes should be enough to spawn a debug container, run sqlite3 attached to the database giles, run the VACUUM INTO a new db, close sqlite3, open the VACCUUmed DB and see that content there exists.
If that is not the case, I can take a deeper look.

@moio @tomleb  When using vacuum the namespace is available immediately
curl -sL https://raw.githubusercontent.com/brudnak/rancher-test-scripts/refs/heads/main/vai/namespace-vacuum/script.sh | zsh -s -- test-namespace-123

Processing pod: rancher-8569b6b7f9-6qpfb
Running vacuum process on pod...
Starting vacuum process...
Go is already installed
Found existing vacuum tool, attempting to use it...
Existing vacuum tool worked successfully
Copying snapshot from pod...
tar: Removing leading `/' from member names
Checking snapshot from rancher-8569b6b7f9-6qpfb...
✅ Found namespace 'test-namespace-123' in pod: rancher-8569b6b7f9-6qpfb
Cleaning up temporary files...
Processing pod: rancher-8569b6b7f9-84qn4
Running vacuum process on pod...
Starting vacuum process...
Go is already installed
Found existing vacuum tool, attempting to use it...
Existing vacuum tool worked successfully
Copying snapshot from pod...
tar: Removing leading `/' from member names
Checking snapshot from rancher-8569b6b7f9-84qn4...
✅ Found namespace 'test-namespace-123' in pod: rancher-8569b6b7f9-84qn4
Cleaning up temporary files...
Processing pod: rancher-8569b6b7f9-9zcbk
Running vacuum process on pod...
Starting vacuum process...
Go is already installed
Found existing vacuum tool, attempting to use it...
Existing vacuum tool worked successfully
Copying snapshot from pod...
tar: Removing leading `/' from member names
Checking snapshot from rancher-8569b6b7f9-9zcbk...
✅ Found namespace 'test-namespace-123' in pod: rancher-8569b6b7f9-9zcbk
Cleaning up temporary files...

Excellent, that proves the two theories with one shot!

Unflushed written changes to files are visible to other processes
changes are propagated without big delays, just not flushed (as expected)

I guess we are good closing this one!
Thanks everybody


Mutable Global State

https://rust-embedded.github.io/book/peripherals/borrowck.html

Unfortunately, hardware is basically nothing but mutable global state, which can feel very frightening for a Rust developer.

I think this is just pretentious to project feelings onto (a hypothetical) rust developer. Instead provide a technical argument why global state is considered bad. Or link to some other website that explains this.

Hardware exists independently from the structures of the code we write, and can be modified at any time by the real world.

This sentence seems like a very simple statements. But it covers actually something incredibly complex. Program boundaries and which guarantees the compiler can make. I think the wording right here is not good to explain this and also it's not presenting a take-away for the reader or giving an introduction to the next section in the book.
The next section says the word "reliably", implicitly saying before it was "unreliable". This already needs to be covered in the first paragraph. Now it's taking steps which are not easy to follow for someone without some background knowledge. If the background knowledge of the reader would already be there there is no point explaining this in the first place.

Always use volatile methods to read or write to peripheral memory, as it can change at any time

In previous section of book it says:

. In C, we can mark variables as volatile to ensure that every read or write occurs as intended. In Rust, we instead mark the accesses as volatile, not the variable.

try to keep this information in 1 section of the book, avoid trying to explain concepts multiple times to make it more clear.

In software, we should be able to share any number of read-only accesses to these peripherals

No idea what this means. Both from logically reading the sentence (on an english level). As well as the hardware level.
The access is a hardware concept that happens on one point of time (atomically). This can be triggered from multiple sections in the code.
My gut feeling is that this sentence refers to something of the borrow checker or some other guarantees rust provides.

If some software should have read-write access to a peripheral, it should hold the only reference to that peripheral

book makes a too big step how we go from structs to methods to passing around references.

Well, luckliy in the hardware, there is only one instance of any given peripheral

I think "instance" is used as a software term here. Which is strange because it's about hardware. After all there can be two ADC's in one hardware. When we talk about software-hardware functionality mapping. We have 1 software functionality for 2 hardware devices. The opposite can be true as well, where we have for example 1 pin with multiple software functionalities.
I don't have a suggestion for this at the moment, need more knowledge first.

Or link to some other website that explains this.

I read further, this is explained here. https://rust-embedded.github.io/book/peripherals/borrowck.html
Consider forward looking sentence or merging these two sections.

I don't have a suggestion for this at the moment, need more knowledge first.

Related?? section of book https://rust-embedded.github.io/book/static-guarantees/state-machines.html

http://blog.japaric.io/brave-new-io/

Physical pins on a microcontroller can be configured as digital inputs, as digital outputs or as peripheral pins (pins associated to peripherals like the USART). We can encode this configuration in the type of a pin to enforce at compile time that a pin has a certain configuration. We can think of the different configurations as the different states the pin can be in. This pattern of encoding states in the type system is known as type state (some people also call it session types).


Remove the need for bundlers in the build pipeline

build(rollup): remove rollup and related files
build(tsc): create cjs and esm bundles
chore(package.json): remove browser and browserlist

As per the last commit, I perceive we'll have issues with the @solana/web3.js lib that depends on some node builtins.
An error like process is not defined or buffer is not defined is expected.
Unsure on how best to handle that, we could list those as peer deps, or for the sake of simplicity, bundle the @solana/web3.js package to have those builtins provided, so upstream users don't have to be concerned about it.
Similar to the rollup config that was part of this lib

This is good to go. Tested both esm/cjs files with success


#31660 Delete mentions of X-GitHub-OTP from the docs

Why:
Delete mentions of X-GitHub-OTP from the docs #31660
Closes:
#31660

What's being changed (if available, include any code snippets, screenshots, or gifs):

Source
Preview
Production
What Changed

rest/using-the-rest-api/getting-started-with-the-rest-api.md
fptghecghes@ 3.12 3.11 3.10 3.9
fptghecghes@ 3.12 3.11 3.10 3.9
Remove X-GitHub-OTP

rest/using-the-rest-api/using-cors-and-jsonp-to-make-cross-origin-requests.md
fptghecghes@ 3.12 3.11 3.10 3.9
fptghecghes@ 3.12 3.11 3.10 3.9
Remove X-GitHub-OTP

Check off the following:

[x] I have reviewed my changes in staging, available via the View deployment link in this PR's timeline (this link will be available after opening the PR).

For content changes, you will also see an automatically generated comment with links directly to pages you've modified. The comment won't appear if your PR only edits files in the data directory.

[x] For content changes, I have completed the self-review checklist.

@conorheffron Thanks so much for opening a PR with this fix! I'll update the branch and get this merged once tests are passing 🍏


PVR: Next recording information (date & start time)

Another useful object(s) in iobroker would be the date (yyyy/mm/dd) and start time (hh:mm) of the next PVR recording event as shown in Kodi's TV / PVR menue section. The idea is to switch on/off the SAP>IP Receiver accordingly to the recording events.
Any idea to include this in the ioBroker.kodi adapter?
Current installation:
SAT>IP Receiver (Kathrein EXIP 414/e) and TVHeadend controlled by Kodi using the PVR Addon "Tvheadend HTSP Client".

https://kodi.wiki/view/JSON-RPC_API/v10#PVR.Record ?


add better translation

For translations, you should go to our Gitlocalized for any changes and updates, link below!
https://gitlocalize.com/repo/5170

sure


Discourse activation email

Should we disable the second activation email from Discourse? Is it redundant?

Closing this as I think we should keep the Discourse authentication email.


Bug: Redesign sub-nav is no longer working on production

Issue Type
Bug
Summary
Sub-Nav is no longer working, not being displayed on the websites on any page it is used on.
Priority
Blocker
Description
The new sub navigation, which displays under the hero section with a button, is not working on the redesign pages of the main website. It was functioning correctly yesterday but is no longer visible or interactive today.
Affected Device Classes
Mobile, Tablet, Desktop
Affected Browsers/Devices and Versions
All browsers and devices
Steps to Reproduce

Navigate to a page that uses redesign sub-nav (there are many, here are a few examples):

https://www.macktrucks.com/live-tour/
https://main--vg-macktrucks-com--volvogroup.aem.page/drafts/pere/brand-identity-guidelines/graphic-elements
https://www.macktrucks.com/trucks/anthem/

Observe how the sub-nav is no longer displayed on the page

Expected Results
Figma for reference of what was developed: https://www.figma.com/design/oNwe2jHIICPMIe551EY62l/Mack-Reskin---Full-Project?m=auto&node-id=2243-155090

Actual Results
Sub-nav is missing and no longer displaying
Attachment
No response

Testing completed. Everything works accordingly!


Update CLI extensions available doc

Update CLI extensions available doc.
Triggered by Azure/azure-cli-extensions - TRAVIS_BUILD_ID=611557706
https://github.com/Azure/azure-cli-extensions/commit/ae64e57d4a298df28aeb83cf84266ce3e29798dc

 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.:x: azuresdkci sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.

Docs Build status updates of commit 2e69caf:
:clock10: Full build: the average full build time is 7 min(s) 5 sec(s), this is based on the last 265 build(s) for this repository.

Docs Build status updates of commit 2e69caf:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs-ref-conceptual/azure-cli-extensions-list.md
:white_check_mark:Succeeded
View (azure-cli-latest) View (azure-cli-2017-03-09-profile) View (azure-cli-2018-03-01-hybrid)

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


Page Smooth Scrolling

Guides and future pages will have a sidebar "table of contents" which will allow users to jump to specific sections of the page.
Smooth scrolling to avoid abrupt jumps would be preferable here.
Some early considerations of using libraries could be:
https://locomotivemtl.github.io/locomotive-scroll/
http://callmecavs.com/jump.js/
Ideally these implementations should be flexible enough to work on any page without much intervention, potentially hooking onto specific classes on a page to check for functionality.
Having each sidebar label highlight as you scroll past the section on the page would be a big plus and something that should be considered.

mentioned this in discord but this is inbuilt in most browsers
https://developer.mozilla.org/en-US/docs/Web/API/Window/scrollTo
can write up a utility function for convenience tho


add netty http plugin

Hello, we now have to do netty use the http server, there are plans to add a plugin for netty httpServer do?

Netty is always an underlying communication framework of remote calling usage case, i also looking forward to a netty support plugin.

It is more useful for gateway, because high performance gateway is a netty server,also it is a netty client;


Reevaluate 30s split

There might be no need to split files in 30s chunks. This was introduced because of the high memory footprint of Sonic Annotator when extracting.

Both plug-ins consume the same amount of memory: 211,27MiB
Tested using 5.2 MB 3:27 track:
/usr/bin/time -l sonic-annotator -d vamp:bbc-vamp-plugins:bbc-spectral-contrast:peaks track.mp3  -w csv --csv-force


Improve multi-GPU buffer sharing

On multi-GPU setups we render everything on one primary GPU and then we copy buffers around to display them on secondary GPUs. This is done by exporting a DMA-BUF on the primary GPU, importing it on the secondary GPU, and rendering it on the secondary GPU:
https://github.com/swaywm/wlroots/blob/11dc1f65d216acf31e81addb9817091e8d9ba9a6/backend/drm/renderer.c#L216
Instead we should use direct scan-out to skip rendering on the secondary GPU. This could be the groundwork for https://github.com/swaywm/wlroots/issues/1270.

From issues we had with #1531 this doesn't seem possible on some drivers (radeon) because they can't scan-out from DMA-BUFs (which don't live in VRAM, but in system memory) directly. It would make more sense to copy the bo from system memory to VRAM, instead of using GL, but GBM doesn't have a way to copy buffers.

Weston has a bunch of checks to figure out if a buffer is suitable for scan-out.
Maybe we could try to scan-out and fallback to a copy if it doesn't work, too.

Use-cases:

Display-only devices like DisplayLink don't have memory
Nouveau doesn't support OpenGL for some NVIDIA hw (so falls back to llvmpipe)

We could try these strategies:

Directly import and scan-out the DMA-BUF
Import the buffer and perform a copy via OpenGL
Do a manual copy via system memory

The copy could be improved with:

Damage tracking support
Detect whether the DRM device is render-capable, don't try to use OpenGL in this case (do a CPU copy instead)

Is there any update on this?

Ref https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/810


Had to disable WS API check to run it

Hello,
I had to disable the code below to use it because of Invalid 3PAR WS API. My systemVersion is <IP_ADDRESS>
181  #       try:
182         api_version = self.getWsApiVersion()
183 #        except Exception:
184 #            pass
185 #            msg = ('Either, the 3PAR WS is not running or the'
186 #                   ' version of the WS is invalid.')
187 #            raise exceptions.UnsupportedVersion(msg)
188
189         # Note the build contains major, minor, maintenance and build
190         # e.g. 30102422 is 3 01 02 422
191         # therefore all we need to compare is the build
192 #        if (api_version is None or
193 #           api_version['build'] < self.HP3PAR_WS_MIN_BUILD_VERSION):
194 #            raise exceptions.UnsupportedVersion(
195 #                'Invalid 3PAR WS API, requires version, %s' %
196 #                self.HP3PAR_WS_MIN_BUILD_VERSION_DESC)

Did you try using the 3.1.3 version?
https://github.com/hp-storage/python-3parclient/releases/tag/3.1.3
It supports your firmware: https://github.com/hp-storage/python-3parclient/blob/172bc8d0971b9681ee9bf105fd68c8ce01ff36f5/hp3parclient/client.py#L121

Hello,
Using 3.1.3 version I got the same error, below more info:
In [3]: cl = client.HP3ParClient("https://<IP_ADDRESS>:8080/api/v1/")
UnsupportedVersion                        Traceback (most recent call last)
 in ()
----> 1 cl = client.HP3ParClient("https://<IP_ADDRESS>:8080/api/v1/")
/home/danilochilene/.envs/3par/lib/python2.7/site-packages/hp3parclient-3.1.3-py2.7.egg/hp3parclient/client.pyc in init(self, api_url)
183         if (api_version is None or
184            api_version['build'] < self.HP3PAR_WS_MIN_BUILD_VERSION):
--> 185             raise exceptions.UnsupportedVersion('Invalid 3PAR WS API, requires'
186                                                 ' version, 3.1.3 MU1')
187
UnsupportedVersion: Invalid 3PAR WS API, requires version, 3.1.3 MU1
(3par)~/l/python-3parclient-3.1.3 ❯❯❯ pip freeze
argparse==1.2.1
ecdsa==0.13
eventlet==0.17.1
greenlet==0.4.5
hp3parclient==3.1.3
httplib2==0.9
ipython==3.0.0
paramiko==1.15.2
pycrypto==2.6.1
wsgiref==0.1.2
(3par)~/l/python-3parclient-3.1.3 ❯❯❯

Hello,
You need to upgrade 3PAR InformOS firmware to MU1 which is <IP_ADDRESS> not <IP_ADDRESS>
Thanks,
Michael

After upgrading the firmware that solved the issue.
Thanks!


Added check to see if ssh key was already gone before trying to delete it

[Finishes #106029472]

Looks good. Please address my comment and make sure to go fmt all sources and update the PR. I'll merge it. Thanks.

That would be because I copied it from WaitForDeletedSshKeyToNoLongerBePresent and WaitForCreatedSshKeyToBePresent, both of which didn't do that either, and didn't think about it.
I've updated all three to now break out once they find the answer they want.

Cool, cheers :beers:


net/http: ProxyFromEnvironment should return nil for ip.IsUnspecified

What version of Go are you using (go version)?
go1.10.1
Does this issue reproduce with the latest release?
Yes, from code inspection the issue exists on master.
What operating system and processor architecture are you using (go env)?
darwin amd64 (shouldn't be specific)
What did you do?

Set a broken HTTP_PROXY environment variable
Run a web server listening on the unspecified interface (note that I specify tcp4 but this happens with tcp4 or tcp6)
Attempt to use the http client to talk to the web server
Get an error because it tried to use $HTTP_PROXY

https://play.golang.org/p/zVHDyxwZREM
What did you expect to see?
I expected to see the same result as if there was no $HTTP_PROXY, because $HTTP_PROXY is ignored for loopback IPs:
2009/11/10 23:00:00 <IP_ADDRESS>:2
2009/11/10 23:00:00 200 OK

What did you see instead?
2009/11/10 23:00:00 <IP_ADDRESS>:2
2009/11/10 23:00:00 Get http://<IP_ADDRESS>:2/bar: proxyconnect tcp: dial tcp: Protocol not available

Discussion
This is either a bug report for http.ProxyFromEnvironment, or a request for a new helper function in net/http. I am happy to submit a CL for either one, but I'm not sure which is right.
It seems to me that what I'm trying to do is a pretty common operation, especially for testing and local development: listen on the unspecified port/interface, get the listen address, and connect to it over HTTP.  This seems to mostly work, but it doesn't work if you have a corporate proxy set up with $HTTP_PROXY.
So either I have a bug report: http.ProxyFromEnvironment should return nil for IPs that are "unspecified" just like it does for IPs that are "loopback"
Or I have a feature request: There should be an easy way to map from the Addr you get from net.Listener.Addr() to a fully-functional HTTP URL (or host/port pair suitable for use in an HTTP URL). Specifically this method would change the unspecified IPv4 address to the loopback IPv4 address, and the unspecified IPv6 address to the loopback IPv6 address.  Certainly I can write this code manually but it seems like something that others using net.Listen will run into.
My suspicion is that I'm looking for the feature request here, because even though URLs like http://[::]:4000/ and http://<IP_ADDRESS>:4000/ work with Go's net/http client (in the absence of proxy env vars), they might not work as well with other ecosystems' implementations, so being able to generate a more broadly usable URL might be a good idea.  But I think the bug may still be a bug, since it's unclear to me when you would ever want to send the unspecified IP to a corporate HTTP proxy.

/cc @rogpeppe

Hello @glasser, thank you for filing this issue.
For posterity, the bug report has an inadvertently misleading result, because of running from the playground as that doesn't represent actual behavior so far, that is

2009/11/10 23:00:00 Get http://<IP_ADDRESS>:2/bar: proxyconnect tcp: dial tcp: Protocol not available

is expected on the playground because the network resolver for NaCl(on which the playground runs) always returns an error. Sorry if am preaching to the choir but this code will always return the same error
package main

import (
	"fmt"
	"net/http"
)

func main() {
	_, err := http.Get("https://golang.org/")
	fmt.Println(err)
}

Playground

Other machines
$ go run tk.go
<nil>

Please update that in your report lest folks might go down a different rabbit hole.
And then onto the bug request, I still don't yet understand what the problem is and perhaps the connection between (net.IP).IsUnspecified is there, but perhaps could you help me articulate the exact problem and how we get there?
/cc @bradfitz @tombergan @rs who might understand the problem ASAP but also to put the bug on their radar.
Thank you.

My point is that it doesn't make sense to invoke the proxy code at all when talking to the unspecified IP address, in the same way that http.Transport avoids invoking the proxy code when talking to a loopback IP address or the domain name "localhost".
So the playground demonstration is in fact apt, in that the error is not the same as the error you showed: mine contains the word "proxyconnect" and yours doesn't.  But yeah, it's even more clear outside of the playground.

I believe that it's an error to try to use the address returned from net.Listener.Addr as a Dial address when the address is all zeros. It happens to work under Linux, but it does not necessarily work under other platforms. For that reason, I'm not sure it's a good idea to treat this as a special case in the proxy code. A better solution, I believe, is either to explicitly listen on localhost or, if that's not reasonable because you need to listen on all available network interfaces, avoid using the Listener.Addr when the dialer is on the same host.

Fair enough. I guess https://github.com/golang/go/blob/14393c5cd4fed812c87ba45fe4e2b8d07c02e8fa/src/net/http/httptest/server.go#L63-L69 is a good model for what I should do to listen in a test that needs to work in IPv4 or IPv6 environments.

@glasser, why don't we close this bug then and you can open a new bug about why that's as tedious as it is? We have a dozen some copies of that newLocalListener sprinkled about.

Sure thing, #24778.


Compile to UMD for direct usage on web

We want the option to directly use the SDK on web without needing a build tool like Webpack. We should have another file (umd.js) that compiles the SDK to UMD and bundle as many dependencies as we can. That way, we can use something like UNPKG for convenient usage directly on web.
I already have a branch with a prototype on https://github.com/MyMICDS/MyMICDS-SDK/commit/13b7d0a357d169285f72416c68c237a3f5f8c563, but RxJS pipe operators not fully working.

Seems like potentially a peer dependency issue - I suspect if we remove rxjs from our direct dependencies and add it as a peer dependency in Webpack, it might fix the pipe issues.


Add upload endpoint to API

Returns a presigned url to a client so that they may upload a file into our S3 instance. The endpoint requires an extension, such as pdf, or txt, so that it can construct a path for the file in the bucket.
Filenames are unique UUIDs, matching the current behavior in the UI via the Shrine/Uppy process.
Fixes #815

If we only send the extension along with the presign request, will we miss out on this? or is this part of the 3rd metadata step? I realized that you've probably already got that sorted after seeing that.
I've verified that the presign url is only good for the path given, and will throw an invalid signature if the uploader tries to rename the file. Given that, I'm also curious if we only need to reply with the url in the POST request for a presign url?
I did notice that if an API key is not given, we're given
  "message": "We're sorry, but something went wrong",
  "errors": [
    "NoMethodError",
    "undefined method `application' for nil:NilClass"
  ]
}``` I wonder if we should catch that?

If we only send the extension along with the presign request, will we miss out on this? or is this part of the 3rd metadata step? I realized that you've probably already got that sorted after seeing that.
I've verified that the presign url is only good for the path given, and will throw an invalid signature if the uploader tries to rename the file. Given that, I'm also curious if we only need to reply with the url in the POST request for a presign url?
I did notice that if an API key is not given, we're given
  "message": "We're sorry, but something went wrong",
  "errors": [
    "NoMethodError",
    "undefined method `application' for nil:NilClass"
  ]
}``` I wonder if we should catch that?

@whereismyjetpack We're assuming the client has the file locally, and the file name, so it just sends the request using the extension. It'll get back the url, uuid + file extenion, and prefix. Using that information, it'll assemble a path to the file, prefix/uuid.extension and send that along to Scholarsphere. So the steps look like:

Client sends request for pre-signed url to Scholarsphere
Using the returned URL, client uploads file to AWS
Assuming step 2 is successful, client sends ingest/create request to Scholarsphere with the work's metadata, and the file metadata created from the response in step 1.

Regarding a missing key, we should be catching that error. How were you able to create that error?

@whereismyjetpack We're assuming the client has the file locally, and the file name, so it just sends the request using the extension. It'll get back the url, uuid + file extenion, and prefix. Using that information, it'll assemble a path to the file, prefix/uuid.extension and send that along to Scholarsphere. So the steps look like:

Client sends request for pre-signed url to Scholarsphere
Using the returned URL, client uploads file to AWS
Assuming step 2 is successful, client sends ingest/create request to Scholarsphere with the work's metadata, and the file metadata created from the response in step 1.

Regarding a missing key, we should be catching that error. How were you able to create that error?

Gotcha.
To recreate the error, i just sent curl -X POST http://localhost:3000/api/v1/upload without the headers.

Gotcha.
To recreate the error, i just sent curl -X POST http://localhost:3000/api/v1/upload without the headers.

@whereismyjetpack I fixed that error. Our tests weren't catching it because RSpec's controller environment doesn't fully replicate a real-world scenario. If this PR looks good, do you want to approve?

@whereismyjetpack I fixed that error. Our tests weren't catching it because RSpec's controller environment doesn't fully replicate a real-world scenario. If this PR looks good, do you want to approve?

I think the S3_ENDPOINT configuration will need to be fixed yet, force_path_style should be off, or false for aws, and we aren't sending S3_ENDPOINT in real deployments. I wonder if this code should only be in one place?

I think the S3_ENDPOINT configuration will need to be fixed yet, force_path_style should be off, or false for aws, and we aren't sending S3_ENDPOINT in real deployments. I wonder if this code should only be in one place?

@whereismyjetpack this is fixed now.

@whereismyjetpack this is fixed now.


[Android] [QQ browser & WeChar browser] : lose panend event.

When my finger leave touch screen after a 'panup' operate,the 'panend' can't be fired.Android 4.4 Smartisan OS QQMobileBrowser and WeChat inside browser(both are tencent products)

This also seems to happen on IOS in web views


Syslog Logging for Suricata/IDS

The ability to forward IDS logs via syslog would be great.
Doc:
http://jasonish-suricata.readthedocs.io/en/latest/configuration/suricata-yaml.html?highlight=syslog#syslog

@AdSchellevis since you did this for the proxy, I'm reassigning for 17.1, no strings attached :)

@fichtner sure, no problem


Fix self use in GRXConcurrentWriteable

In a block, we should use the strong ref of self that comes from weak ref of self, rather than directly using self.
Fixes #15400

Interop Cloud-to-Prod Tests - #15540


Highcharts definitions fully updated to v4.1.9.

This is a pretty big pull request, filling most of the missing gaps and correcting some errors:

All missing definitions has been added, mostly according to documentation, as well as some that were missing from documentation but found in examples and source code. Definitions are now matching version 4.1.9 of Highcharts.
Added documentation.
Added an extensive amount of tests covering most settings and objects.
Cleaned up the plot options and series options hierarchy.
Fixes #5895.

@damianog Could you please review my changes? The PR is pretty extensive, but I think the changes are useful and they should fill the gaps in the highcharts definitions as well as correct some errors. I've also tested it against our own codebase using highcharts, and there were no changes needed apart from one place where we used the wrong series options type. Hopefully this will be the case for other users as well.

@vvakame  please merge commit 244ad334cc020d4c3b4f04632fa6aa144d82b43a
@baltie :+1: Thanks a lot for the great job. Highcharts API are quite cryptic sometimes.
It seems that Highcharts team hate Ts :(

@damianog Thanks! :) Yes, it is a bit cryptic, though I learned a lot about highcharts doing this, things are a bit more clear to me now.
I doubt they hate TS. My take on it is that they started making this library before TS was conceived, they have to be backwards compatible and I have a feeling it's not very high on their priority list to make it more TS friendly. Maybe one day they make their own typings library like rxjs does. :)

thanks all!

@vvakame Thanks!

Thanks, @agoodwin. I've made a PR for this now. :)


Added Restaurant Project

Description
Added Restaurant Project
Fixes #665
Type of change

[x] New feature (non-breaking change which adds functionality)

Checklist:

[x] My code follows the style guidelines(Clean Code) of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have created a helpful and easy to understand README.md
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests/screenshots(if any) that prove my fix is effective or that my feature works

Images are not being uploaded as they are so many, and GitHub was not allowing to push those images. As 100files are not allowed at once. Retrying again


NSIS vs Squirrel.Windows

Why do the default settings make use of squirrel.windows rather than NSIS.
Are there any specific reasons for making this decision?

No, not really. The decision was based on the fact that Atom is using it. It did fit for my projects so that is why the default config is only for squirrel. Right now I would probably suggest to use NSIS but did not have enough time to check it. I will however migrate one of my products to it as I need a machine wide install which is something you can not get from squirrel (at least afaik).

It seems the Electron community is moving away from Squirrel in favor of NSIS.
Great to hear you're already planning to migrate one app. I already created a NSIS build for our app and it didn't seem to cause any problems.
Are there any specific pitfalls we should be on the lookout for?

Yeah, I know. When I was starting this a year ago Squirrel was favored.

Are there any specific pitfalls we should be on the lookout for?

Not that I know of. In fact I have just build a NSIS machine wide installer and it works great 🙂

Great! In that case we will keep making use of NSIS and report any issues should they arise.


Docs: add note that graphviz plugin require installed graphviz bin

Either add to readme that standalone installation is needed or bundle it with image

Shouldn't everything you need be already installed inside the docker image? If it isn't, we'll need to update the Dockerfile to include graphviz.

ok, will add this. I forgot to do it in previous PR.

https://github.com/Michael-F-Bryan/mdbook-docker-image/pull/6


Angular 16 support

Any plans for Angular 16?
If yes, when approximately it will be released?

I'm looking forward too.

We have released versions based on angular 16.


Accordian tabs changes

Changes summary

Use Tab layout for Transaction, Info, and Settings.
Show Deploy loading, success, error icons.
Single File and Project compilation changes

Closing this as Tab changes will be part of #153


Error deploying ML model on ACI

I'm trying to deploy my ML model on ACI using this code.
`
from azureml.core.webservice import AciWebservice, Webservice
from azureml.exceptions import WebserviceException
deployment_config = AciWebservice.deploy_configuration(cpu_cores=2, memory_gb=6)
aci_service_name = 'ml-model'
try:
service = Webservice(ws, name=aci_service_name)
if service:
service.delete()
except WebserviceException as e:
print()
service = Model.deploy(ws, aci_service_name, [kp_model], inference_config, deployment_config)
service.wait_for_deployment(True)
print(service.state)
`
Here is the error am getting
2020-08-10T11:01:28,103498848+00:00 - rsyslog/run  2020-08-10T11:01:28,109724839+00:00 - nginx/run  2020-08-10T11:01:28,111248110+00:00 - gunicorn/run  EdgeHubConnectionString and IOTEDGE_IOTHUBHOSTNAME are not set. Exiting... 2020-08-10T11:01:28,192849628+00:00 - iot-server/finish 1 0 2020-08-10T11:01:28,194532107+00:00 - Exit code 1 is normal. Not restarting iot-server. Starting gunicorn 19.9.0 Listening at: http://<IP_ADDRESS>:31311 (18) Using worker: sync worker timeout is set to 300 Booting worker with pid: 42 SPARK_HOME not set. Skipping PySpark Initialization. Exception in worker process Traceback (most recent call last):   File "/azureml-envs/azureml_d31cd964833447a6573171273c4f1235/lib/python3.7/site-packages/gunicorn/arbiter.py", line 583, in spawn_worker     worker.init_process()   File "/azureml-envs/azureml_d31cd964833447a6573171273c4f1235/lib/python3.7/site-packages/gunicorn/workers/base.py", line 129, in init_process     self.load_wsgi()   File "/azureml-envs/azureml_d31cd964833447a6573171273c4f1235/lib/python3.7/site-packages/gunicorn/workers/base.py", line 138, in load_wsgi     self.wsgi = self.app.wsgi()   File "/azureml-envs/azureml_d31cd964833447a6573171273c4f1235/lib/python3.7/site-packages/gunicorn/app/base.py", line 67, in wsgi     self.callable = self.load()   File "/azureml-envs/azureml_d31cd964833447a6573171273c4f1235/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 52, in load     return self.load_wsgiapp()   File "/azureml-envs/azureml_d31cd964833447a6573171273c4f1235/lib/python3.7/site-packages/gunicorn/app/wsgiapp.py", line 41, in load_wsgiapp     return util.import_app(self.app_uri)   File "/azureml-envs/azureml_d31cd964833447a6573171273c4f1235/lib/python3.7/site-packages/gunicorn/util.py", line 350, in import_app     __import__(module)   File "/var/azureml-server/wsgi.py", line 1, in <module>     import create_app   File "/var/azureml-server/create_app.py", line 3, in <module>     from app import main   File "/var/azureml-server/app.py", line 31, in <module>     import main as user_main ModuleNotFoundError: No module named 'main' Worker exiting (pid: 42) Shutting down: Master Reason: Worker failed to boot. 2020-08-10T11:01:28,524618650+00:00 - gunicorn/finish 3 0 2020-08-10T11:01:28,526020716+00:00 - Exit code 3 is not normal. Killing image

azureml.core.webservice is not mgmt package.

Exactly the same here.
I have no clue where to start debugging.
Any suggestions?

The first step in debugging errors is to get your deployment logs.
Can you run and check : az ml service get-logs --verbose --workspace-name  --name
You can also follow our troubleshooting guide :
https://docs.microsoft.com/en-us/azure/machine-learning/how-to-troubleshoot-deployment?tabs=azcli
Let us know if this doesn't help.
Thank you!

Closing this issue, please feel free to re-open/ping us incase you need more help.
Thank you!

Closing this issue, please re-open or let us know in case you need more help.
Thank you!

#please-close


Custom text group

A cool feature idea occurred to me today. It would be neat if one could vig ("visual-in-group") to visually select a contiguous block of rows, where a block is defined as all the contiguous rows having the same value in the cursor's column. Obviously this would only work for sorted data. Yank, delete, etc would be handy with this text group too. Does this sound possible?

Sounds like a useful feature. I'll look into implementing this.

Try with the latest version. It implements the 'iL' text object (see :h csv-textobjects)

Beautiful - thanks!


Reduce allocations

We should probably have a caching mechanism for storing temporary fields, and store them in an auxiliary field. Perhaps borrowing our design in TC.jl would be helpful here (both for the aux and prognostic fields).

We may want to do something simple here for now. For the SingleColumnModel, we should just copy 1-to-1 how it's done in TC.jl.


Contact Details
@badgeronabike
What happened?
When I keep temp files I have all the shapes to test what the areas actually are from the shapefiles produced by Pandora there are large discrepancies.
What component are you seeing the problem on?
R
Relevant log output
No response
Approvals Process

[ ] Testing For Issue
[ ] Merge

When I print the areas we can begin to see some strange behaviours.
Running Iteration: 1; Fire ID: 1
Warning 1: Value<PHONE_NUMBER>.76000023 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
[1] 26 NA
ssim-task-step=1
ssim-task-status=Simulating -> Iteration is 2 - Timestep is 0
Running Iteration: 2; Fire ID: 1
Warning 1: Value<PHONE_NUMBER>62.320007 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Warning 1: Value<PHONE_NUMBER>44.140015 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Running Iteration: 2; Fire ID: 2
Warning 1: Value<PHONE_NUMBER>0.0299988 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
[1]   0 651
ssim-task-step=1
ssim-task-status=Simulating -> Iteration is 3 - Timestep is 0
Running Iteration: 3; Fire ID: 1
Warning 1: Value<PHONE_NUMBER>8.1800003 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Running Iteration: 3; Fire ID: 2
Warning 1: Value<PHONE_NUMBER>2.9799995 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Warning 1: Value<PHONE_NUMBER>7.4899979 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Running Iteration: 3; Fire ID: 3
Warning 1: Value<PHONE_NUMBER>.80999994 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Running Iteration: 3; Fire ID: 4
Warning 1: Value<PHONE_NUMBER>1.9300003 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Running Iteration: 3; Fire ID: 5
Warning 1: Value<PHONE_NUMBER>.37999916 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
[1] 156   0  25 643  91
ssim-task-step=1
ssim-task-status=Simulating -> Iteration is 4 - Timestep is 0
Running Iteration: 4; Fire ID: 1
Warning 1: Value<PHONE_NUMBER>.1400001 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Warning 1: Value<PHONE_NUMBER>.63000011 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Running Iteration: 4; Fire ID: 2
Warning 1: Value<PHONE_NUMBER>.38000011 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
Running Iteration: 4; Fire ID: 3
Warning 1: Value<PHONE_NUMBER>0.5800018 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
[1]   0  26 259
ssim-task-step=1
ssim-task-status=Simulating -> Iteration is 5 - Timestep is 0
Running Iteration: 5; Fire ID: 1
Warning 1: Value<PHONE_NUMBER>.18999958 of field AREA of feature 0 not successfully written. Possibly due to too larger number with respect to field width
[1] 49 NA
ssim-task-step=1
Called from: eval(expr, p)
Browse[1]> n
debug at C:/Users/bremoore/SyncroSim/Packages/burnP3PlusPrometheus/growth-pandora.R#682: updateRunLog("\nBurn Summary:\n", sum(!is.na(burnAreas)), " fires burned.\n",
    sum(burnAreas < minimumFireSize, na.rm = T), " fires discarded due to insufficient burn area.\n",
    round(sum(burnAreas >= minimumFireSize, na.rm = T)/sum(!is.na(burnAreas)) *
        100, 0), "% of simulated fires were above the minimum fire size.\n")
Browse[2]> burnAreas
 [1]  26  NA   0 651 156   0  25 643  91   0  26 259  49  NA

Fixed as of v0.4.6. This was an issue with checking size before converting units to hectares. Thanks for catching this!


[port closed] port 25 closed on my vps but binding included in docker-compose

I've got a problem with the port 25 (smtp).
I cannot deliver mail from outside (eg. gmail), the provider send me back an e-mail telling me that the mail server is unreachable.
After some investigations, I noticed that the port 25 is actually closed on the vps as you can see here.

There's no port 25 open when I type netstat -plnt  on the vps :

Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 <IP_ADDRESS>:22              <IP_ADDRESS>:*               LISTEN      -
tcp6       0      0 :::587                  :::*                    LISTEN      -
tcp6       0      0 :::143                  :::*                    LISTEN      -
tcp6       0      0 :::80                   :::*                    LISTEN      -
tcp6       0      0 :::53                   :::*                    LISTEN      -
tcp6       0      0 :::22                   :::*                    LISTEN      -
tcp6       0      0 :::443                  :::*                    LISTEN      -
tcp6       0      0 :::32768                :::*                    LISTEN      -
tcp6       0      0 :::993                  :::*                    LISTEN      -

Here's the result of http://www.dnsstuff.com/mstc where I can test a mail adress :

However, I bound the port in docker-compose.yml, so it should be open to the outside.
mail:
   image: tvial/docker-mailserver:latest
   ...
  ports:
     - 25:25 # smtp
     - 143:143 # imap
     - 587:587 # smtp / ssl
     - 993:993 # imap / ssl
      ...

And the mailserver is running.

Here's a sample when I type docker ps. It seems to suggest that binding worked properly by the way.

5444bf0cfeb1        tvial/docker-mailserver:latest   "/bin/sh -c /usr/l..."   2 days ago          Up 2 days              25/tcp, <IP_ADDRESS>:143->143/tcp, <IP_ADDRESS>:587->587/tcp, 110/tcp, 995/tcp, 4190/tcp, <IP_ADDRESS>:993->993/tcp,      <IP_ADDRESS>:32768->1525/tcp   woodytoys_mail_1

What about the firewall?
sudo iptables -L

I have authorized the port 25 in the firewall (ufw)

If you can't telnet from outside world on port 25:

check the output nc -z -v -w1 domain.com 25 (from the outside too)
check that postfix process is up and running

In the container :
root@mail:/# service postfix status
 * postfix is not running
root@mail:/# service postfix start
 * Starting Postfix Mail Transport Agent postfix                                                                                postfix/postfix-script: fatal: the Postfix mail system is already running

But with postfix status :
root@mail:/# postfix status
postfix/postfix-script: the Postfix mail system is running: PID: 1008

If on the container, telnet <IP_ADDRESS> 25 works, your issue is network related.

I confirm that telnet <IP_ADDRESS> 25 in the container works.
However telnet localhoston the vps does not work :
Trying <IP_ADDRESS>...
telnet: Unable to connect to remote host: Connection refused

It's quiet odd but now the port 25 is open.
I was just working on the dns container and restarted a few times the containers and suddenly as I was typing netstat -plnt I saw this.
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 <IP_ADDRESS>:22              <IP_ADDRESS>:*               LISTEN      -
tcp6       0      0 :::587                  :::*                    LISTEN      -
tcp6       0      0 :::110                  :::*                    LISTEN      -
tcp6       0      0 :::143                  :::*                    LISTEN      -
tcp6       0      0 :::80                   :::*                    LISTEN      -
tcp6       0      0 :::53                   :::*                    LISTEN      -
tcp6       0      0 :::22                   :::*                    LISTEN      -
tcp6       0      0 :::25                   :::*                    LISTEN      -
tcp6       0      0 :::443                  :::*                    LISTEN      -
tcp6       0      0 :::993                  :::*                    LISTEN      -
tcp6       0      0 :::995                  :::*                    LISTEN      -

Things I have done the last few hours :

Activating pop3.
Adding - SASL_PASSWD environment variable.
Reworking the dns but it has nothing to do with the problem I had.

Hey,
I had the same problem and had to downgrade to 2.2 (I was running the latest version before).
But in my netstat the port 25 was always open.
I use more than one domain. But I wonder if someone has the same problem?

Yeah also had to downgrade. AS far AS i was able to See clamav is running in foreground mode and Blocks the startup script...

So perhaps we need to reopen the issue?

@Mathieu-R was running 2.2 (because 2.3 has been released 6 days after) so the latest comments should go in another thread.
I'm gonna close this one. There are other threads regarding 2.3. Feel free to add your comments there.
https://github.com/tomav/docker-mailserver/issues/586

@Mathieu-R that was 2.3?

fyi: In my case it was 2.3. So I had to downgrade to version 2.2.

I found that in 2.3, postfix changed some settings. http://www.postfix.org/COMPATIBILITY_README.html
I had my postfix not running on 2.3 for that reason:
May  6 10:36:51 mail postfix[6669]: Postfix is running with backwards-compatible default settings
May  6 10:36:51 mail postfix[6669]: See http://www.postfix.org/COMPATIBILITY_README.html for details
May  6 10:36:51 mail postfix[6669]: To disable backwards compatibility use "postconf compatibility_level=2" and "postfix reload"

Try to have a look on your side.
Another issue I had was related to master.sock file. For the moment, I disabled ONE_DIR and it seems ok (even if there are things to fix)

http://www.postfix.org/COMPATIBILITY_README.html#chroot to be more explicit

So I need to disable ONE_DIR for now. Or should I wait until you fix it? :)

I used the :latest version. So if the 2.3 was not there. I suppose, I used 2.2.

@thiesschneider I don't know how to fix it yet and don't have any time for that these days.
Want I can say, is when I look at logs, 2 or 3 errors may happen and should give good leads to find the solution.
The 3 errors to solve are:
May  6 12:36:14 mail postgrey[3623]: FATAL: ERROR: can't open lock file: /var/lib/postgrey/postgrey.lock#012

May  6 12:36:15 mail postfix[4414]: Postfix is running with backwards-compatible default settings
May  6 12:36:15 mail postfix[4414]: See http://www.postfix.org/COMPATIBILITY_README.html for details
May  6 12:36:15 mail postfix[4414]: To disable backwards compatibility use "postconf compatibility_level=2" and "postfix reload"

May  6 12:36:15 mail postfix/master[4451]: fatal: open lock file /var/lib/postfix/master.lock: cannot create file exclusively: Permission denied

Let's move to #586


Lease token was taken over by owner exception

Some of our change feed processors are stuck and we're seeing some OperationCanceledException as well as these types of CosmosExceptions in the logs:
Response status code does not indicate success: PreconditionFailed (412); Substatus: 0; ActivityId: ; Reason: (796 lease token was taken over by owner something-6c082e98-54b1-4fe9-9486-fc51ce2be403
What does it mean for a lease token to be taken by another owner? I was under the impression that a single lease is owned by a single compute instance.
The change feed processors also seem to start running again from time to time and then halt again seemingly randomly.
Our configuration involves:

A single monitored container
Multiple change feed processors doing different things
All of them use the same lease configuration
Multiple instances of the processors on multiple hosts where every instance name is postfixed by a guid so it has a unique name

The exception means what the Message says, the lease was rebalanced to another host.
Please see https://learn.microsoft.com/en-us/azure/cosmos-db/nosql/change-feed-processor?tabs=dotnet
Leases on a steady state are maintained by a single host but there is a period of rebalancing. Check the dynamic scaling section of the article.
When CFP starts, it will do rebalancing until it reaches a steady point where the leases are evenly distributed. If you increase or decrease instances, rebalancing will occur too.

For OperationCanceledException see https://learn.microsoft.com/en-us/azure/cosmos-db/nosql/troubleshoot-dotnet-sdk-request-timeout?tabs=cpu-new, this often means you are experiencing network timeouts. Check your resources (CPU, SNAT ports) when you see this issue.

Then you should look into the LIfe Cycle Notifications for NewChangeFeedProcessor to understand why it is not making progress or what could be the issue.
Leases are distributed across instances of the same Deployment Unit, a Deployment Unit is defined by 1 or more instances of a CFP with the same processorName, Monitored, and Lease containers.
If you have a cluster (A) of machines where multiple CFP exists, assuming each CFP has a different processorName (or Monitored or Lease container) then they are completely independent one from the other. If NewChangeFeedProcessor was a new CFP deployed on cluster A (but not in B) you need to look into what is going on in NewChangeFeedProcessor which I guess is different from your previously existing CFP instances?

When rebalancing happens it means another machine took the leases and that machine is processing them. Either the machine is facing some failure condition that it is consistently failing to process or there is something else blocking the progress. Life Cycle notifications will tell you who acquired the leases, when, and if they are running into any processing failures, which are they. You can see who is owning the leases either with the Estimator or by inspecting the leases (the Owner property matches the InstanceName of the machine owning it, assuming each machine has a unique name, if 2 machines have the same InstanceName, then that definetively is a bad configuration).

We're still in the process of investigating this. We have some manual checkpointing logic. I've been responsible for migrating this code to Cosmos DB v3 SDK and I might have made mistakes there that cause this issue. I need some clarity on certain differences in the API for creating change feed processors.
In v2 there were ChangeFeedObservers which had OpenAsync and CloseAsync methods. The docs for these methods just say "this is called when the observer is opened/closed" but don't really explain what that entails. Is there anything in v3 is equivalent to them?

I believe you are looking for WithLeaseAcquireNotification and WithLeaseReleaseNotification, see https://github.com/jet/propulsion/blob/1d862e907502d727f5508b401deb85c6c60ef1e7/src/Propulsion.CosmosStore/ChangeFeedProcessor.fs#L142-L143 (I ported similar logic with manual checkpointing - the repo had a V2 SDK impl you could compare and contrast with a bit of digging)

They seem similar but I don't believe they're equivalent. They look like they've been added for logging, which is how you are using them.
Migrating our code kind of requires us to have something equivalent or we'll have to change it. Our code for manual checkpointing does batching - it collects changes in the handle method and starts what we call a periodic checkpointer (which checkpoints at certain intervals) in OpenAsync (cancels this checkpointer in CloseAsync).
I don't think doing the same with OnLeaseAcquire/OnLeaseRelease will result in the same behavior. It appears that when leases are stolen I end up cancelling our periodic checkpointer which is most likely the source of our OperationCanceledExceptions.

You may well be right about them not mapping directly; for a start, the callbacks are not Async AFAICT (and are hence not a blocking thing as part of a state transition as they once were; would definitely not suggest attempting to do long running work even if it happened to seem to work in the current impl).
Those callbacks were re-added to the API surface relatively late; Now you mention it, I believe I did a refactor to cope with the absence of the Open/Close notifications (processing logic in Propulsion is not reliant on the notifications. In the case of leases being stolen, any buffered inputs would continue to process, competing with the new owner). If I was looking to prevent that overlapping processing, I'd implement an out-of-band 'Revoked' message to the internal processor, which would then dump/cancel all buffered/in progress work associated with that LeaseToken. (sets of Items get passed as batches along with the Action that can be used to trigger the manual checkpoint when they have been processed; an internal process debounces them to only trigger at most one of such checkpoint calls per 5 seconds)

@ealsur

Any failure during processing would release the lease, which would result in a NotifyLeaseReleaseAsync

Was this behavior the same in v2 when using ClosedAsync?
We have a spike of errors when a halted CFP starts processing again, 10-40% of all processing. I believe because we're overloading an external service when processing restarts with high volume. It appears that those errors that occur after the restart cause the leases to be released and then reacquired by other instances so sometimes they end up juggling (playing hot potato?) with the leases.

Yes, CloseAsync was called when the lease was released.
"juggling" is the load balancing kicking in to distribute the leases evenly, it's a competitive distribution when the first instance to come up will acquire all and the rest will start to steal until it stabilizes. It's the same algorithm as V2 CFP.

@davidtimovski Are there any other inquiries or topics we can cover on this Issue?

@ealsur We're investigating this but for the time being I do not believe it to be related to Cosmos DB v3. We have a bunch of things built on top of the change feed processor SDK and some of them like the batching is probably the crux of it. Soon as I get more understanding of what's happening I'll close this issue :)

@ealsur I was having trouble finding the issue because our new v3 code is so similar to the old one. Pretty much the same in the usage of Observer.ProcessChangesAsync/OpenAsync/ClosedAsync vs  the processing delegate and OnLeaseAcquire/OnLeaseRelease in v3. But now I noticed that one of those isn't equivalent.
In v2 there was IChangeFeedObserverFactory which created observers. In our v2 code when there was an uncaught exception we would put that exception in a property of the observer and if ProcessChangesAsync() would be called again it would log that the observer is in a faulted state and throw that exception again. But this faulted state would almost never happen as a new observer would be instantiated.
In v3 on the other hand we have a delegate which in our code is the same as the old observer ProcessChangesAsync(), but when an uncaught exception happens and we set it to a faulted state it basically remains there since there's no factory to just create a new observer. This seems like something that should be changed as it's not analogous to how v2 worked since now our delegates become forever halted.
Do you think my assumption is correct here?

There is no factory concept or observer concept in V3, correct. The delegate just gets called when changes are delivered, there is no object lifetime, it's just invoking a delegate method.
However, in V2, the factory would create a new observer when the lease was acquired, and then call OpenAsync. Conceptually that is similar to LeaseAcquireAsync notification.

Thanks @davidtimovski for coming back and sharing the resolution, I think it will help for future users migrating!


updated travis build file to work around the brew bug

This is the bug https://github.com/travis-ci/travis-ci/issues/8552

@dev0tion Do you mind?


Create a podspec file

Hello,
First of all: great lib, and thanks you for it 😄
I created a podspec file for everyone who want to use Cocoapods to handle their native modules.

As the recommended-by-Facebook solution is react-native link I'm not really interested in this but I'll merge it as other libs seem to also support this install path. I'll trust you that it works. 🙂

When trying to install with pods, i was getting this error:
The name of the given podspec RCTSplashScreen doesn't match the expected one rn-splash-screen
Changing line 6 from:
s.name = "RCTSplashScreen"
to
s.name  = "rn-splash-screen"
allowed me to install


Generalize Length synonyms

406 #Synonyms for Length...
407 #FIXME need eg. my Distance $d = 42cm
408 class Distance           is Length is export {}
409 class Breadth            is Length is export {}
410 class Width              is Length is export {}
411 class Height             is Length is export {}
412 class Depth              is Length is export {}
right now
$distance ~~ Length #ok
$length ~~ Distance #fail

https://stackoverflow.com/questions/66188256/how-does-raku-do-class-synonyms


chore(templates/deno): add missing typings to devDependencies

According to @pcattori, this isn't necessary (see https://github.com/remix-run/remix/pull/3117#discussion_r868543212)

We don't need @types/* nor typescript in devDependencies because users will be relying on Deno tools (like the VSCode Deno extension) to provide types. These tools will use import maps to find the appropriate types (e.g. templates/deno/.vscode/resolve_npm_imports.json).
In short, Deno does typechecking via a custom TS compiler implementation (not via tsc). That implementation doesn't grab types from node_modules/ at all.

I am using WebStorm instead of VS Code, and it was complaining to me about this.
Turns out I needed to install the Deno plugin, sorry for the noise!

@machour Had the same problem before indeed