Pull out common code from both get and post of the recovery handler

From https://github.com/matrix-org/matrix-authentication-service/pull/2866#discussion_r1658701097
It was bugging me to find out why we couldn't do this ... I wanted to witness the errors for myself and think about why it isn't Send+Sync etc.
Then it turned out it's fine.
It's a bit verbose (it's actually more code) but it does mean that we won't accidentally forget to update both checks at the same time, so I am mildly in favour, but happy to hear what you think

didn't consider that, that could work


Settings- Security - Invalid code error persists if close and reopen 2-factor setup

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

Issue found when executing https://github.com/Expensify/App/pull/18576
Action Performed:

Open Expensify Desktop app
Click on profile icon
Click on "Security"
Click on "Two-factor authentication"
Click on copy codes / Download
Save the codes if needed
Click on "Next"
Input incorrect code
Click on "X"
Repeat steps 2-6

Expected Result:
When user re-opens 2-factor auth setup after entering an incorrect code at the previous try - the error about invalid code is no longer displayed
Actual Result:
When user re-opens 2-factor auth setup after entering an incorrect code at the previous try - the error about invalid code is STILL displayed
Workaround:
Unknown
Platforms:

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

[ ] Android / native
[x] Android / Chrome
[ ] iOS / native
[x] iOS / Safari
[x] MacOS / Chrome / Safari
[x] MacOS / Desktop

Version Number: <IP_ADDRESS>
Reproducible in staging?: yes
Reproducible in production?: no
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
https://platform.applause.com/services/links/v1/external/2a7d18fefa82002513ff35352fa067ef1091f0d748fc784ee06d58b6d5289574
https://platform.applause.com/services/links/v1/external/203f0ffa6c939638434b9997c064fac9ac6f30028986123e096bbcfaedb3a18d
Expensify/Expensify Issue URL:
Issue reported by: Applause - Internal Team
Slack conversation:
View all open jobs on GitHub

Proposal
Please re-state the problem that we are trying to solve in this issue.
Invalid error code persists for 2-factor setup page when we reopen it
What is the root cause of that problem?
We are not clearing the account data of onyx once we unmount the component.
What changes do you think we should make in order to solve the problem?
We need to add the useEffect cleanup function for BaseTwoFactorAuthForm component where we will call the function Session.clearAccountMessages(); which gets executed on the unmount of the component.

Dupe of https://github.com/Expensify/App/issues/19187


Bump for Rails 5.0

This PR bumps dependencies to get a successful bundle in Konekti. We should do some due diligence to make sure that this makes sense.
In particular, it would be nice to instead have a more permissive version set. More information about declaring gem dependencies can be found here:
https://guides.rubygems.org/patterns/#declaring-dependencies

Closing so someone on msync can open these.


[BUG] "conversation retrieval agent", Error: Cannot read properties of undefined (reading 'replace')

Describe the bug
Getting this Error from Time to Time while running the new "conversation retriaval agent".
2023-08-10 12:04:02 [ERROR]: [server]: Error: Cannot read properties of undefined (reading 'replace')
TypeError: Cannot read properties of undefined (reading 'replace')
at OpenAIEmbeddings.embedQuery (/root/.nvm/versions/node/v20.4.0/lib/node_modules/flowise/node_modules/langchain/dist/embeddings/openai.cjs:141:46)
at QdrantVectorStore.similaritySearch (/root/.nvm/versions/node/v20.4.0/lib/node_modules/flowise/node_modules/langchain/dist/vectorstores/base.cjs:69:90)
at VectorStoreRetriever._getRelevantDocuments (/root/.nvm/versions/node/v20.4.0/lib/node_modules/flowise/node_modules/langchain/dist/vectorstores/base.cjs:38:33)
at VectorStoreRetriever.getRelevantDocuments (/root/.nvm/versions/node/v20.4.0/lib/node_modules/flowise/node_modules/langchain/dist/schema/retriever.cjs:54:40)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async DynamicTool.func (/root/.nvm/versions/node/v20.4.0/lib/node_modules/flowise/node_modules/langchain/dist/agents/toolkits/conversational_retrieval/tool.cjs:7:22)
at async DynamicTool.call (/root/.nvm/versions/node/v20.4.0/lib/node_modules/flowise/node_modules/langchain/dist/tools/base.cjs:35:22)
at async /root/.nvm/versions/node/v20.4.0/lib/node_modules/flowise/node_modules/langchain/dist/agents/executor.cjs:104:23
at async Promise.all (index 0)
at async AgentExecutor._call (/root/.nvm/versions/node/v20.4.0/lib/node_modules/flowise/node_modules/langchain/dist/agents/executor.cjs:100:30)
Screenshots

Hi @mahmoudsorf,
Could you share your NodeJs version? node --version
Only happen in this Flow, does it occur on a simple flow such as in the marketplace?

I am receiving the same error: TypeError: Cannot read properties of undefined (reading 'replace')

node --version
v20.4.0
I did not try with simple flow but tried it with function agent and got the same error as well. Seems it is more related to Retriever Tool.

Hi @mahmou and @htsnet,
I'm not able to replicate the error you guys shown in my local setup with NodeJS v20.5.1 shown below:
Conversational Retrieval Agent

Conversational Retrieval QA Chain

Could you guys troubleshooting with re-upsert documents with Conversational Retrieval QA Chain in marketplace?

Hey folks, opened https://github.com/hwchase17/langchainjs/pull/2280 that should hopefully help with this.
I'll aim to merge it tomorrow morning, let me know if you see it again after the next release.

Hey folks, opened hwchase17/langchainjs#2280 that should hopefully help with this.
I'll aim to merge it tomorrow morning, let me know if you see it again after the next release.

awesome thanks @jacoblee93 !

I update my nodejs (>node --version v20.5.1) and run again "npm install flowise".
After that, I open Flowise again and it crashed (the cmd panel closes without warning).
I need to review everyrhing

Hey guys, I've deployed this application to an EC2 instance (with Docker), but the error still persists
Any suggestions?


Added collapse relative links functionality

Added collapse relative links functionality. Inspired by pull requests such as this:

https://github.com/dotnet/docs/pull/18461
https://github.com/dotnet/docs/pull/18471
https://github.com/dotnet/docs/pull/18472
https://github.com/dotnet/docs/pull/18497
etc...

Automate this functionality with the click of a button, I hope that @NextTurn will appreciate this addition 🎉

@IEvangelist Thanks for the feature! I appreciate it a lot.
I hope this could add an option to configure the path style. The .NET docs team prefers to prefix subdirectories with ./ (e.g. [](./dir/file.md)).
Some potential problems with common cases:

Does it work with anchors (e.g. [](../dir/file.md#anchor))?
What would be the expected behavior for ~/ links that can be collapsed as well?

Ah, these are good observations - and things that I'll need to account for. I do not currently handle query strings or bookmarks, those should be easy to add. As for the style, I'm on the .NET docs team myself and I can tell you that the preference is not a necessity. In fact, if tooling is available to ensure that links are valid that's all that really matters. It is my preference to simplify links, and adding a ./ is unnecessary.


Add default Statuses (and Roles?) for Contact and Team associations

As ...
Nelly - Network Engineer
I want ...
To have an appropriate set of Statuses and Roles provided in a new (or freshly upgraded) Nautobot instance for the ContactAssociation content-type.
So that ...
I can immediately begin assigning Contacts and Teams to my data without needing to first create a baseline set of Statuses/Roles before the feature is usable.
I know this is done when...
Nautobot 2.2 migrations include appropriate data migrations to create/update Statuses and Roles (similar to existing patterns for other content-types) that apply to ContactAssociation records.
Optional - Feature groups this request pertains to.

[ ] Automation
[ ] Circuits
[ ] DCIM
[ ] IPAM
[ ] Misc (including Data Sources)
[X] Organization
[ ] Plugins (and other Extensibility)
[ ] Security (Secrets, etc)
[ ] Image Management
[X] UI/UX
[ ] Documentation
[ ] Other (not directly a platform feature)

Database Changes
n/a
External Dependencies
n/a

What would be the names of some appropriate statuses and roles that we should populate via the data migration?

Open to others, but I think:
Status:

Primary
Secondary
Active

Role:

Administrative
Billing
Support
On site

Implemented by #5358.


Parquet Writer Ignores Statistics specification in WriterProperties

Describe the bug
The parquet writer does not respect the settings in WriterProperties for whether to compute statistics, and the max size of the computed statistics.
To Reproduce
Inspect code
Expected behavior
We should not have configuration options that have no effect

Update here: https://github.com/apache/arrow-rs/pull/2022 fixes the writer to respect the "do/don't compute stats", however the "max size of computed statistics" setting is still ignored, which is presumably why @tustvold  left it open.
@tustvold  do you mind if I break out the "max size of stats setting is ignored" into a separate ticket to make the current state of affairs clearer?

SGTM or feel free to modify this ticket directly

Follow on ticket is https://github.com/apache/arrow-rs/issues/2033


InvalidCastException for Nullable in dnxcore50 but not dnx451 (RC1)

Getting an InvalidCastException when using EntityFramework.MicrosoftSqlServer (7.0.0-rc1-final) but only in Core-CLR not Full-CLR.
Column definition is:
[ApprovedDate] [datetime2](7) NULL
Class definition is:
public DateTime? ApprovedDate { get; set; }
I found a similar issue at https://github.com/aspnet/EntityFramework/issues/2596 but unsure if it's related.
Full error shown below:
Microsoft.Data.Entity.Query.Internal.QueryCompiler: An exception occurred in the database while iterating the results of a query. System.InvalidCastException: Cannot cast from source type to destination type.   at System.Nullable'1<System.DateTime>.Unbox (object) <0x00060>   at (wrapper dynamic-method) object.lambda_method (System.Runtime.CompilerServices.Closure,Microsoft.Data.Entity.Storage.ValueBuffer) <0x000cd>   at Microsoft.Data.Entity.Query.EntityLoadInfo.Materialize () <0x00037>   at Microsoft.Data.Entity.Query.Internal.QueryBuffer.GetEntity (Microsoft.Data.Entity.Infrastructure.IKeyValue,Microsoft.Data.Entity.Query.EntityLoadInfo,bool) <0x000c3>   at Microsoft.Data.Entity.Query.ExpressionVisitors.RelationalEntityQueryableExpressionVisitor.CreateEntity<Portal.Models.Content> (Remotion.Linq.Clauses.IQuerySource,Microsoft.Data.Entity.Storage.ValueBuffer,int,Microsoft.Data.Entity.Query.QueryContext,Microsoft.Data.Entity.Metadata.IEntityType,bool,Microsoft.Data.Entity.ChangeTracking.Internal.KeyValueFactory,System.Func'2<Microsoft.Data.Entity.Storage.ValueBuffer, object>,bool,bool) <0x0016a>   at (wrapper dynamic-method) object.lambda_method (System.Runtime.CompilerServices.Closure,Microsoft.Data.Entity.Storage.ValueBuffer) <0x001ee>   at System.Linq.Enumerable/<CreateSelectIterator>c__Iterator10'2<Microsoft.Data.Entity.Storage.ValueBuffer, Portal.Models.Content>.MoveNext () <0x0017e>   at System.Linq.Enumerable.First<Portal.Models.Content> (System.Collections.Generic.IEnumerable'1<Portal.Models.Content>,System.Func'2<Portal.Models.Content, bool>,System.Linq.Enumerable/Fallback) <0x000af>   at System.Linq.Enumerable.FirstOrDefault<Portal.Models.Content> (System.Collections.Generic.IEnumerable'1<Portal.Models.Content>) <0x0005f>   at (wrapper dynamic-method) object.lambda_method (System.Runtime.CompilerServices.Closure,Microsoft.Data.Entity.Query.QueryContext) <0x00286>   at Microsoft.Data.Entity.Query.Internal.QueryCompiler/<>c__DisplayClass18_1'1<Portal.Models.Content>.<CompileQuery>b__1 (Microsoft.Data.Entity.Query.QueryContext) <0x00033>

I've been digging into this a bit more.  It appears that this is an issue w/ datetime2 and not datetime, the latter has no issues.  Also if I set the value to null it works and it only breaks when non-null.  Even though this is for Dapper and not EF, a similar issue is reported at https://github.com/StackExchange/dapper-dot-net/issues/295.

@mguinness your project works for me on Windows, are you running on OSX or Linux?

@rowanmiller - correct, I'm running it against the docker image microsoft/aspnet.  I'm only currently able to run it against the Mono based image, not the Core-CLR image due to the issue reported at https://github.com/aspnet/EntityFramework/issues/3637.

This is a duplicate of #2596
@mguinness this is a bug in Mono, not CoreCLR. You project passed just fine for me on Linux/OSX on CoreCLR (with workarounds for bugs that will be fixed in RC2)

Could anyone in the know do me a favour and take a quick look at my issue reported at http://stackoverflow.com/questions/36192263/ef7-datetime-specified-cast-is-not-valid and let me know if you think my issue is related to this bug? Although my issue is not a 100% match as reported here, it certainly seems to be similar as it relates to DateTime types in EF7 using mono on OSX and a migration to SQL Server.


Updated description to newest crate release

Hi Tobias,
I've updated the description and documentation to the new crates.io release.
I've also updated the read.me of my SPE3D with a screenshot, so that you can get a better insight.
Are you from Germany?
Thanks,
Robert

Hi Robert
Thanks for the update.
Yes, I'm from Germany. Living in Switzerland. Looks like you too.
Regards,
Tobias


Remove 4 old-style super() calls.

I found these while working on #8352. I'm not sure if py3 cleanups need a specific ticket, but I thought I would clean them up anyway.

@orf I think the commit message should just reference https://code.djangoproject.com/ticket/23919


Make PHP path optional

Hi! I don't have any local PHP binaries, all of my projects are running in docker containers only. Therefore, I have nothing what to set in the "PHP path" setting. It causes an error which means I can't do anything in the app 🙄

Well you can set a dummy path and it should just work but you will not have auto completion and app detection. So I wouldn't recommend using the app without having a php in the local machine

Why PHP can't be picked up from the container?

When you connect the project to a container, PHP is executed inside the container, but we cannot handle LSP without local PHP.
@saeedvaziry . Can we copy phpactor into the container like the client?

phpactor opens a port which needs to be exposed to the local machine so the desktop app can connect to it.
I am not sure if this will be possible without asking user to open port 54331 on the container.
@luanfreitasdev feel free to try this. if it works, it would be a good addition

I am not sure if this will be possible without asking user to open port 54331 on the container.

No, I think it is impossible without port forwarding.
And I don't think this is a good idea to copy anything to the container without asking the user.
I see in the phpactor docs that the recommended way is to install it globally. But the installation is via composer. So maybe we can make a kind of requirement for such users as me (who don't want to have any local versions of PHP): if you want to use it via docker only - make sure that phpactor is available in the container (via $PATH), and the required port is exposed (probably we need an option for phpactor port on Docker settings screen). What do you think?
This was something really annoying me in Tinkerwell: Couldn't start client Autocompletion Service. Now I understand the reason....


is   ever used?

class SpanMarkerTokenizer:
def init(self, tokenizer: PreTrainedTokenizer, config: SpanMarkerConfig, **kwargs) -> None:
self.tokenizer = tokenizer
self.config = config
    tokenizer.add_tokens(["<start>", "<end>"], special_tokens=True)
    self.start_marker_id, self.end_marker_id = self.tokenizer.convert_tokens_to_ids(["<start>", "<end>"])

Hi,
In the above code, you defined  and  for tokenizer but I couldn't find where they are used. Potentially intended for relation extraction?

nvm, it is used in data_collator!


Preprocessors import don't work for me

I try
import { scss } from 'styled-vue'

and getting
error  scss not found in 'styled-vue'  import/named

my package.json
"dependencies": {
    "cross-env": "^5.2.0",
    "nuxt": "^2.3.4"
  },
  "devDependencies": {
    "@nuxtjs/eslint-config": "^0.0.1",
    "babel-eslint": "^8.2.1",
    "eslint": "^5.0.1",
    "eslint-config-standard": ">=12.0.0",
    "eslint-loader": "^2.0.0",
    "eslint-plugin-import": ">=2.14.0",
    "eslint-plugin-jest": ">=21.24.1",
    "eslint-plugin-node": ">=7.0.1",
    "eslint-plugin-promise": ">=4.0.1",
    "eslint-plugin-standard": ">=4.0.0",
    "eslint-plugin-vue": "^5.0.0",
    "node-sass": "^4.11.0",
    "nodemon": "^1.18.9",
    "pug": "^2.0.3",
    "pug-plain-loader": "^1.0.0",
    "sass-loader": "^7.1.0",
    "styled-vue": "^0.1.4"
  }

@flexscss Having the same issue in my nuxt.js project. How did you resolve it?


Include htmlspecialchars in list of escaping functions.

The PHP function htmlspecialchars is currently not recognized as a valid escaping function.
The function "converts special characters into HTML entities" (http://php.net/manual/en/function.htmlspecialchars.php).
It is actually what esc_textarea() is built upon.
It should be added to the list of escaping functions to be a valid way of getting rid of unneeded "Expected next thing to be an escaping function" errors.

What's your use case for using htmlspecialchars() instead of one of the esc_*() functions?

@johnbillion we are using htmlspecialchars() in one place because of the issue detailed here: https://github.com/woocommerce/woocommerce/issues/9287
And much more briefly summarised as esc_attr does not double encode here: https://github.com/woocommerce/woocommerce/commit/cf54ea8fc055e079dc956889700af1c7cf614246

The question is less what the use case is, and more that it is a valid escaping function inbuilt in PHP.
I would like to add my +1 to this "request".
If anyone is interested in use cases, this particular case involves using WPCS in a project that... is not built on WP.
Yes, it is clear to me that WPCS was made and will always be made for and with WP in mind, yet, this is my exact use case :)
(which might be argued to be "wrong", but still I would profit from htmlspecialchars being recognised, and agree with @thenbrent that it makes sense to include, unless concerns could be presented to not do so).


Problem while sending sendgrid mail through angular2-meteor

Hello,
I am using "angular2-meteor": "0.7.0", when we sending mail through sengrid mail API from meteor client, getting below error message -
“XMLHttpRequest cannot load https://api.sendgrid.com/v3/mail/send. Response to preflight request doesn't pass access control check: The 'Access-Control-Allow-Origin' header has a value 'https://sendgrid.api-docs.io' that is not equal to the supplied origin. Origin 'http://www.spiderexpress.net' is therefore not allowed access.”
As per sendgrid instructions sendgrid not allowing to send mail from client end.
So please elaborate procedures to send mail from angular2-meteor server either by SMTP email or through API, because I didn't found any documentation on - https://angular-meteor.com/angular2
Please see print screen image of error message while submitting and sending contact form detail through sengrid.

Thanks,
Anshdeep Verma

There's some meteor specific discussion about this issue at: https://forums.meteor.com/t/how-to-fix-cors-access-control-allow-origin-error-in-meteor-app/1896/21
Consider the Meteor built in email api: https://docs.meteor.com/api/email.html
I don't think it is specific to the angular-meteor package.

closing due to inactivity and cleanup after tons of new updates in the recent month.
Feel free to open a new issue if you are still affected .


add junit xml to circle ci test output

This gives us a bit more detail when circle runs our tests.  Most notably, we get timing information for each specs2 example.

does this still blow the stack or was that a one-off?

don't know, let's keep our eyes open for this problem as it was worrisome.
The branch has been merged into master, closing this PR - @yusefnapora , maybe rebase on master?


[Facebook] Error while trying to download videos

DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE

[X] I understand that I will be blocked if I intentionally remove or skip any mandatory* field

Checklist

[X] I'm reporting that yt-dlp is broken on a supported site
[X] I've verified that I'm running yt-dlp version 2023.07.06 (update instructions) or later (specify commit)
[X] I've checked that all provided URLs are playable in a browser with the same IP and same login details
[X] I've checked that all URLs and arguments with special characters are properly quoted or escaped
[X] I've searched known issues and the bugtracker for similar issues including closed ones. DO NOT post duplicates
[X] I've read the guidelines for opening an issue
[X] I've read about sharing account credentials and I'm willing to share it if required

Region
France
Provide a description that is worded well enough to be understood
Hello,
I'm trying to download videos from a Facebook page. I used the share function and get this URL: https://fb.watch/m7pZtLqJ2I/
But when I'm trying to download the video, I've got a message saying "ERROR: [facebook]<PHONE_NUMBER>872226: No video formats found!…".
Are there any issues with Facebook downloads and the latest version of yt-dlp?
Thanks and have a good day.
Provide verbose output that clearly demonstrates the problem

[X] Run your yt-dlp command with -vU flag added (yt-dlp -vU <your command line>)
[ ] If using API, add 'verbose': True to YoutubeDL params instead
[X] Copy the WHOLE output (starting with [debug] Command-line config) and insert it below

Complete Verbose Output
[debug] Command-line config: ['-vU', '--add-metadata', 'https://fb.watch/m7pZtLqJ2I/']
[debug] Encodings: locale utf-8, fs utf-8, pref utf-8, out utf-8, error utf-8, screen utf-8
[debug] yt-dlp version<EMAIL_ADDRESS>[b532a3481] (debian*)
[debug] Python 3.11.4 (CPython aarch64 64bit) - Linux-4.19.157-perf+-aarch64-with-glibc2.37 (OpenSSL 3.0.9 30 May 2023, glibc 2.37)
[debug] exe versions: ffmpeg 5.1.3-2 (setts), ffprobe 5.1.3-2, rtmpdump 2.4
[debug] Optional libraries: Cryptodome-3.11.0, brotli-1.0.9, certifi-2022.09.24, mutagen-1.46.0, pyxattr-0.8.1, sqlite3-2.6.0, websockets-10.4
[debug] Proxy map: {}
[debug] Loaded 1855 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Available version<EMAIL_ADDRESS>Current version<EMAIL_ADDRESS>yt-dlp is up to date<EMAIL_ADDRESS>[generic] Extracting URL: https://fb.watch/m7pZtLqJ2I/
[generic] m7pZtLqJ2I: Downloading webpage
[redirect] Following redirect to https://www.facebook.com/reel/1347156282872226/
[facebook:reel] Extracting URL: https://www.facebook.com/reel/1347156282872226/
[facebook] Extracting URL: https://m.facebook.com/watch/?v=1347156282872226&_rdr
[facebook]<PHONE_NUMBER>872226: Downloading webpage
ERROR: [facebook]<PHONE_NUMBER>872226: No video formats found!; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1560, in wrapper
    return func(self, *args, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1709, in __extract_info
    return self.process_ie_result(ie_result, download, extra_info)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1768, in process_ie_result
    ie_result = self.process_video_result(ie_result, download=download)
                ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 2732, in process_video_result
    self.raise_no_formats(info_dict)
  File "/usr/lib/python3/dist-packages/yt_dlp/YoutubeDL.py", line 1073, in raise_no_formats
    raise ExtractorError(msg, video_id=info['id'], ie=info['extractor'],
yt_dlp.utils.ExtractorError: [facebook]<PHONE_NUMBER>872226: No video formats found!; please report this issue on  https://github.com/yt-dlp/yt-dlp/issues?q= , filling out the appropriate issue template. Confirm you are on the latest version using  yt-dlp -U

Duplicate of #7469
Fixed by bb5d84c9d2f1e978c3eddfb5ccbe138036682a36
Install the master branch with pip or get the nightly build (yt-dlp --update-to nightly)


Feature request: Add Electroncash to TAILS

The Bitcoin Cash community desperately needs a safe way to store and manage their coins, without worrying about getting hacked. And not everyone has access to or confidence in hardware wallets. Therefore it would be great if Electroncash made it into the official TAILS distribution, like Electrum did.

:+1:

Note also here, may be out dated, should push for inclusion if we get this sorted out: http://www.openbitcoinprivacyproject.org/tails-linuxcrypto-currency-client-compatibility-tracker/

I would love to have Electron Cash in Tails, I have been using Electrum in Tails as my safe wallet for some time now, and I wish I could do the same for Bitcoin Cash. I would be happy to fund some kind of bounty to make this happen, or to do the coding myself. I guess we may need to talk with the Tails guys, I would expect they would not be happy about having both versions at the same time.

I would love to have Electron Cash in Tails, I have been using Electrum in Tails as my safe wallet for some time now, and I wish I could do the same for Bitcoin Cash. I would be happy to fund some kind of bounty to make this happen, or to do the coding myself. I guess we may need to talk with the Tails guys, I would expect they would not be happy about having both versions at the same time, unless they shared most dependencies.

whats the issue now

The way I see it the issue shouldn't be on Electron Cash, but on Tails. I will try to contact Tails and see if this is possible, and if they need something from Electron Cash I will refer them to this issue.

OK so I contacted the Tails dev team and the unanymous response is that Tails won't have multiple Bitcoin wallets. However they are adding a feature in 2018 that will allow users to install any package available in Debian.
It's important for Electron Cash to be packaged in Debian, that's a clear prerequisite. Is anybody working on that @fyookball?
This is the thread in the tails-dev mailing list: https://mailman.boum.org/pipermail/tails-dev/2017-November/011852.html


Esc remapping

I want to do
inoremap jk <Esc>
I followed the docs about user custom key remappings and inserted the following in brackets.json:
"vimderbar.mappings": [
        {"keys": "jk", "toKeys": "Esc",  "mode": "insert"}
    ]

When I press jk in insert mode, jk is deleted but vimderbar still stays in insert mode. Do I miss something here or is this a bug?

Just set this up, in case anyone could still use an answer-- try <Esc> with brackets included:
"vimderbar.mappings": [{ "keys": "jk", "toKeys": "<Esc>", "mode": "insert" }]
I also map "kj" to the same thing, so I can just hit both keys simultaneously to exit.


Interfaces are updated event though it's not needed

Hi,
Due to some inconsistencies between the following lines :
https://github.com/netdevopsbr/netbox-proxbox/blob/v0.0.5/netbox_proxbox/proxbox_api/updates/virtual_machine.py#L310
https://github.com/netdevopsbr/netbox-proxbox/blob/v0.0.5/netbox_proxbox/proxbox_api/updates/virtual_machine.py#L327
The plugin detect that it should update the interfaces.
We should either force .lower() or .upper() on both to avoid false positive.
Cheers.

Hi @MrBE4R could you please review if it is ok like the way I did?
I kept the regex considering lower case and if it matches, I use .upper() as I think it may be better readable.
Thank you already!

Hi @emersonfelipesp that's what I did to correct our instance.
Cheers


Add travis/fabric8 CI support for PR building

We need to have travis or fabric8 CI support for PRs. Let's go with fabric8. We already have some experience in this with Kompose, we can reuse whatever is applicable.

:+1: for fabric8 CI
:-1: for travis

We are fine with Travis + Semaphore for now, do we still need this one here?

I think this was created when we had no CI setup so this is kinda old so we should close this one!


APS-521 show placement app and match request withdrawal reason in timeline

This PR updates all 4 withdrawal timeline event descriptions to use consistent formatting. Examples below:

LGTM - made a comment about formatting, but looks like that's been addressed in a later commit

Yep, i didn't have the energy to reset and rewrite it all for a colon and quotation marks :)


macOS Sierra broken notification suppression

It seems as though setting Hammerspoon to Awake no longer is suppressing notification properly.  I tried replacing
hs.execute("launchctl unload -w /System/Library/LaunchAgents/com.apple.notificationcenterui.plist")

with...
hs.execute("defaults -currentHost write ~/Library/Preferences/ByHost/com.apple.notificationcenterui doNotDisturb -boolean true && killall NotificationCenter")

but that doesn't appear to have worked either.  I'm also noticing that hammerspoon isn't auto reloading the config either, but that's not as big of an issue.

Thanks, I'll dig into this sometime in the next couple weeks.


Getting-started guides?

Summary
I'm trying to set up a fresh project and wonder if there are any templates for the 'sibling' repo. (I have the fortunate position of vaguely remembering how this should work, and still I'm stuck!)
By banging my head against the validator, I eventually came up with a dummy warehouse config (uselessly passes the validator):
{
  "arthur_settings": {},
  "data_warehouse": {},
  "type_maps": {},
  "object_store": {
    "s3": {
      "bucket_name": "load-bucket",
      "iam_role": "arn:aws:iam::123:role/NotARole"
    }
  },
  "resources": {
    "key_name": "my-fake-ssh-key",
    "VPC": {
      "region": "us-east-1",
      "account": "123",
      "name": "MyVPC",
      "public_subnet": "PublicSubnet",
      "whitelist_security_group": "sg-123"
    },
    "DataPipeline": {
      "role": "NotARole"
    },
    "EC2": {
      "instance_type": "m5.4xlarge",
      "image_id": "",
      "public_security_group": "foobar",
      "iam_instance_profile": "instanceprofile"
    },
    "EMR": {
      "master": {
        "instance_type": "m5.4xlarge",
        "managed_security_group": "foobar"
      },
      "core": {
        "instance_type": "m5.4xlarge",
        "managed_security_group": "foobar"
      },
      "release_label": "emr-5.29.0"
    }
  },
  "etl_events": {}
}

Now I need to set up my prefix, with e.g. bootstrapping scripts as well as sync output. I guess this is upload_env.sh?
Anyway, if I'm missing existing assets, I'd love to use them -- and if not, it would be good to know, so I can write down what I do!
Details
At the moment I'm just trying to use extract.
Labels Please set the label on the issue so that

you pick bug fix, feature, or enhancement
you pick one of the components of Arthur, such as component: extract or component: load

I don't think I have 'edit' rights on the labels

Just for testing, I created a config directory inside the arthur-redshift-etl directory. Then I built a minimal set of config files.
Here's a PR that makes this easier: #241
mkdir config
export DATA_WAREHOUSE_CONFIG=`pwd`/config

cp etc/aws_template.yaml config/aws.yaml
cp etc/warehouse_template.yaml config/warehouse.yaml
cp etc/credentials.sh.template config/credentials.sh

Take a look at the templates. The aws.yaml config file needs to be updated based on outputs from the CloudFormation stack.
Starting Arthur now:
bin/run_arthur.sh

This will show some settings. Take a look at the rest:
arthur.py settings

And now make sure that S3 has the ETL code:
upload_env.sh

Without changes to the template this fails, of course, but  you'll update aws.yaml.
Finding bucket name and prefix in configuration...

An error occurred (AccessDenied) when calling the ListObjectsV2 operation: Access Denied
Check whether the bucket "object-store" exists and you have access to it!

Then create a table design file:
arthur.py bootstrap_sources webapp

This also fails because you need a credentials file with the connections, see prompts in config/credentials.sh.
After you've setup the credentials (with connection strings), don't forget to copy the file to s3.
Once you have a design file, upload the local schemas to S3:
arthur.py sync

And now run one of:
arthur.py extract
install_extraction_pipeline.sh

Let me know which hurdles you encounter and I'll try to get them resolved.

Thank you for the guidance!

This worked great. The one hiccup was: credentials.sh seems to be uploaded out-of-band, right? Neither upload_env nor arthur.py sync end up copying it?

Yes, unfortunately. You'll have to create and upload the credentials.sh file manually.


Possible bug: Avocado example has negative texture co-ordinates

Reproduce with:
fn main() {
    let gltf = gltf::Import::from_path("glTF-Sample-Models/2.0/Avocado/glTF/Avocado.gltf").sync().unwrap();
    let mesh = gltf.meshes().nth(0).unwrap();
    let primitive = mesh.primitives().nth(0).unwrap();
    let mut tex_coords = vec![];
    match primitive.tex_coords(0).unwrap() {
        gltf::mesh::TexCoords::U8(iter) => {
            for x in iter {
                tex_coords.push([x[0] as f32 / 255.0, x[1] as f32 / 255.0]);
            }
        },
        gltf::mesh::TexCoords::U16(iter) => {
            for x in iter {
                tex_coords.push([x[0] as f32 / 65535.0, x[1] as f32 / 65535.0]);
            }
        },
        gltf::mesh::TexCoords::F32(iter) => {
            for x in iter {
                tex_coords.push([x[0], x[1]]);
            }
        },
    }
    println!("{:?}", tex_coords);
}

Note that all the x[1] values are negative but otherwise valid in unit range.

Response from @lexaknyazev on Gitter:

UV coordinates wrapping follows OpenGL. Clients should use wrapping mode from sampler object (which could be omitted when default).

It looks like this isn't a bug after all.


Implemented cellpose2.0 model zoo and training

Cellpose training is implemented, cellpose segmentation model choices is updated to cellpose2.0 (model zoo), cellpose documentation is updated.

Should I still review this PR, considering https://github.com/BodenmillerGroup/steinbock/pull/218? @Milad4849 @nilseling


MudBlazorThemeManager.css is overriding the color and the background-color of all .mud-input elements

MudBlazor.ThemeManager version: 1.0.7
The staticwebassets/MudBlazorThemeManager.css that is packaged in the MudBlazor.ThemeManager Nuget package version 1.0.7 contains the following rule which is applied to all the .mud-input elements.
.mud-thememanager-color-picker .mud-paper, .mud-input {
    color: #424242;
    background-color: #FFFFFF;
}

Source: https://nuget.info/packages/MudBlazor.ThemeManager/1.0.7
However, I think the intent is to only apply it to descendants of .mud-thememanager-color-picker elements.
I believe that it's the CSS that is packaged in the Nuget package that is wrong; because when I locally build the ThemeManager, sass generates the correct CSS:
.mud-theme-manager-color-picker .mud-paper, .mud-theme-manager-color-picker .mud-input {
    color: #424242;
    background-color: #fff
}

I believe that it's the CSS that is packaged in the Nuget package that is wrong; because when I locally build the ThemeManager, sass generates the correct CSS:

Ohhh...I just noticed that I was building at the wrong branch:

The main branch I was building considerably changed from the code from which v1.7.0 was built from.
v.1.7.0 seems to have been built from the hotfix branch; which has the faulty CSS:
MudBlazorThemeManager.css.mud-thememanager-color-picker .mud-paper, .mud-input {
   color: #424242;
   background-color: #FFFFFF;
}

Hi.
I believe this was fixed in this commit https://github.com/MudBlazor/ThemeManager/commit/a2324decea986d27d0ebd8f685ce5b6067c9fdf1


[Feature Request] Lazy within_unsorted

Currently, within_unsorted returns a Vec of all points within the specified radius.
I want to be able to stop the search for these points prematurely if a yielded value fulfills a certain condition, which would require a version of within_unsorted that returns an Iterator that lazily finds the next point when .next is called.
Would something like this be possible to implement?

I think this could be done in a fairly naive way by simply getting rid of the collect() at https://github.com/sdd/kiddo/blob/master/src/kiddo.rs#L416, but I don't think this would be the "laziest" way of doing things due to the pre-population of the BinaryHeap here https://github.com/sdd/kiddo/blob/master/src/kiddo.rs#L326. I could envisage an approach that used something like the https://crates.io/crates/generator crate rather than a while loop to do this in a fully lazy way - this is an approach I've used successfully in another project.


[Torch-frontend]Handle PrimListUnpackOp when op result num is not equal to list length

As title.

Closed because change has been submitted to upstream.


ci(bigtable): clean up the unwanted files and dirs from the conforman…

…ce testing

This change is

/gcbrun

My bad, without the flag -modcache , the go clean does nothing.

/gcbrun

/gcbrun


kedro azureml run does not work on an AzureML compute instance

I cannot get the getting started guide in the docs to work on an AzureML compute instance.
I have authenticated using: azure login --use-device-code.
When I run the command kedro azureml run I get the following error:
DefaultAzureCredential failed to retrieve a token from the included credentials.
chained.py:100
Attempted credentials:
EnvironmentCredential: EnvironmentCredential authentication is unavailable. Environment variables are not fully configured.

So it starts to redirect me to an interactive login, but this does not work on a compute instance since the redirection port is not accessible.

We're falling back to InteractiveCredentials here: https://github.com/getindata/kedro-azureml/blob/94f3419fe6c546dc1ba3654526d59a5142850606/kedro_azureml/client.py#L31
We'll be happy to accept a PR that will perform an optional fallback to DeviceCodeCredential https://learn.microsoft.com/en-us/python/api/azure-identity/azure.identity.devicecodecredential?view=azure-python
As per Microsoft's documentation, our default - which is DefaultAzureCredential (https://learn.microsoft.com/en-us/python/api/azure-identity/azure.identity.defaultazurecredential?view=azure-python) should fallback to the one used with AZ CLI, maybe there's an issue on their side:

The identity it uses depends on the environment. When an access token is needed, it requests one using these identities in turn, stopping when one provides a token:

A service principal configured by environment variables. See EnvironmentCredential for more details.

An Azure managed identity. See ManagedIdentityCredential for more details.

On Windows only: a user who has signed in with a Microsoft application, such as Visual Studio. If multiple identities are in the cache, then the value of the environment variable AZURE_USERNAME is used to select which identity to use. See SharedTokenCacheCredential for more details.

The user currently signed in to Visual Studio Code.

The identity currently logged in to the Azure CLI.

The identity currently logged in to Azure PowerShell.

Thanks for the response. I might have some time to play around with this later this week. I will then try to see if this fixes the issue if so I will make a PR.

Looking forward to it! :)

Ok, I did a deep dive into the problem, and I found the issue. AzureML compute instance set by default the MSI_ENDPOINT and MSI_SECRET environment variables for on compute instances. Even if this managed identity has no rights. The problem is that the DefaultAzureCredential will prioritize managed identities over CLI logins. This would be fine if DefaultAzureCredential would validate if it selected strategy would work. Instead, it greedily picks the first one that could work, and if it does not work, it does not try the others. So, in this case, it finds the MSI_ENDPOINT env variable, so it decides to go for the AzureMLCredential when this one fails to obtain to get the token, it no longer checks the other options. So in this code:
 try:
        credential = DefaultAzureCredential()
        # Check if given credential can get token successfully.
        credential.get_token("https://management.azure.com/.default")
    except Exception:
        # Fall back to InteractiveBrowserCredential in case DefaultAzureCredential not work
        credential = InteractiveBrowserCredential()

We will always fall back to the InteractiveBrowserCredential.
Sadly, the InteractiveBrowserCredential also does not work since azure compute instances are headless.
We could replace InteractiveBrowserCredential with DeviceCodeCredential. This works, but an annoying side effect is that we needed re-login every time we submit a job.
So, I believe the best course of account would be to check if you are on an AzureML compute instance, and if this is the case, tell DefaultAzureCredential to ignore the managed identity credential. (ManagedIdentityCredential does this by checking for the presence of the MSI_ENDPOINT environment variable`).
What do you think @marrrcin ? I have create a PR with proposed solution

fixed by: #47


Missing environment variables within Python kernel started from Hydrogen

Description
When starting a Python kernel through Hydrogen, the environment variables are different from those of the Python shell or IPython / Jupyter notebooks.
In particular variables that are defined in .bash_rc or similar seem to be ignored.
This is especially problematic for things like LD_LIBRARY_PATH or DYLD_LIBRARY_PATH which may be needed for the execution of other programs.
Steps to Reproduce

Define environment variables, e.g., via export TEST='HELLO WORLD' in .bash_rc
from Python shell, IPython or Jupyter notebookimport os
os.environ['TEST']
>>>'HELLO WORLD'

from Python kernel started via Hydrogen in Atom:import os
os.environ['TEST']
KeyError: 'TEST'

Versions
OS version:
macOS Catalina 10.15.6 (19G2021)

atom --version

Atom    : 1.50.0
Electron: 5.0.13
Chrome  : 73.0.3683.121
Node    : 12.0.0

apm --version

apm  2.5.0
npm  6.14.5
node 10.20.1 x64
atom 1.50.0
python 2.7.16
git 2.27.0

Hydrogen version:

[Your Hydrogen's version]
Plugins
Have you installed and activated any of the Hydrogen plugins below ?

[x] hydrogen-python
[x] Hydrogen Launcher
[ ] Data Explorer

Expected behavior
Same as from Python shell, IPython or Jupyter notebook

@mlangiu For atom (& Hydrogen) to access your environment variables, you have to start atom from a shell environment containing those environment variables:
Example, if you type in your shell:
$ export MYVAR=MYVALUE
$ atom .

You should be able to access your env variable from within Hydrogen:
import os
os.environ['MYVAR']

This should print 'MYVALUE'
This is the same mechanism which allows you to access various conda environment with atom: you have to activate the conda env in your shell (modifying it env variables) before starting atom from this shell.

Ok got it, unfortunately the LD_LIBRARY_PATH and DYLD_LIBRARY_PATH still don't show up. However, that appears to be due to newer MacOS versions actively trying to prevent this and doesn't seem to be an issue of Hydrogen, so I'll close this issue.
Thanks for your help!


[JSContext] Add a setContextName in JavaScriptCore JSContext's to allow setting JSContext names

This address https://github.com/facebook/react-native/issues/1083
by letting you set any context's name from JavaScript.
This makes certain things easier to debug.
The reason this is implemented as a native hook instead of going
over the bridge is that it only applies to JSC JSContexts and the
context is needed in that case.
Since this won't necessarily be set in other Executors, you should
only call this by checking to see if it defined first.

Since JavaScript Executors are now bridge modules, @ide wrote proposed a slightly cleaner solution on #2144


[AMBARI-24552] Storm service-check fails due to missung StringUtils c…

…lass definition (dsen)
What changes were proposed in this pull request?
Added the relocation pointing for common-lang classes
How was this patch tested?
manually

Closing as this is 3 months old without a review and there are file conflicts. Please re-open and resolve conflicts if this is still a change which should be included in the project.


Posix not available under windows

Posix doesn't exist under windows, any reason why it's used instead of os?

No season, just a typo :)
Fixed in master, fix will be included in upcoming 2.0 release. Afaik DipDup has no Linux dependencies but we have not tested it in Windows environments so the best solution would be to use Docker or WSL.


Extraction failed

Failed to extract this url https://www.marca.com/futbol/mercado-fichajes/2021/05/31/60b4a508268e3efa658b45b8.html

Resolved since v5.0.0rc1


Can we extend when input resolution(voxel_size) is different in xyz dimensions?

I see both gt_dist and pred_dist are multiplied with voxel_size after, what if voxel size is different on xyz dimensions?

Yes! First of all, the cuda kernel is independent of the voxel resolutions. It only thinks of a grid as cells with integer-valued indices. Second, the multiplication of gt_dist with voxel_size of 0.2 is actually a multiplication with $\frac{\sqrt{0.2^2 + 0.2^2 + 0.2^2}}{\sqrt{1^2 + 1^2 +1^2}}$. You could instead have different resolutions with different axes and multiply gt_dist and pred_dist with $\frac{\sqrt{v_x^2 + v_y^2 + v_z^2}}{\sqrt{1^2 + 1^2 +1^2}}$. Let me know if you try this!


Ensure all refs go to the outer-most element

Found this with Switch when I wanted to use an IntersectionObserver with it but it didn't work because of the VisuallyHidden. But for consistency we should make all refs in RAC components go to the outer-most element.

@snowystinger well for textfields etc. that's already the case, but for switch/radio/checkbox the input is internal (visually hidden), not rendered by the user. So If they want the input element they'd need to use ref.current.querySelector('input') or some such.

Hmmm... possibly we should open that to have an inputRef prop so it's a little more reliable/easy to get at, many of those form libraries seem to want access to it...


Feature/programming exercise/task specific hints + improved instruction analysis

Checklist

[x] I tested the changes and all related features on the test server https://artemistest.ase.in.tum.de.
[x] I documented my source code using the JavaDoc / JSDoc style.
[x] ~I added integration test cases for the server (Spring) related to the features~
[x] I added integration test cases for the client (Jest) related to the features
[x] I added screenshots/screencast of my UI changes
[x] I translated all the newly inserted strings

Motivation and Context

Atm exercise hints can only be added the whole programming exercise.
However in many cases it would be more useful to directly assign a hint to a task.
Description

This PR will add functionality for assigning hints to tasks of an exercise:

Domain Command for adding task specific hints
Auto completion in editor for adding hints
Tasks will be rendered in HTML only for failed tests

Also it will improve the current problem statement analysis that is available in the programming-exercise-editable-instruction.component:

Show warning in line number in editor (see screenshot)

:information_source: Please read before reviewing:

The markers are not working well for, which is why 'only' the line number is marked and not the exact text.
There is some code that was just moved around in the domain-multi-option command which is not new and does not have tests (we don't have a concept on how to test the markdown-editor, I added this as an action item to our meeting)

Status:

[x] Add domain command for inserting hints
[x] Integrate hints into task.extension parsing
[x] Integrate hints into task.component render
[x] Improve instruction analysis
[x] Update tests
[x] Update docs
[x] Write new tests

Steps for Testing

Adding hints to tasks:

Log in to ArTEMiS
Navigate to Course Administration
Choose edit for a programming exercise that has hints
Use the task domain command to add a task
Replace the sample hintIds in the task template with a real hint id (e.g. by using the hint domain command)
Switch to preview: The hint should now be rendered at the end of the task if it's failing

Analyzing the problem statement:

Log in to ArTEMiS
Navigate to Course Administration
Choose edit for a programming exercise that has hints & test cases
Do something wrong in the problem statement, e.g. add a test case or hint that does not exist
=> There should be a warning on the appropriate line numbers

Screenshots

Adding task specific hints:

Rendering in HTML for failed tasks:

Line number analysis:

Really great work! I really like the code and the feature itself.
I only have one small issue: As I am adding hints in the markdown and pressing Strg+Space, or just receiving general suggestions, it would be nice to get hints suggested by their name and not their ID. E.g. for a hint {name="Great Hint", id="12"}, if I start typing "Gre..." I should get the actual hint suggested and not only tasks starting with "Gre...". If this is possible, it would be nice to have it, otherwise I have no complaints.

Thanks for the review! Good catch, I will look into it.

Really great work! I really like the code and the feature itself.
I only have one small issue: As I am adding hints in the markdown and pressing Strg+Space, or just receiving general suggestions, it would be nice to get hints suggested by their name and not their ID. E.g. for a hint {name="Great Hint", id="12"}, if I start typing "Gre..." I should get the actual hint suggested and not only tasks starting with "Gre...". If this is possible, it would be nice to have it, otherwise I have no complaints.

Thanks for the review! Good catch, I will look into it.

It doesn't seem to be possible, appearently there is no option to search for something else than the value that is inserted (here the id) :( https://github.com/ajaxorg/ace/wiki/How-to-enable-Autocomplete-in-the-Ace-editor
There is however the possibility to press CTRL+Space to see all available completions.
I made some performance improvements to the instruction analysis.

I just tested this feature on the test server and it looks good to me.
One remark: Do we really need a Cancel button? I would leave this out and allow the user to simply click somewhere else than the popup to close the dialog.
Or, I would at least rename the button to Close.

I just tested this feature on the test server and it looks good to me.
One remark: Do we really need a Cancel button? I would leave this out and allow the user to simply click somewhere else than the popup to close the dialog.
Or, I would at least rename the button to Close.

Thanks for your feedback!
I removed the Cancel button and added the option to close the modal on click in the background.


quiche(http3) is slower than HTTP2

The average request_time value of the http3 is quite higher than HTTP2's in our prodution enviroment for USA users.
In the document introduction , the response time of http3 will be more stable and lower than TCPs'. But in our real prodution enviroment(USA/AU/EU users), it is diffrent. While the avg response time of http2 is 0.037s , the avg response time of quiche(http3) is 0.549s. Is the UDP flow set low priority by most telecom providers?
version b3c73e3dc64e7fa7360696100e5cba6d51547ec + nginx patch  https://github.com/cloudflare/quiche/tree/master/nginx

HTTP3 is always  slow

By the way , another nginx patch I have tried which can reduce value the request avg response :
nginx-1.24.0 with threads support   +  patch of kn007
https://github.com/kn007/patch/blob/master/nginx_with_quic.patch

Thanks for the report.
Can you explain a bit more about how you measure response time please?
Are you measuring timings over the same page? Or at least pages of roughly equal size? What is the page size?

Server side request_time isn't a very accurate measure because once data is handed off to the kernel the application loses visibility, especially true for TCP.
Have you confirmed these results using client-side measurements?

Server side request_time isn't a very accurate measure because once data is handed off to the kernel the application loses visibility, especially true for TCP.
Have you confirmed these results using client-side measurements?

No using client-side measurements yet, just server-side request_time. But I have found that the speed of HTTP3 has less advantage compared to HTTP2.
In some sitations : some of our employees have  encountered that our web page loading slowly . Then found that some small resources (<100kB) using HTTP3 downloaded even > 60s in F12 console .

After switch to offical  nginx-quic , it the latency becomes more stable and lower , very close to HTTP2's.

Hello, I encountered some problems when configuring the quic service of NGINX. My configuration is the same as the official website, but I still cannot use the quic protocol when accessing the server， and h2 protocol is still used. This is the configuration:
server {
# Enable QUIC and HTTP/3.
listen 443 quic reuseport;
server_name  test.cn;
    # Enable HTTP/2 (optional).
    listen 443 ssl http2;

    ssl_certificate      /usr/local/nginx/conf/cert/test.pem;
    ssl_certificate_key  /usr/local/nginx/conf/cert/test.key;

    # Enable all TLS versions (TLSv1.3 is required for QUIC).
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;

    # Add Alt-Svc header to negotiate HTTP/3.
    add_header alt-svc 'h3=":443"; ma=86400';

}

Hello, I encountered some problems when configuring the quic service of NGINX. My configuration is the same as the official website, but I still cannot use the quic protocol when accessing the server， and h2 protocol is still used. This is the configuration: server { # Enable QUIC and HTTP/3. listen 443 quic reuseport; server_name test.cn;
    # Enable HTTP/2 (optional).
    listen 443 ssl http2;

    ssl_certificate      /usr/local/nginx/conf/cert/test.pem;
    ssl_certificate_key  /usr/local/nginx/conf/cert/test.key;

    # Enable all TLS versions (TLSv1.3 is required for QUIC).
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;

    # Add Alt-Svc header to negotiate HTTP/3.
    add_header alt-svc 'h3=":443"; ma=86400';

}

Maybe you could try the firefox or EDGE rather than Chrome . I think the browser  manages the protocols  swithing .

Hello, I encountered some problems when configuring the quic service of NGINX. My configuration is the same as the official website, but I still cannot use the quic protocol when accessing the server， and h2 protocol is still used. This is the configuration: server { # Enable QUIC and HTTP/3. listen 443 quic reuseport; server_name test.cn;
    # Enable HTTP/2 (optional).
    listen 443 ssl http2;

    ssl_certificate      /usr/local/nginx/conf/cert/test.pem;
    ssl_certificate_key  /usr/local/nginx/conf/cert/test.key;

    # Enable all TLS versions (TLSv1.3 is required for QUIC).
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;

    # Add Alt-Svc header to negotiate HTTP/3.
    add_header alt-svc 'h3=":443"; ma=86400';

}

Maybe you could try the firefox or EDGE rather than Chrome . I think the browser manages the protocols swithing .

Thank you very much for your reply. However, the latest version of NGINX has started to support the quic protocol, and I have successfully configured it.
I have a new question for you, that is, what test tool was used in the picture above to test out?

Hello, I encountered some problems when configuring the quic service of NGINX. My configuration is the same as the official website, but I still cannot use the quic protocol when accessing the server， and h2 protocol is still used. This is the configuration: server { # Enable QUIC and HTTP/3. listen 443 quic reuseport; server_name test.cn;
    # Enable HTTP/2 (optional).
    listen 443 ssl http2;

    ssl_certificate      /usr/local/nginx/conf/cert/test.pem;
    ssl_certificate_key  /usr/local/nginx/conf/cert/test.key;

    # Enable all TLS versions (TLSv1.3 is required for QUIC).
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;

    # Add Alt-Svc header to negotiate HTTP/3.
    add_header alt-svc 'h3=":443"; ma=86400';

}

Maybe you could try the firefox or EDGE rather than Chrome . I think the browser manages the protocols swithing .

Thank you very much for your reply. However, the latest version of NGINX has started to support the quic protocol, and I have successfully configured it. I have a new question for you, that is, what test tool was used in the picture above to test out?

First you should configure your nginx to using json log output
   log_format compression escape=json '{"@timestamp":"$time_iso8601",'
                           '"ip":"$remote_addr","host":"$http_host",'
                           '"rq":"$request","rqb":"$request_body",'
                           '"st":"$status","size":$body_bytes_sent,'
                           '"ua":"$http_user_agent","ck":"$http_cookie",'
                           '"cost":"$request_time",'
                           '"ref":"$http_referer",'
                           '"xff":"$http_x_forwarded_for",'
                           '"ust":"$upstream_status",'
                           '"uip":"$upstream_addr",'
                           '"ut":"$upstream_response_time"}';

    access_log  logs/access.log  compression;

The second , Using AliBaba cloud SLS service (logtail tool , you could install in your server,not only the Alibaba could server ) to collect the nginx log data.

Using the data to draw your graph you need . You could use it like SQL. The Experience is like Kibana.

'"cost":"$request_time",'  To analyze the "cost" column in minutes/hour average you can find something.

Hello, I made the same effect with you through the local self-matching server, QUIC protocol download speed is indeed not as good as TCP protocol, but its upload speed is better than TCP protocol, I would like to ask you know the reason?

I suspect it's a congestion control issue, I think it would be faster if BBR was used, especially when the RTT is very high.


expand ToDtype to support multiple conversions at once

Closes #6697.

@datumbox You were right. I made it too complex for no apparent reason. I simplified. PTAL.


Badge Background and Badge Pill styles are missing

Operating System: Windows
Browser: Chrome (latest version)
Bootstrap version: 5.0.0-alpha1
Using the classes listed below, the badge component seems to not be displaying the proper styles for badge-pill. The background color is also not displaying when the classes badge-primary, badge-secondary, etc. are used. I am able to get the background color to show if I change the class to bg-*, but I haven't been able to find a way to get the badge-pill styles to work yet.
@tag.Name

Bug reports must include a live reduced test case via CodePen/JS Bin or Stackblitz. And report specific browser and OS details.
This is an automated reply

@gilbertaoe Can you please attach the code? Let me try something for you.

badge-primary, badge-secondary and so on are removed with v5 - you have to use bg-*

@knoobie Thanks! That solves half of the issue, was badge-pill removed as well?
@sunnyvaghadia, I accidentally forgot to mark the code appropriately in the original post

            Danger
            Test 1
            Warning

@ysds, I'm currently at work right now, give me a couple hours or so and I can get a reduced test case submitted

@gilbertaoe yes, both were removed - you can find all information here https://github.com/twbs/bootstrap/pull/28458

@knoobie ok thanks, I'll close this since all my concerns weren't concerns :)


(ProgressBar) style issues

Width is fixed at 50%
No way to override the width easily
Border radius looks odd, the outer part is squared but inner part is rounded.

@ImperishableMe Somehow I can't add you to this issue as assignee.
cc: @radnan

Issued https://github.com/optimizely-axiom/optiaxiom/pull/71, but cannot assign you as a reviewer @MunifTanjim bhai.

@ImperishableMe Somehow I can't add you to this issue as assignee.
cc: @radnan

this is an odd and annoying thing about GH - seems until the user interacts with the issue you can't assign them - not sure how we get around that

Border radius looks odd, the outer part is squared but inner part is rounded.

@MunifTanjim  bhai, in the Opal design, we have border-radius only for the inner box. Of all the allowed rounded values in the Box component, lg seemed to come close to the design. Should I remove border-radius altogether?

@ImperishableMe this is what I got from Figma:

The whole thing is rounded.

@MunifTanjim bhaia, https://github.com/optimizely-axiom/optiaxiom/pull/71 is merged now, please let me know if that solves all the concern of this issue.

Yes. looks good.


Replace chrono & std times with tokio::time::Instant to enable testing

Motivation
We want to test Zebra network, download, and validation, without the tests waiting for time to elapse.
We also want Zebra's time checks to be more reliable, even if the system clock changes. The system clock can change based on automated time servers, leap seconds, or user updates.
We should use monotonic times for almost all of Zebra's internal time checks. But serialized times still need to be based on the system clock, because they need to use a common epoch.
Reference
Tokio has an tokio::time::Instant wrapper, which allows the runtime to pause and advance time:
https://docs.rs/tokio/0.3.7/tokio/time/struct.Instant.html#note
Tokio's Instants inherit monotonicity from Rust std::time::Instant:
https://doc.rust-lang.org/std/time/struct.Instant.html
chrono::DateTimes are based on the system clock and Unix epoch:
https://docs.rs/chrono/0.4.19/chrono/offset/struct.Utc.html#method.now
https://docs.rs/chrono/0.4.19/chrono/offset/trait.TimeZone.html#method.timestamp
chrono has some unusual behavior around leap seconds, which we also want to avoid as much as possible:
https://docs.rs/chrono/0.4.19/chrono/naive/struct.NaiveTime.html#leap-second-handling
Solution
Replace UTC times with monotonic times
Some parts of the protocol require an epoch-based time, including the last seen time in MetaAddrs, and the time fields in the block and transaction headers. These fields should use the DateTime32 type. (See #2211.)
Everywhere else in Zebra, we should:

[ ] Replace std::time::Instant::now and chrono::Instant::now with tokio::time::Instant::now
[ ] Replace:

chrono::Instant and std::time::Instant with tokio::time::Instant
chrono::Duration with std::time::Duration, wherever we're using tokio::time::Instant

[ ] Remove unused dependencies on chrono

Dependencies:

[ ] Make any new dependencies on tokio test-only, or put them behind the proptest-impl feature

we might want to rename the proptest-impl feature to make it more general
avoiding a tokio default dependency is particularly important for zebra-chain

Documentation:

[ ] Add a timer testing reference and example to the Zebra Async RFC

Alternatives
We could avoid testing time-related code.
We could add debug configurations or function parameters that make timeouts shorter, but then we're not actually testing the timeouts we use by default. (And any interactions they have.)
We could just wait in the tests. (Then we'd only run some tests during CI, and avoid other tests entirely.)
Related Work
There's no need to move to tokio 1.6 before this change #2200

We should do this change if needed by new tests.


Removing TryRun method from ActivityExtensions

Fix Issue #1820.
Changes
Removed TryRun and Initialize from ActivityExtensions
Maintained the logic and changed the tryRun with a TryCatch. If an exception occurs, we change to false and everything will be the same. A log will be created.
Checklist

[ ] I ran Unit Tests locally.
[ ] CHANGELOG.md updated with one line description of the fix, and a link to the original issue if available.

For significant contributions please make sure you have completed the following items:

[ ] Design discussion issue #
[ ] Changes in public surface reviewed

The PR will trigger build, unit tests, and functional tests automatically. Please follow these instructions to build and test locally.
Notes for authors:

FxCop and other analyzers will fail the build. To see these errors yourself, compile localy using the Release configuration.

Notes for reviewers:

We support comment build triggers

/AzurePipelines run will queue all builds
/AzurePipelines run <pipeline-name> will queue a specific build

@eddynaka This PR is perfect, but we decided that because this is a breaking change, we can't take it until the 3.0 major release.


Logo Proposal

Hi @rodgars  ,
My name is Ulises or TJ if you like,
i'm a graphic designer and I contribute to cool projects (open source) like this one!
if this is something that you're looking forward to, I'll gladly upload some logo proposals
I'll look forward for your reply, cheers!
TJ.

Hi @tjulises ,
Thank you very much for the logo proposal.
However we can't afford this.
Cheers,
Rodrigo Garcia

I understand @rodgars ,
I'm an open source enthusiast looking forward to improve my portfolio,
therefore, my collaboration will be totally free.
let me know if you're interested, we could start working inmediately!
Cheers.

Hi @tjulises ,
Wellcome a board!!!!! So, we have two logos we could replace, in our navbar and another in landing page.
You can get the images (bola.png and logo1.png) sizes in folder: client/public/assets/
Have a look in our current pages:


Use MANIFEST instead of embulk.properties?

We've implemented #560 to embed Embulk versions in embulk.properties, but I thought we should have used JAR manifest instead of our own original properties file.
Will update the decision, but let me just share for now... Ping me if we have plans to release new Embulk versions soon. @muga

I thought we should have used JAR manifest instead of our own original properties file.

Sounds good to me. Let's replace with MANIFEST.MF. About next release, I can wait one week at least.

Done.


The Internet Explorer problem...

Hello,
First thanks a lot for this package, it's awesome !
I am working on a website for a client, the problem is it's in a sector where a lot of people still run internet explorer on XP...
Very annoying to dev a modern website and make it work properly on every browser. Turns out IE is not dead for some people x)
I am having this error on IE11:
'IntersectionObserver' is undefined
I'm sure it's because something is not compatible with IE but it would be great if the main Reveal component would just not render in case the browser is IE. We wouldn't have animations anymore but if IE users want them they can update there browser.
Do you feel like it's something worth working on ?
If you have a workaround I'm interested !

Hi @mploux,
if you have to support older browsers like IE11 you need a polyfill for the IntersectionObserver API (pick this one).
Hope it helps!

Follow this basic guide to conditionally load the IntersectionObserver polyfill.


Update README_EN.md to fix a spell error

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


error in xdmf writer (tools/xdmf_writer/xdmf_writer.c)

From Cihan Altinay: Hi, gcc 4.9 gives me a warning for line 1252 in tools/xdmf_writer/xdmf_writer.c From my understanding the compiler is right as: struct timeval times8;...int nBytes = 8 * sizeof(struct timeval);...for (i = 0; i < nBytes; i) allTimes[i] = times[i];... so the loop should only go from 0 to 8 but it goes to nBytes which is8*sizeof(timeval).... Cheers,Cihan Hi Cihan, Yes, that looks like a bug if we want to copy the bytes directly, we would need to use a different pointer type than timeval ** (we could use char **) -Cyrus
-----------------------REDMINE MIGRATION-----------------------
This ticket was migrated from Redmine. As such, not all
information was able to be captured in the transition. Below is
a complete record of the original redmine ticket.
Ticket number: 1882
Status: Pending
Project: VisIt
Tracker: Bug
Priority: Normal
Subject: error in xdmf writer (tools/xdmf_writer/xdmf_writer.c)
Assigned to: Eric Brugger
Category: -
Target version: 3.0
Author: Cyrus Harrison
Start: 06/19/2014
Due date:
% Done: 0%
Estimated time:
Created: 06/19/2014 12:20 pm
Updated: 06/30/2015 07:13 pm
Likelihood: 3 - Occasional
Severity: 2 - Minor Irritation
Found in version: trunk
Impact:
Expected Use:
OS: All
Support Group: Any
Description:
From Cihan Altinay: Hi, gcc 4.9 gives me a warning for line 1252 in tools/xdmf_writer/xdmf_writer.c From my understanding the compiler is right as: struct timeval times8;...int nBytes = 8 * sizeof(struct timeval);...for (i = 0; i < nBytes; i) allTimes[i] = times[i];... so the loop should only go from 0 to 8 but it goes to nBytes which is8*sizeof(timeval).... Cheers,Cihan Hi Cihan, Yes, that looks like a bug if we want to copy the bytes directly, we would need to use a different pointer type than timeval ** (we could use char **) -Cyrus
Comments:
Hi again,compiler spotted another one of these:databases/paraDIS/paraDIS_lib/paradis.C line 2627:armTypes is an array of length 7, loop goes to 16...Cheers,Cihan

The issue in the xdmf_writer appears to have been fixed. Here is a snippet of the relevant code:
    #define NTIMES 8
    struct timeval times[NTIMES];

    ...

    int i;
    for (i = 0; i < NTIMES; i++)
        allTimes[i] = times[i];

The issue in the paradis database still exists. I'll look into fixing this one.

The issue in the xdmf_writer appears to have been fixed. Here is a snippet of the relevant code:
    #define NTIMES 8
    struct timeval times[NTIMES];

    ...

    int i;
    for (i = 0; i < NTIMES; i++)
        allTimes[i] = times[i];

The issue in the paradis database still exists. I'll look into fixing this one.

Is there any reason that we're keeping a local copy of the paraDIS library in VisIt and editing that directly instead of incorporating changes/updates from the actual project: https://github.com/LLNL/paraDIS_lib
It looks like we have a very old version of the library, and we've also made some edits. The problem pointed out in this ticket is fixed in the newer versions of paraDIS, but it's not a localized fix. Integrating this fix would require bringing over some other general changes from the library, which may or may not have other effects. This seems like a slippery slope...

Is there any reason that we're keeping a local copy of the paraDIS library in VisIt and editing that directly instead of incorporating changes/updates from the actual project: https://github.com/LLNL/paraDIS_lib
It looks like we have a very old version of the library, and we've also made some edits. The problem pointed out in this ticket is fixed in the newer versions of paraDIS, but it's not a localized fix. Integrating this fix would require bringing over some other general changes from the library, which may or may not have other effects. This seems like a slippery slope...

Was 😕 at first because the headline for this ticket has to do with xdmf_writer.c but you are talking about paraDIS_lib. Looks like both code bases contain same bug.

Was 😕 at first because the headline for this ticket has to do with xdmf_writer.c but you are talking about paraDIS_lib. Looks like both code bases contain same bug.

@markcmiller86 the xdmf_writer bug has already been fixed. The paraDIS bug is the one that remains in VisIt, but it's fixed in the paraDIS repo.

@markcmiller86 the xdmf_writer bug has already been fixed. The paraDIS bug is the one that remains in VisIt, but it's fixed in the paraDIS repo.

The proposed solution here is to add paraDIS as a third party library and keep it up-to-date.
There are two dependencies for paraDIS:

boost: this is already a third-party library in VisIt, so this dependency would be met.
tclap: we would need to add this as another third-party library.

The proposed solution here is to add paraDIS as a third party library and keep it up-to-date.
There are two dependencies for paraDIS:

boost: this is already a third-party library in VisIt, so this dependency would be met.
tclap: we would need to add this as another third-party library.

Should the paraDIS aspects of this be a new ticket?

Should the paraDIS aspects of this be a new ticket?

Should the paraDIS aspects of this be a new ticket?

I think that's a good idea.

Should the paraDIS aspects of this be a new ticket?

I think that's a good idea.

I agree. I think we should re-evaluate the priority of the new ticket, since this is no long low hanging fruit.

I agree. I think we should re-evaluate the priority of the new ticket, since this is no long low hanging fruit.

I agree. I think we should re-evaluate the priority of the new ticket, since this is no long low hanging fruit.

Should I hold off on making the paraDIS update until we review it as a group?

I agree. I think we should re-evaluate the priority of the new ticket, since this is no long low hanging fruit.

Should I hold off on making the paraDIS update until we review it as a group?

Yes.

Yes.

Closing this ticket as the primary reported issue is resolved. The secondary issue is now being tracked by #5356.

Closing this ticket as the primary reported issue is resolved. The secondary issue is now being tracked by #5356.


Fetching more metadata using song title and artist

Other dependencies could be used

I will like to work on it :)


Error decoding RFC822 SAN in X.509 certificate

Go version
go version go1.21.3 darwin/arm64
What operating system and processor architecture are you using (go env)?
GO111MODULE=''
GOARCH='arm64'
GOBIN=''
GOCACHE='/Users/carl.bourne/Library/Caches/go-build'
GOENV='/Users/carl.bourne/Library/Application Support/go/env'
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='arm64'
GOHOSTOS='darwin'
GOINSECURE=''
GOMODCACHE='/Users/carl.bourne/go/pkg/mod'
GONOPROXY=''
GONOSUMDB=''
GOOS='darwin'
GOPATH='/Users/carl.bourne/go'
GOPRIVATE=''
GOPROXY='https://proxy.golang.org,direct'
GOROOT='/opt/homebrew/Cellar/go/1.21.3/libexec'
GOSUMDB='sum.golang.org'
GOTMPDIR=''
GOTOOLCHAIN='auto'
GOTOOLDIR='/opt/homebrew/Cellar/go/1.21.3/libexec/pkg/tool/darwin_arm64'
GOVCS=''
GOVERSION='go1.21.3'
GCCGO='gccgo'
AR='ar'
CC='cc'
CXX='c++'
CGO_ENABLED='1'
GOMOD='/Users/carl.bourne/development/OPA-Firefly/tap-utils/envoy_tap/go.mod'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -arch arm64 -pthread -fno-caret-diagnostics -Qunused-arguments -fmessage-length=0 -ffile-prefix-map=/var/folders/2d/kld5xtqx1rn7s0bbwmfkbt740000gn/T/go-build1805263967=/tmp/go-build -gno-record-gcc-switches -fno-common'

What did you do?
This is a followup to this https://github.com/golang/go/issues/63931.
I did some further testing and I see how to get the SAN values using the tag options.
However when I try to get the RFC 822 value (tag 1) it returns the following error:
asn1: syntax error: PrintableString contains invalid character

Here's an example:
https://go.dev/play/p/Sz9UbZnZEU7
Is there any plan to make this easier in the future ?
What did you expect to see?
Value of RFC-822 SAN
What did you see instead?
asn1: syntax error: PrintableString contains invalid character

I believe it is correct to reject it for invalid syntax, @ is not an allowed character for PrintableString.


angular_router: 2.0.0-alpha compatible with angular 5.0.0-alpha?

Is angular_router (2.0.0-alpha) compatible with angular (5.0.0-alpha), and if so, how can I do a manual dependency override?

I don't see any reason why not. You can add this to your pubspec.yaml:
dependency_overrides:
  angular: ^5.0.0-alpha

... and try it out. Please let us know if you have other questions :)

Thank you @matanlurey! I appreciate all the good work you all are doing. 😄

Hi @matanlurey today I started trying your advice, in my project pubspec.yaml file:
environment:
  sdk: '>=1.24.0 <2.0.0'
dependencies:
  angular: ^5.0.0-alpha
  angular_components: ^0.9.0-alpha
  angular_forms: ^1.0.1-alpha
  angular_router: ^2.0.0-alpha
  browser: ^0.10.0
  dart_to_js_script_rewriter: ^1.0.1
  sass_builder: ^1.0.0

but Resolving dependencies...
Incompatible version constraints on angular:

angular_components 0.9.0-alpha depends on version 5.0.0-alpha
angular_forms 1.0.1-alpha depends on version ^5.0.0-alpha
angular_router 2.0.0-alpha depends on version ^4.0.0
huastecappadmin depends on version ^5.0.0-alpha
Process finished with exit code 1

Any Idea?

Add this to your pubspec.yaml @abnerh69:
dependency_overrides:
    angular: ^5.0.0-alpha

:smile:

Yes, I didn't see "_overrides".  Thanks


TCP Socket Fixes

This PR properly enables TCP keep-alive for lwip. Additionally we add proper error checking to the posix layer, where before we were not checking the return value of tcp socket create and assigning bad socket handles.

I'm not sure we want to change these so dramatically without proper justification. It might incidentally fix an issue but not fix the real cause. Do you know anything about appropriate times for keepalive @wom-bat?

Standard says between 10 minutes and 2 hours.  I'd suggest around 15 minutes for our use cases.
See https://webhostinggeeks.com/howto/tcp-keepalive-recommended-settings-and-best-practices/

After talking to @JE-Archer we'll just merge the patch that adds the error check. @JE-Archer believes there is a deeper issue and playing with the parameters of lwIP is just hiding that, so he's looking into that.


Programically "click" accept or decline?

Hi Hien.
First of all thank you so much for this package. It is essential for my project :)
I have a accept and decline buttons in displayed in my UI if the application is active when the call comes in, but i need an option to programmically "click" either accept or decline, so that i can close the popup box.
Is that a possibility?
br.
Jacob

i think it doesn't seem feasible with iOS.


[BEAM-8427] Create a table and a table provider for MongoDB

Create a Table with read support (for now, write will be added in a separate PR)
Add some tests

Thank you for your contribution! Follow this checklist to help us incorporate your contribution quickly and easily:

[x] Choose reviewer(s) and mention them in a comment (R: @username).
[x] Format the pull request title like [BEAM-XXX] Fixes bug in ApproximateQuantiles, where you replace BEAM-XXX with the appropriate JIRA issue, if applicable. This will automatically link the pull request to the issue.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

R: @apilloud
cc: @amaliujia

R: @TheNeuralBit
Brian, can you take a look at this? You are probably more familiar with JSON stuff than I am.

Run Java PreCommit

LGTM


specify cubesat as a Component

a cubesat component should, at minimum, include:

[ ] a package.json, containing

[ ] name
[ ] version
[ ] description

[ ] cubesat component folder should subside in the components/ directory

components can be created using the sliderule-cli

you can borrow the same workflow from the README in https://github.com/tetrabiodistributed/papra


feat: do partition compat. checks with PartitionCompatibility sum type

TL;DR

existing dak.compatible_partitions gets a new argument (how_strict) which provides some user-definable passing criteria. (existing uses of are unchanged, just a new argument where the default value maps to current existing behavior).
new function dak.partition_compatibility along with new sum type PartitionCompatibility can be used for more flexibility.

This PR introduces a partition_compatibility function that returns a sum type (the new PartitionCompatibility enum) that can be YES, NO, or MAYBE. This will allow downstream code to use MAYBE as desired. In dask-awkward we will simply use NO to raise exceptions.
Any place that was original checking
if not dak.compatible_partitions(a, b):
    raise IncompatiblePartitions(...)

can now write:
if dak.partition_compatibility(a, b) == dak.PartitionCompatibility.NO:
    raise IncompatiblePartitions(...)

One can also use MAYBE to go in another direction or use pattern matching with 3.10
the existing compatible_partitions function now gets a new named argument: how_strict which defaults to PartitionCompatibility.MAYBE (or 1) (the existing behavior before this PR), setting it to PartitionCompatibility.YES (or 2) will cause the function to return False if we are not absolutely sure of the compatibility with via known divisions

Codecov Report

Merging #304 (fa99273) into main (552734b) will increase coverage by 0.10%.
The diff coverage is 98.18%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff             @@
##             main     #304      +/-   ##
==========================================
+ Coverage   92.20%   92.31%   +0.10%
==========================================
  Files          21       21
  Lines        2539     2575      +36
==========================================
+ Hits         2341     2377      +36
  Misses        198      198

Impacted Files
Coverage Δ

src/dask_awkward/lib/structure.py
95.28% <85.71%> (ø)

src/dask_awkward/lib/core.py
91.86% <100.00%> (+0.34%)
:arrow_up:

src/dask_awkward/lib/operations.py
100.00% <100.00%> (ø)

src/dask_awkward/utils.py
100.00% <100.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

@lgray @iasonkrom would definitely welcome your thoughts. I know coffea is using what this PR deprecates

I like the idea. I can play around with it a bit over the weekend I think. I believe only my recent PR used what this PR deprecates so it should be fine if this doesn’t change anything in dask_awkward functionality, right @lgray?

I like the pattern matching direction a bit more, but another idea occurs to me, a kwarg that's "strictness".
Somehow the whole idea of trinary statements is bugging me, but to keep it simpler we can have binary statements with a knob for strictness.
if dak.compatible_partitions(a, b, how_strict=some_integer_value)
    raise

Then we can define what the levels of strictness are much like the compression levels in compression algorithms.
Somehow that jives with how I think about this a bit better. What do you think?

I think what was bugging me here is that there are different kinds of compatible_partition failures that loosely fit into an idea of strictness. Really they're categories and there's a clear set of core compatibility requirements, followed by various categories of failure.
I think a pattern matching implementation may make the most sense?

I actually also think that it may be better if PartitionCompatibility is implement as "strictness". I find this simpler to have a kwarg instead of doing dak.partition_compatibility(a, b) == dak.PartitionCompatibility.NO. However, my opinion shouldn't matter and more experienced people should decide

I like the adding a how_strict argument for the existing compatible_parititions functions. This PR now doesn't change any existing behavior, but adds more flexiblity


E2E Tests should use a Docker Image as opposed to installing tooling at runtime

Description
Currently, our E2E tests run local actions to install tooling at runtime (like helm, helm diff, prometheus, etc.). We should create an image that we can use to run our testing so that we don't have to install these things at runtime, reduce our test time, and have more reliability in our tests which sometimes fail due to these installation failures.

Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
If you are interested in working on this issue or have submitted a pull request, please leave a comment

Can I work on this issue?

@aman0408 Yep! Assigned! Reach out to me over Slack DM if you have any questions or want to know any more info on how to get started.

Closing this out since we agreed that we don't want to add this right now. We can re-open this issue if we think that this is necessary down-the-line.


ftplugin/nroff.vim: Add comments and sections customizations.

I sent this as an email to<EMAIL_ADDRESS>on October 15th and haven't received a response yet so I decided to open a pull request. If I didn't wait long enough, feel free to close.

I haven't heard from @cspiegel since the original pull request.  I don't even know if that gmail.com address is valid.
Since it's just a one-liner, I wouldn't mind if you take over maintainership.

@a-vrma Sorry, I completely missed that email!  But by all means you can take over maintainership if you'd like, as I'm not particularly proficient in roff.

But by all means you can take over maintainership if you'd like, as I'm not particularly proficient in roff.

Sure, I'm happy to take over maintainership.
@brammool, should I push a commit on this pull request changing the 'Maintainer' line?

It would be better to also update .github/CODEOWNERS.

Yes, as @k-takata  mentions, update .github/CODEOWNERS and add yourself for the runtime/ftplugin/nroff.vim file. In addition, please move @cspiegel to PreviousMaintainers and add yourself as Maintainer. Thanks.

have a curious question:
after such flow, even he/she fixed an issue from users, looks code still remained at maintainer's local, since he/she had no access to merge code still, unless she/he sent out a pr, but looks no offenly saw that.
then how come those vim embedded plugins got be updated? someone would offline scheduled to send mail to ask those maintainers, then he collected to update them (merge to vim repo) all in some timing?
// all in all, it meant embedded plugins were working as offline(mail) style flow, and some of you would collect update from them then merge news as bunch?
// as i knew, looks the workflow like that, but not sure the 'timing', looks occasionally it happened..

@Shane-XB-Qian Check the CONTRIBUTING.md and see if this answers your questions.

ok, i see, The maintainer will take care of issues and send updates to Bram for distribution with Vim., so it's not 'scheduled'.
// but still, not sure the 'timing', looks just the updates sent out from maintainers was collected had enough amount, then it merge happened.. seems this.

well, the maintainer is in charge. He should know, when the files are stable enough to be included with the next vim runtime file update.

the next vim runtime file update.

ok, supposed it meant as long as maintainers sent out the paths, then bram would find out a 'timing' to merge it, there is no 'schedule' and no saying 'instant' mege as well. thx your reply.

@a-vrma  yes, please update this pull request as mentioned in the previous comments.

@brammool Please drop my address from nroff.vim header. Or make sure to send patches to upstream at https://github.com/palopezv/vim-nroff Thanks.

I do not see your address in the existing file or in this pull request.

@palopezv your name is in syntax, this pr is for ftplugin, though looks both was for roff.
// for runtime (embeded plugins) files, perhaps just follow bram's general workflow which was per patch via mail/mail-list.
// 'pr flow' perhaps not suitable for all things.. :) specially those are embeded into vim, not a good idea to separate to many places.

Updated.

I'll include it, thanks.


[Bug] Problem with load cards in Creators (Browse All)

My Card look exists in Creators but when click in Browse All and search my card, it doesn't exist!
I think it's still having a problem in Browse All page and doesn't load some creators card.

Oh thats actually a good reminder, sometimes the indexer does not update the creator list in azure search. Still did not have time to fix this.
Should be able to find you now!

Oh thats actually a good reminder, sometimes the indexer does not update the creator list in azure search. Still did not have time to fix this.
Should be able to find you now!

You're welcome, My card is ok now. Thanks.


Improve coverage

What this PR does / why we need it:
Adjusts the ignore list to cover generated files, ie ...generated.go and ....pb.go
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes #
Special notes for your reviewer:
Release note:

NONE

/test pull-kubevirt-goveralls

/test pull-kubevirt-goveralls

/test pull-kubevirt-goveralls

/test pull-kubevirt-goveralls

/test pull-kubevirt-unit-test
/test pull-kubevirt-goveralls

/retest
/lgtm
/approve

/retest

/retest

/retest


Added new options argument to pre/post-submit hooks.

Fixes #401 for newly bootstrapped projects.

Coverage remained the same at 48.216% when pulling aee5d931be2f0536ae23549ae80ff910eff5f469 on tail:fix-401 into 8500325fad61d1606285227c658bfac587060b4c on Parsely:master.


Apply hashing to remote storage cache key

Prevents hitting the memcache 250-char key limit when rendering very long metric paths in cluster setups.
This looks like it regressed in f18bb3c7 and since that looks like a squashed merge I can't tell why it was changed during the megacarbon work; presumably it was to update the data used to construct the key. Either way, this change doesn't modify the nature of the key, only ensures it is hashed like all other memcached-using code (eg in render/views.py).

+1 Hit this issue too. Any chance that this will be merged soon?

Given I barely contribute, I'd like to merge this but would :heart: a simple :+1: from any other @graphite-project/committers first to make sure I'm not committing a faux pas. An emoji will do! A day or two of silence may be taken as consent :)

@bitprophet The rationale sounds sensible to me, and the code looks fine − but I’m not familiar enough with the codebase in general for even an emoji on this :-)

Wait, looks like #1480 is the same as this? (Good news is that @deniszh +1 it ;-)

I prefer the bit savings in #1480 but the logic seems ok either way.

Yep, or this or #1480 - both looks fine. Pick one, ditch another, merge. 👍

Merged #1480.


Prevent multiple stage pods for each PVC; simplify stage pod creation

The immediate driver of this is the need to handle ROX volumes by initially creating them as RWO volumes on dest. This won't work if more than one stage pod mount the PVC with the current code. We also want to prevent multiple stage pods from mounting a given PVC when the volumes are mounted RWX and there are multiple application pods mounting it.
Currently we have 3 stages of stage pod creation:

stage pods from current running pods, using current pod as a template
stage pods from scaled-down Deployments, etc. using Deployment PodTemplateSpec as a template
stage pods for disconnected PVCs from generic template.

While the current code for stage pod creation currently prevents subsequent stage pods from being created if there's already a stage pod which contains all of the mounted PVCs, we will still duplicate the PVC in the stage pods in certain cases. For example if pod1 mounts (pvcA,pvcB) and pod2 mounts (pvcA,pvcC), then both pods will get stage pods created, and both pods will include pvcA. If this is an ROX volume, then when creating these as RWO on dest, it may fail. If it's an RWX volume, it won't cause any errors, but we'll waste effort backing up and restoring the volume twice.
I'm proposing replacing this with a two-stage stage pod creation workflow:

Stage pods from current running pods. However, instead of creating one stage pod per pod, we create one per PVC, refactoring the current disconnected PVC stage pod code to optionally take a nodeName, to make sure RWO volumes for currently running applications are mounted on the correct node. As with disconnected PVC code, only create the new stage pod if one doesn't already exist for this PVC.
Stage pods for disconnected PVCs: unchanged from current functionality, other than refactoring out common code to reuse above.

@sseago this issue just came up again with a user.
It would be awesome if we could create an algorithm to limit the number of Stage pods per namespace to N = number of nodes where restic is running.
Exceeding N stage Pods would be wasting resources as I understand the problem. Is there ever a reason to have more than N stage Pods that you can think of?

Another approach I could see for handling this issue would be to see how far we can drop the CPU and memory allocation needed for each stage pod. If each pod was consuming very minimal resources we might not need to worry about being clever with our assignment of PVCs to minimal stage pods.

We're already attempting to minimize memory/CPU usage. By default we use:
        defaultMemory = "128Mi"
        defaultCPU    = "100m"

Unless the minimum values are above this, and then we have to use more. It could be that even lower numbers are possible, but I don't know whether it's possible to hit a point where even the sleep pods will fail on us.
We're currently running one stage pod per application pod (where we have pods/deployments), and one stage pod per PVC for disconnected PVCs. The problem stated in this issue is that we'll fail if we have an ROX PVC mounted in multiple pods since we will need to convert this to RWO for restore. We might be able to do what you propose here if, instead of creating a stage pod for each running pod (or PVC on a running pod) we come across, we could generate an in-memory map of PVCs to current node the pod is on. Then we could, at the end of it all, generate all of the stage pods, creating one per node with the associated running pod PVCs assigned to the appropriate node. I guess we'd just try to split up the remaining PVCs evenly among the stage pods? i.e. if we have 5 nodes and 3 remaining PVCs, each stage pod gets 0 or 1 more. If we have 3 nodes and 22 remaining PVCs, then each stage pod gets 7 or 8 extra PVCs. On the destination cluster we may not have the same number of nodes running, but that shouldn't matter. We'll still have fewer stage pods to restore than we currently have.


Typescript Declarations

@centrual Thank you! Don't know how I've missed that one. Gotta unsubscribe from hundreds of dev newsletters I have :D


Describe hibernate.vertx.pool.class in the docs

Fixes #1112

Damn, I've just noticed that we mention it in the Multitenancy section


Logan stark- TL Maggie- DS17

Great work Logan, you know I appreciate those comments! We talked about it in standup, that the stretch was to do a linear regression with multiple features. Overall good work, interesting that the MAE was smaller when basing it off bathrooms as opposed to bedrooms.

Nice work Logan. You didn't use your new features in your model though! I wonder how those would have affected it. I think creating the train/test split could be done a little more efficiently, we can talk about it in our 1:1 and hopefully the other metrics will make more sense today.

So organized! I would be curious about the baseline?


Including pom.xml and pom.properties in the ehcache-common jar

Including maven metadata (pom.xml/pom.properties) in ehcache-common.jar only.  (primarily for internal use).

This is the best way I found, and I made the assumption that this should only be done in one jar.  This could probably be abstracted to be done globally if needed.

I'm curious. You want to use it for what?

So you can crack it open and see useful information about the artifact. I'd also want, somewhere, the location of the repo it was born from. In the olden days it was quite a task to determine from where some artifact came.

It's still quite a task...
Answer: This change will allow the escrow plugin to identify it as an internal jar and then map it to where it came from.  I can discuss internal details in another channel if you're interested.

Ok. Thanks. I'm looking if we can make something simpler.

Discussed with @ljacomet , I may be moving this to EhDeploy so it applies to all artifacts.

Made a separate plugin, pom.* is now in all jars.

I updated the maven plugin with new mappings so it should be ready once this is merged.