Update the RegExp flag from "u" to "v"

In https://github.com/whatwg/urlpattern/pull/188, the URL Pattern API was updated to use v flag instead of u. As mentioned in the blink-dev thread, the expected impact is very limited.
It would be great if the polyfill library follows, too. I can work on making a PR for this update.

@sisidovski Once the spec has merged the this, and the updated tests are available, we will update.
There is little value to update before unicode tests are added upstream.

@SanderElias Actually the spec was already merged. chromium is going to update the flag, too fyi (blink-dev thread). Here is the updated tests. https://github.com/web-platform-tests/wpt/pull/43014


Support for MetaMask mobile app

Can we add support to use-ck for the MetaMask app?

We already have support. It's more a matter of displaying Metamask as an option when Ubeswap is opened in the mobile dapp browser. Currently, only Injected shows up as an option.
E.g. user reaction: https://twitter.com/vuducthiet/status/1502076914428624902


Whole Months worth of events not displaying

DNN: 8.0.3
Events Module: 6.3.0
Noticed the event scheduler was throwing alot of errors, clicked a couple of events in the current month, no problem. switch to August 2016 or November 2016, no events displayed. Meanwhile I count 43 events in the DB (events table) for August and 40 or so for November. So something is preventing them from being displayed now and DNN just isn't upfront about the real problem...
Could SEARCH be causing a problem?
Any ideas?
You can see the event calendar in question at http://extraordinarygamers.net/Events

I have the same issue, except it's for our October 2016 calendar.
The DB table shows 20 items, but when we look at the calendar; NOTHING.
Sad to see that you opened this issue on July 19th and there hasn't been a response.

Same issue with month view, but with November 2016.
My List view also shows no items. However my Week view DOES show items.
I have "English (United Kingdom)" as default for the site, with "English (United States)" disabled.
Timezone for the calendar is "(UTC+00:00) Dublin, Edinburgh, Lisbon, London"

I managed to work around this for my own purposes. In case it helps, this is what I did ...
I edited the [EventsGetByRange] stored procedure...
There seemed to be an issue with the date parameters being passed in, so I overrode the condition by adding a clause "or (1=1)" to force a "true" here. The module's own filtering can still restrict results enough for me.
/*   (E.EventTimeBegin >= @BeginDate AND E.EventTimeBegin < DATEADD(DAY,1, @EndDate))) */
(E.EventTimeBegin >= @BeginDate AND E.EventTimeBegin < DATEADD(DAY,1, @EndDate)) or (1=1))
...and Category and Location might be null, so I made this change...
/*
AND (e.Category in (SELECT * FROM dbo.EventsSplitIDs) or @CategoryIDs = '-1')
AND (e.Location in (SELECT * FROM dbo.EventsSplitIDs) or @LocationIDs = '-1')
*/
AND (isnull(e.Category,'') in (SELECT * FROM dbo.EventsSplitIDs) or @CategoryIDs = '-1')
AND (isnull(e.Location,'') in (SELECT * FROM dbo.EventsSplitIDs) or @LocationIDs = '-1')


add service to reconnect the bot

Description:
Adds a service for reconnecting the hangups bot.
Related issue (if applicable): workaround for #17622
Pull request in home-assistant.io with documentation (if applicable): home-assistant/home-assistant.io#<home-assistant.io PR number goes here>
Example entry for configuration.yaml (if applicable):

Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass

If user exposed functionality or configuration variables are added/changed:

[ ] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[ ] New dependencies have been added to the REQUIREMENTS variable (example).
[ ] New dependencies are only imported inside functions that use them (example).
[ ] New or updated dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[ ] New files were added to .coveragerc.

If the code does not interact with devices:

[ ] Tests have been added to verify that the new code works.

Why can't we detect disconnects and reconnect automatically?

sadly the hangups lib don't supports it completly, it looks like, there are some scenarios where the lib can detect a disconnect and can automatic reconnect.
But they don't reconnect, or react, if the ip address changes. No exception, no event, nothing happens there...


Can't enter a room

At the beginning after the registration it had put "error loading data", so I left the application and came back. There I saw the room I was able to enter and participate, but the next day I tried to enter a room and it put "error loading data"
since then I can't fit into a room
I am using a Xiaomi Redmi Note 8T
Android Version 10


Update versions:

Description

Boots, Tink-server, Tink-worker, tink-controller, hegel, nginx, rufio, and kubevip.
Also, added back the nginx config for all Boots services and defaulted the boots service type to ClusterIP. Only one load balancer IP is needed.
Why is this needed

Fixes: #49
How Has This Been Tested?

Manually tested against virtual machines and physical hardware.
How are existing users impacted? What migration steps/scripts do we need?

Checklist:
I have:

[ ] updated the documentation and/or roadmap (if required)
[ ] added unit or e2e tests
[ ] provided instructions on how to upgrade

@mergifyio queue


Input label doesn't move after reaload the page

After reload a page, if an input had some text, the label doesn't slide up.

Please add active to the label if you are having issues with it.


Slack 'test configuration' works fine but doesn't notify on new event

Doesn't notify on a new event but test configuration works. No errors in Sentry logs unless this is related:
Ignored empty interface value: user

Are you sure the Slack integration is currently enabled? I'm asking because the integration page is a bit confusing. Here's what I did:

I enabled Slack integration (note: I didn't click "Save changes")
I clicked on the Slack link and got to the configuration page
I entered the webhook URL and the test worked fine. I saved changes.
I went back to the integration page -> Slack was not enabled.

It wasn't enabled because after the first step I didn't click on "Save changes". So I enabled it and saved changes and everything went smooth after that.
If it's not that, you could check your notification settings.

Not working, I've done all of that.

Not working on app.getsentry.com too.

Confirmed here using Sentry 7.6.2 and Slack module 0.2.0.
Slack checkbox is checked in integration page.
Using my forked Magento Sentry extension.
I even tried to set a specific action "Send a notification via Slack" for new event and regression rules, but still nothing on Slack.
"Test settings" button works great.

Not working here too.

Can confirm too

This has been an issue for a while for us to. Has anyone gotten things working?

I actually fixed mine, firstly I didn't use the Slack Sentry integration and instead used the incoming-webhook one. I also saw that all my notifications rules were off. Hopefully that helps a few people.

This is certainly resolved on getsentry.com, with the latest Sentry versions, and the latest version of the Slack repo.
That said we don't aggressively do point releases, so you'd need to install the version from Git (i.e. pip install )

I updated to the most current commit to master, and now the test doesn't work either.  I get another exception inside sentry-slack:
New Event on Sentry Backend

Plugin(slack) raised an error during test

AttributeError: 'Project' object has no attribute 'get_full_name'
  File "sentry/web/helpers.py", line 170, in plugin_config
    test_results = plugin.test_configuration(project)
  File "sentry/plugins/bases/notify.py", line 115, in test_configuration
    return self.notify(notification)
  File "sentry_slack/plugin.py", line 101, in notify
    project_name = project.get_full_name().encode('utf-8')

What's going on?  Really want to get this working since we are looking to use Slack more.

Try again with 0.3.0, and if this is still an issue, plz reopen and I'll take a look. :)

sentry==8.0.1
sentry-slack==0.4.0
Having the same problem. Test notification gets delivered but events don't. Any idea why?

Not working with me too :cry:

Had the same issue but fixed it.

Setup the incoming webhook
Setup the integration on Slack. Made sure everything was "saves and turned on"
The "test configuration" worked fine, but actual issue did not go to Slack
RESOLVED by : Each sentry project now has "Alerts" and you need to now configure the Alerts of the project to "send a notification to integrations" (by default it does not have this selected). After doing this, the actual issues were sent to Slack. But remember that it only sends NEW issue alerts by default (so if you resolve an issue and it appears again then the alert wont come).. you need to fine tune your Alerts to get everything to appear in Slack


Create PostList components

Today the site content looks like this when displaying GitHub repos.

What we would like it to look like

Steps to implement:

Apply Tailwind UI to a reusable React component
Add the component to the render repo

Link to CSS:

PostList

this PR closes this issue: https://github.com/open-sauced/hot-sauce/pull/13


Fix doc for token_manager_decls

In the doc (/docs/documentation/grammar.md), the token manager declarations java part is said to be a java_block, but it is rather a ClassOrInterfaceBody(). For example one can have
TOKEN_MGR_DECLS : {
static boolean isTM;
static { isTM = false; }
}
which is more than a block.

@MarcMazas Hello Marc, could you provide a PR for your issue?

Hi. I did the fix on my local repo, created a commit. But pushing it to javacc/javacc.git master replies with an error (git-receive-pack not permitted). I did create a personnal access token and used it for usr/pat login over https.
Do I have the appropriate rights (ie does I need to be a contributor)?

You need to do a PullRequest from your forked copy of javacc

I git-cloned on my PC the javacc repo, created a commit and a branch on it.
I do not see how to create a PullRequest on the javacc repo referencing a branch on something other than another github repo.
Do I need to create a fork on github?


Feature/ui simplification

The overall feedback from initial beta testing was that Search Tailor's UI was too complicated and unintuitive. Given that browser extensions should ideally be usable with very little preamble, I've undertaken a large refactor of the UI based on the feedback received.
There are still some outstanding issues with this rework, but overall it's much more straightforward, both from a UI and data architecture standpoint.
Major changes as of this writing:

"Treatment Groups" have been removed in favour of a simple list of "Tailoring Entries" (much like earlier iterations of the UI)
Each entry can contain as many domains as desired by use of a "token" field (aka Chips, Tags, etc)
Each entry can be styled as desired via options in its settings panel
Styles applied to an entry affect all of the domains listed in the entry
Styling an entry's opacity to 0 hides it completely within your search results

Known issues as of this writing:

Loading indicator is not visible
The scroll bar occasionally obscures certain interactions
The domain field cannot be tabbed out of (this is specific to the TokenField library)

Planned features as of this writing:

Quick actions for opacity setting to jump to 0/100%

Under consideration as of this writing:

Only allowing one settings drawer to be open at a time

Entries can't be dragged when the popup is pinned the to the overflow menu. Dragging causes it to close the menu without saving changes.

This overhaul is complete and the popup interface is stable. I'll address remaining known issues with their own tickets and branch as much as possible.


tar Cannot mkdir: Permission denied error at strange path

Description:
Action fails to restore cache
Action version:
actions/setup-node@v2
Platform:

[X] Ubuntu
[ ] macOS
[ ] Windows

Runner type:

[ ] Hosted
[X] Self-hosted

Tools version:
npm 14
Repro steps:

Hello @mbergal. Thank you for your report. It looks like a user or tool on your self-hosted runner does not have permissions to write in /home/ubuntu/.npm/_cacache. Could you please run your job under the user with appropriate permissions.
The setup-node action uses toolkit/cache to save/restore cache. You can try to find similar issue in the toolkit or actions/cache repositories.

The command in question /usr/bin/tar -z -xf cache.tgz -P -C /data/actions-runner/_work/ai-general/ai-general is trying to create something not in /home/ubuntu/.npm/_cacache, but in data. Is it expected?

Hello @mbergal. Thank you for your response. For getting directory for cache we use the npm config get cache command. Do you change user or override cache directory (npm config set cache) ?

Hello @mbergal. Do you have any updates or additional information ?

Hello @mbergal. I'm going to close the issue. We've tried to reproduce from our side, but it works as expected. If you get any additional information or repro steps feel free to ping us.


[FEA] Add Spark 3.5.0 shim layer

Is your feature request related to a problem? Please describe.
Add Spark 3.5.0 shim layer.
We may want to hold off on this until 3.4 stable and decide when its useful.

I started looking into this. There are some small refactors in 3.5.0 that affect us:

LegacyBehaviorPolicy has moved out of SQLConf into a top-level class
StructType.fromAttributes moved to DataTypeUtils
BatchScanExec refactor to move some attributes to StoragePartitionJoinParams
org.apache.spark.sql.execution.PartitionedFileUtil#splitFiles has extra param filePath

There are also some potentially more significant refactors that may be more work, but I haven't looked too closely yet:

Hive UDF refactor
Python UDF refactor and Arrow support


A simplification and some corner cases

Simplified MAP

+ and - now return 0 when applied to an empty list

/ * and % now return 1 when applied to an empty list

Closes #40

The MAP simplification was incorrect.  It relies on iteration order which is not guaranteed.
Closing.  See PR #48.


Move code from views to ViewModels

Actual Behaviour
Currently, all code in present in views that act as controllers
Expected Behaviour
Move code from activities and fragments to controllers
NOTE: Code in ViewModels should NOT depend on any Android classes like Context
Parent Issue : #2014

Can you please point me in the direction from where to start solving this issue. I would like to work on this but i cannot understand the issue properly. Also please tell me in what directory do i have to make the changes.

The issue is for the whole app, but you can start with one activity/fragment at a time. You need to learn about architecture components of Android SDK - https://developer.android.com/topic/libraries/architecture/index.html
Specifically, the idea of the issue is to move to MVVM pattern from MVC using ViewModel

Ok thank you. I'll try solving this and disscuss here if i find any difficulty.

@iamareebjamal I am creating child issues for this parent issue for each activity/fragment. In this way the refactor can be done one activity/fragment at a time.
@Kartik2016 Then you can comment on those issues whichever you want to work on.

Yes that would be more convenient. Thanks.

@iamareebjamal I want to work on this issue 👍

@codesun Please create an issue for a relevant ViewModel like everyone above and start on it :smile:

@iamareebjamal can i make a view model for CommentsDialogFragment

I don't think it has such complex functionality that it requires one


Empty list

Hello,
I just updated rainloop to v1.8 (was in 1.7), and now, when i check my mail, I almost alway get "empty list", even if the folder isn't empty.
Here is what's printed in the logs when I refresh a folder :
[17:16:45.759][a6a91b01] INFO[DATA]: [DATE:25.02.15][RL:<IP_ADDRESS>2][PHP:5.4.36-0+deb7u3][IP:<IP_ADDRESS>][PID:20170][Apache/2.2.22 (Debian)][apache2handler]
[17:16:45.759][a6a91b01] INFO[DATA]: [Suhosin:off][APC:on][MB:on][PDO:mysql,pgsql,sqlite][Streams:tcp,udp,unix,udg,ssl,sslv3,tls]
[17:16:45.759][a6a91b01] REQUEST[NOTE]: [POST] https://<IP_ADDRESS>/mail/?/Ajax/&s=/_cCee5CYCs5uiVR-DBuYCW57h49FrvRUsMF4PrrnktXLrLoXzYukdAW27GpwglTOzAFvL952_6T3t9Zs-zeorWs_AMDabVACJOBZyn7jk6gI7X29nutNwPej_tJDUwv1L-G3q1x1mcjXkrmzBDbyfQCU9QbQcLz3dF3LZ3jSt9-x6qYiFpYPDtDIqcUyft14kb9aSPr9b0W3WwbWpZJW_qtbitw9gIvZ_uLst0hthBrQymWE_RYgHOXJ3IAEKzcCXr5A3Tv22lo6Hr2qfxGMLqrX6iqRuPt1xRXN-aHoaJi4XEOe_Iwdiy-Nv4eJYWsL5hBnyEc5pEivc80yQ28jk8ynOhO1dt_uhgQINun5gI7UItwbwOOYJ_Xm59pBtwZfSu66tFMeAPRE./
[17:16:45.761][a6a91b01] AJAX[NOTE]: Action: DoMessageList
[17:16:45.761][a6a91b01] POST[DATA]: {"Folder":"Divers","Offset":"0","Limit":"20","Search":"","UidNext":"","UseThreads":"0","ExpandedThreadUid":"","Action":"MessageList","XToken":"e19c12bada271ca6091107f04f1c76b6"}
[17:16:45.768][a6a91b01] IMAP[NOTE]: Start connection to "ssl://imap.free.fr:993"
[17:16:46.015][a6a91b01] IMAP[NOTE]: Connected (success)
[17:16:46.100][a6a91b01] IMAP[DATA]: < * OK IMAP4 ready\r\n
[17:16:46.101][a6a91b01] IMAP[DATA]: > TAG1 CAPABILITY\r\n
[17:16:46.151][a6a91b01] IMAP[DATA]: < * CAPABILITY IMAP4REV1 X-NETSCAPE LOGIN-REFERRALS AUTH=PLAIN\r\n
[17:16:46.152][a6a91b01] IMAP[DATA]: < TAG1 OK completed\r\n
[17:16:46.153][a6a91b01] IMAP[SECURE]: > TAG2 LOGIN<EMAIL_ADDRESS>"********"\r\n
[17:16:46.254][a6a91b01] IMAP[DATA]: < TAG2 OK [CAPABILITY IMAP4rev1 ACL BINARY CATENATE CHILDREN CONDSTORE ENABLE ESEARCH ESORT I18NLEVEL=1 ID IDLE LIST-EXTENDED LIST-STATUS LITERAL+ LOGIN-REFERRALS MULTIAPPEND NAMESPACE QRESYNC QUOTA RIGHTS=ektx SASL-IR SEARCHRES SORT THREAD=ORDEREDSUBJECT UIDPLUS UNSELECT WITHIN XLIST] LOGIN completed\r\n
[17:16:46.259][a6a91b01] IMAP[DATA]: > TAG3 SELECT "Divers"\r\n
[17:16:46.322][a6a91b01] IMAP[DATA]: < * 236 EXISTS\r\n
[17:16:46.322][a6a91b01] IMAP[DATA]: < * 0 RECENT\r\n
[17:16:46.323][a6a91b01] IMAP[DATA]: < * OK [UIDVALIDITY 24190] UIDs are valid for this mailbox\r\n
[17:16:46.323][a6a91b01] IMAP[DATA]: < * OK [UIDNEXT 18028] next expected UID is 18028\r\n
[17:16:46.323][a6a91b01] IMAP[DATA]: < * FLAGS (\Answered \Deleted \Draft \Flagged \Seen $Forwarded $MDNSent Forwarded $Junk $NotJunk Junk JunkRecorded NonJunk NotJunk $ReadReceipt)\r\n
[17:16:46.324][a6a91b01] IMAP[DATA]: < * OK [PERMANENTFLAGS (\Answered \Deleted \Draft \Flagged \Seen $Forwarded $MDNSent Forwarded $ReadReceipt \*)] junk-related flags are not permanent\r\n
[17:16:46.325][a6a91b01] IMAP[DATA]: < * OK [HIGHESTMODSEQ 30026] modseq tracked on this mailbox\r\n
[17:16:46.326][a6a91b01] IMAP[DATA]: < TAG3 OK [READ-WRITE] SELECT completed\r\n
[17:16:46.327][a6a91b01] IMAP[DATA]: > TAG4 CAPABILITY\r\n
[17:16:46.377][a6a91b01] IMAP[DATA]: < * CAPABILITY IMAP4rev1 ACL BINARY CATENATE CHILDREN CONDSTORE ENABLE ESEARCH ESORT I18NLEVEL=1 ID IDLE LIST-EXTENDED LIST-STATUS LITERAL+ LOGIN-REFERRALS MULTIAPPEND NAMESPACE QRESYNC QUOTA RIGHTS=ektx SASL-IR SEARCHRES SORT THREAD=ORDEREDSUBJECT UIDPLUS UNSELECT WITHIN XLIST\r\n
[17:16:46.378][a6a91b01] IMAP[DATA]: < TAG4 OK CAPABILITY completed\r\n
[17:16:46.379][a6a91b01] IMAP[DATA]: > TAG5 STATUS "Divers" (MESSAGES UNSEEN UIDNEXT)\r\n
[17:16:46.432][a6a91b01] IMAP[DATA]: < * STATUS "Divers" (MESSAGES 236 UIDNEXT 18028 UNSEEN 0)\r\n
[17:16:46.433][a6a91b01] IMAP[DATA]: < TAG5 OK STATUS completed\r\n
[17:16:46.434][a6a91b01] IMAP[DATA]: > TAG6 UID SORT RETURN (ALL) (ARRIVAL) US-ASCII ALL\r\n
[17:16:46.489][a6a91b01] IMAP[DATA]: < * ESORT (TAG "TAG6") UID ALL 13477,13476,13475,13474,13473,13472,13470,13469,13468,13467,13466,13465,13464,13463,13462,13461,13460,13459,13458,13457,13456,13455,13454,13453,13452,13451,13450,13448,13447,13446,13445,13444,13443,13442,13441,13440,13439,13438,13436,13435,13434,13433,13432,13431,13429,13428,13427,13426,13424,13423,13421,13420,13419,13418,13417,13416,13415,13393,13414,13413,13412,13410,13409,13408,13407,13406,13405,13404,13403,13402,13400,13399,13398,13397,13396,13395,13378,13394,13392,13390,13389,13388,13387,13386,13385,13383,13382,13381,13380,13379,13376,13375,13374,13372,13371,13370,13369,13368,13367,13366,13365,13364,13363,13361,13360,13359,13358,13357,13356,13355,13351,13354,13352:13353,13350,13349,13348,13347,13346,13345,13344,13343,13341,13340,13339,13338,13337,13336,13335,13334,13333,13332,13331,13330,13329,13327,13326,13324,13323,13322,13321,13320,13318:13319,13317,13316,13315,13313,13312,13310,13308:13309,13306:13307,13305,13304,13302,13301,13300,13299,13298,13297,13296,13295,13294,13293,13292,13291,13290,13289,13478,13480,13479,13481:13483,13485:13496,13499,13497:13498,13500:13501,13503:13512,13514:13518,13521,13520,13519,13522,17032,13523,17031,17029,17028,17030,17469,17476,17637,17682:17683,17781:17783,17879,17887,17896,17925,17943,17956,17977:17978,18027,18021\r\n
[17:16:46.492][a6a91b01] IMAP[DATA]: < TAG6 OK UID SORT completed\r\n
[17:16:46.493][a6a91b01] AJAX[DATA]: {"Action":"MessageList","Result":{"@Object":"Collection\/MessageCollection","@Count":0,"@Collection":[],"MessageCount":0,"MessageUnseenCount":0,"MessageResultCount":0,"Folder":"Divers","FolderHash":"3cda43c9a8c9d9cb8f200e6556144ab5","UidNext":"18028","NewMessages":[],"LastCollapsedThreadUids":[],"Of...
[17:16:46.494][a6a91b01] IMAP[DATA]: > TAG7 LOGOUT\r\n
[17:16:46.544][a6a91b01] IMAP[DATA]: < * BYE spooler1-g27.priv.proxad.net Zimbra IMAP4rev1 server closing connection\r\n
[17:16:46.554][a6a91b01] IMAP[DATA]: < TAG7 OK LOGOUT completed\r\n
[17:16:46.555][a6a91b01] IMAP[NOTE]: Disconnected from "ssl://imap.free.fr:993" (success)
[17:16:46.555][a6a91b01] INFO[MEMORY]: Memory peak usage: 768KB
[17:16:46.556][a6a91b01] INFO[TIME]: Time delta: 0.80066800117493

Thanks in advance for any help

Thanks! It will be fixed in the next version.
Fast fix:
./data/..../application.ini
[labs]
use_imap_esearch_esort = Off

Wow, so fast !
Works, thanks a lot !


Version 0.10.0 breaks writing secrets (or so it seems)

When I create a secret the same way as before, with version 0.10.0, I get an error that appears to be related to a new feature in 0.10 -- versioned secrets.
The message I get is:
hvac.exceptions.InvalidPath: {"request_id":"8ef5d3c3-75f6-78c9-ef56-e82e547aaafc","lease_id":"","renewable":false,"lease_duration":0,"data":null,"wrap_inf":null,"warnings":["Invalid path for a versioned K/V secrets engine. See the API docs for the appropriate API endpoints to use. If using the Vault CLI, us 'vault kv put' for this operation."],"auth":null}

Given the "write" API - I have no idea how to proceed to get around this...

Never mind. It's just supposed to start with data/secrets instead of /secrets.
 But not your problem.


Support for multiple subdirectories

Currently, Ghost's subdirectory support works by allowing a user to specify that their url, in config.js is something like http://my-main-website.com/blog/.
For the longest time, this was fine and not that common. However, with the SEO revolution that showed subdomains were a bad idea, subdirectories have become far more common. Further still, as Ghost reaches a wider market we're starting to see people wanting to use a structure of multiple subdirectories (e.g. to handle i18n)
If you set your subdirectory to something like /en/blog/, our url handling is, as always, leaving much to be desired 😞 . I think this is because the subdirectory de-duplicating code doesn't handle multiple subdirectories.
Routing works just fine, as do most relative urls for assets and absolute urls for the RSS feed. However the canonical URLS output the subdirectories twice - so you get multiple, multiple subdirectories, E.g. <link rel="canonical" href="http://localhost:2368/en/blog/en/blog/">
Here's a screenshot of my header in casper on my local dev blog:

It's soooo close to being OK... sooo close... and then the canonical URL (also uses for og/twitter tags) goes and blows it 💥
Navigation is all fine as well:

[ ] Fix canonical URL generation with multiple subdirectories
[ ] Revisit the deduplicate subdirectory code - there has to be a better way to do this using url.parse
[ ] Investigate if there are other bits of code which break - do a search for subdir in core/server (there are 43 instances at a quick look) and see if any of them do anything dumb that won't work if there is more than one subdirectory in the path.

This was never really intended to work, so it's only very loosely a bug because it does almost work :grin:

This was closed by 9222577 over a year ago! Had no idea 😳


chore(deps): upgrade runtime dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-runtime-dependencies-2.x" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 2314

Questions ?
Please refer to the Backport tool documentation


pull request for e2e test at 12/05/2016 09:45:01

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

optest/docs/updated_at.md
:white_check_mark:Succeeded

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


Error, failed to import revisions

When running a recent import, many of the work item revisions showed this error:
[E][13:17:07] Failed to import revisions for '1232973'.
[Microsoft.TeamFoundation.WorkItemTracking.Client.UnexpectedErrorException] Microsoft.TeamFoundation.WorkItemTracking.Client.UnexpectedErrorException: TF237121: Cannot complete the operation. An unexpected error occurred.

Technical information (for administrator):
VS402625: Dates must be increasing with each revision.
   ---> System.Web.Services.Protocols.SoapException: VS402625: Dates must be increasing with each revision.
   at Microsoft.TeamFoundation.WorkItemTracking.Proxy.RetryHandler.HandleSoapException(SoapException se)
   at Microsoft.TeamFoundation.WorkItemTracking.Proxy.WorkItemServer.Update(String requestId, XmlElement package, XmlElement& result, MetadataTableHaveEntry[] metadataHave, String& dbStamp, IMetadataRowSets& metadata)
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SendUpdatePackage(XmlElement package, XmlElement& result, Boolean bulk)
   --- End of inner exception stack trace ---
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SendUpdatePackage(XmlElement package, XmlElement& result, Boolean bulk)
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SaveWorkItems(WorkItem[] workitems, Boolean bulk, SaveFlags saveFlags)
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem.Save(SaveFlags saveFlags)
   at WorkItemImport.Agent.SaveWorkItem(WiRevision rev, WorkItem newWorkItem)
   at WorkItemImport.Agent.ImportRevision(WiRevision rev, WorkItem wi):
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SendUpdatePackage(XmlElement package, XmlElement& result, Boolean bulk)
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SaveWorkItems(WorkItem[] workitems, Boolean bulk, SaveFlags saveFlags)
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem.Save(SaveFlags saveFlags)
   at WorkItemImport.Agent.SaveWorkItem(WiRevision rev, WorkItem newWorkItem)
   at WorkItemImport.Agent.ImportRevision(WiRevision rev, WorkItem wi)

Looking through the Jira issues that triggered this error, I have not been able to find the cause of this. Do you have any thoughts or suggestions?

@dan-miller can you share one of the files you are having trouble with?

PRJ-123-scrubbed.zip

I am having a similar problem.  I had a config file that was working a few weeks ago and now without any changes it is giving me this error.
I tried using the sample config instead (and just updating the top area) and I still get this error message.  It's possible this started after the Sprint 156 Update of ADO.
Failed to import revisions for '0'.
[Microsoft.TeamFoundation.WorkItemTracking.Client.UnexpectedErrorException] Microsoft.TeamFoundation.WorkItemTracking.Client.UnexpectedErrorException: There is a problem on the server. Contact your Team Foundation Server administrator. ---> System.Web.Services.Protocols.SoapException: VS403417: ChangedBy value cannot be empty when BypassRules is specified
at Microsoft.TeamFoundation.WorkItemTracking.Proxy.RetryHandler.HandleSoapException(SoapException se)
at Microsoft.TeamFoundation.WorkItemTracking.Proxy.WorkItemServer.Update(String requestId, XmlElement package, XmlElement& result, MetadataTableHaveEntry[] metadataHave, String& dbStamp, IMetadataRowSets& metadata)
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SendUpdatePackage(XmlElement package, XmlElement& result, Boolean bulk)
--- End of inner exception stack trace ---
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SendUpdatePackage(XmlElement package, XmlElement& result, Boolean bulk)
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SaveWorkItems(WorkItem[] workitems, Boolean bulk, SaveFlags saveFlags)
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem.Save(SaveFlags saveFlags)
at WorkItemImport.Agent.SaveWorkItem(WiRevision rev, WorkItem newWorkItem)
at WorkItemImport.Agent.ImportRevision(WiRevision rev, WorkItem wi):
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SendUpdatePackage(XmlElement package, XmlElement& result, Boolean bulk)
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.SaveWorkItems(WorkItem[] workitems, Boolean bulk, SaveFlags saveFlags)
at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem.Save(SaveFlags saveFlags)
at WorkItemImport.Agent.SaveWorkItem(WiRevision rev, WorkItem newWorkItem)
at WorkItemImport.Agent.ImportRevision(WiRevision rev, WorkItem wi)

I managed to fix the issue, on the Agent.cs go to ImportRevision function and the following code to the try-catch at line 822:
     finally
            {
                System.Threading.Thread.Sleep(10);
            }

it seems that the issue was happening because of the short time between each revision insert so it should wait a while before inserting the next one.

Thanks for the details @quadmig and @dan-miller. I've tested importing your files and it worked ok on my Azure DevOps account. Will review @hqaffesha-acacustech comment to see if that's the root cause but great if you give it a try to see if it works for you.

@MOlausson , thanks for the response.  Unfortunately, the @hqaffesha-acacustech  comment did not solve the issue for me.  However, it appears the cause of my problem was that the work item type I was trying to import as had been disabled on the ADO server.  It is working now.  Thank you.

@quadmig happy to hear you got passed this issue! I do also think we're on to something timing related, I'll review the code and see if it makes sense to add retries for some error conditions. Thanks @hqaffesha-acacustech for spotting this.

Added retry logic on certain errors to the backlog. Closing this issue.


Token Refactor Step 6: Miscellaneous refactorings

Feature Request

IdentityProviderKeyResolver: use a builder and remove references to IdentityProviderKeyResolverConfiguration
TransferDataPlaneCoreExtension: remove privateKeyResolver field (unused)
remove PrivateKeyWrapper and PublicKeyWrapper

Which Areas Would Be Affected?
e.g., DPF, CI, build, transfer, etc.
Why Is the Feature Desired?
Are there any requirements?
Solution Proposal
If possible, provide a (brief!) solution proposal.

the field TransferDataPlaneCoreExtension#privateKeyResolver is actually still needed, because the ConsumerPullDataPlaneProxyResolver needs it to generate access tokens.


Update README.md file for version 1.0.1

Update "Download" section, add information about min SDK version and latest version of the library.

Done.


The API I want is not in cocoa, is it possible to add this example

For example, I want to call GCController.controllers
I don't know the mechanism of macdriver (is it called using reflection?) I also don't know about objective-c, so I would like to get a more detailed example

In general, you can get top level symbols with objc.Get and then call Send on them. Arguments and return values have to be converted but there are helpers for that.


How can I stop k3s apiserver listening  {IP}:6443/static/charts directory?

After deploying k3s, the security scan indicates that I have exposed the 6443/static/charts port. Does k3s have any configuration to support shutting down the listening of this address? Also, I am not using the traefik component in the charts directory.
[root@linkone ~]# ls /var/lib/rancher/k3s/server/static/charts/
traefik-25.0.3+up25.0.0.tgz  traefik-crd-25.0.3+up25.0.0.tgz
[root@linkone ~]#
[root@linkone ~]# curl -k -v https://<IP_ADDRESS>:6443/static/charts/
* About to connect() to <IP_ADDRESS> port 6443 (#0)
*   Trying <IP_ADDRESS>...
* Connected to <IP_ADDRESS> (<IP_ADDRESS>) port 6443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* skipping SSL peer certificate verification
* NSS: client certificate not found (nickname not specified)
* SSL connection using TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
* Server certificate:
*       subject: CN=k3s,O=k3s
*       start date: Dec 31 16:05:13 1999 GMT
*       expire date: Jun 22 07:31:00 2025 GMT
*       common name: k3s
*       issuer: CN=k3s-server-ca@946656312
> GET /static/charts/ HTTP/1.1
> User-Agent: curl/7.29.0
> Host: <IP_ADDRESS>:6443
> Accept: */*
>
< HTTP/1.1 200 OK
< Content-Type: text/html; charset=utf-8
< Last-Modified: Sat, 22 Jun 2024 08:51:04 GMT
< Date: Sat, 22 Jun 2024 09:19:47 GMT
< Content-Length: 161
<

traefik-25.0.3+up25.0.0.tgz
traefik-crd-25.0.3+up25.0.0.tgz

* Connection #0 to host <IP_ADDRESS> left intact
[root@linkone ~]#

There is not currently any option to disable this functionality. Is it causing some problem?
fwiw this is covered in the docs: https://docs.k3s.io/helm

Content placed in /var/lib/rancher/k3s/server/static/ can be accessed anonymously via the Kubernetes APIServer from within the cluster. This URL can be templated using the special variable %{KUBERNETES_API}% in the spec.chart field. For example, the packaged Traefik component loads its chart from https://%{KUBERNETES_API}%/static/charts/traefik-12.0.000.tgz.

Thank you for your reply.The security scanning software has detected a security vulnerability on the node where I installed k3s, so I'm asking if there are any related configurations that can disable the listening of this path.


XSD invalid namespace reference

https://github.com/DK-Hostmaster/epp-xsd-files/blob/master/dkhm-4.0.xsd#L17
This erroneously references the prefix "urn:ietf:" when it should be "urn:dkhm:" to make the result "urn:dkhm:params:xml:ns:dkhm-domain-4.0"
This error seems to be repeated for 4.1 as well:
https://github.com/DK-Hostmaster/epp-xsd-files/blob/master/dkhm-4.1.xsd#L17
This ignores the matter that neither the (dkhm-domain-4.0 or domain-1.0) namespace contents are referenced from inside the XSD directly, so the IMPORT element should be omitted entirely as a better solution, along with any unused namespace prefixes.

Thanks @dlmiles
Looks like a copy-paste error on my behalf, I will address is ASAP


Update AriesOpenAPIDemo.md clarify callback can be one of webhook or websocket depending how agent is configured

I've been working on ACA-Py for literal years and only recently realized that we supported delivering webhooks over websocket :smile: Not sure how I overlooked it for so long... I think adding emphasis that webhooks can be posted to a configured webhook URL or sent via websocket somewhere in the docs would be helpful. There's an allusion to this support in the Multitenancy docs but it's more of a side note.
I agree with @swcurran on terminology but I am also interested in updates to this doc that clarify websockets can be used.

It's been a while since we heard from OP so I opened a new PR with feedback implemented. Thanks @miroslav-inc for your contributions! I'll close this PR in favor of #2287.


tiktok live not  downloading? user is live but yt-dlp says theyre not

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 have updated yt-dlp to nightly or master (update instructions)
[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
United States
Provide a description that is worded well enough to be understood
i put in the share link from tiktok live but it just says creator not live. i also use the https://tiktok.com/[creator]/live but that also comes back with the is not live result
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: ['tiktok.com/@tylerliv314/live', '-vU']
[debug] User config "/data/data/com.termux/files/home/.config/yt-dlp/config": ['--output', '/data/data/com.termux/files/home/storage/shared/_Saved Live Streams/%(uploader)s/%(uploader)s ~ %(fulltitle|).80s ~ %(epoch-3600>%Y-%m-%d ~ %I:%H:%M.%S.%p)s.%(ext)s', '--cookies', '/storage/emulated/0/cookies.txt', '--compat-options', '-no-youtube-channel-redirect,-no-youtube-prefer-utc-upload-date,-no-live-chat,-embed-metadata,-no-external-downloader-progress', '--extractor-args', 'youtube:player-client=web;youtube:player_skip=webpage,web,js;youtube:skip=translated_subs,webpage,web,ios,android;youtubetab:skip=webpage;youtube:formats=duplicate;twitch:twitch:client_id=Y4BQvDDWKlXdICSniiu1qgaVeGcsxiXb;generic:fragment_query=variant_query=VALUE', '--legacy-server-connect', '--fragment-retries', '4', '--skip-unavailable-fragments', '--merge-output-format', 'mp4', '--no-abort-on-error', '--no-cache-dir', '--no-call-home', '--mtime', '--socket-timeout', '30', '--no-part', '--no-part', '--ignore-errors', '--remux-video', 'mp4', '-S', 'tbr:ext=m4a', '-f', 'bv*', '--downloader', 'axel']
[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>from yt-dlp/yt-dlp [615a84447]
[debug] Lazy loading extractors is disabled
[debug] Python 3.11.8 (CPython aarch64 64bit) - Linux-5.10.168-android12-9-27760517-abS908U1UES4DXB5-aarch64-with-libc (OpenSSL 3.2.1 30 Jan 2024, libc)
[debug] exe versions: ffmpeg 6.1.1 (setts), ffprobe 6.1.1
[debug] Optional libraries: Cryptodome-3.20.0, brotli-1.1.0, certifi-2024.02.02, mutagen-1.47.0, requests-2.31.0, sqlite3-3.45.2, urllib3-2.2.1, websockets-12.0
[debug] Proxy map: {}
[debug] Request Handlers: urllib, requests, websockets
[debug] Loaded 1806 extractors
[debug] Fetching release info: https://api.github.com/repos/yt-dlp/yt-dlp/releases/latest
Latest version<EMAIL_ADDRESS>from yt-dlp/yt-dlp
yt-dlp is up to date<EMAIL_ADDRESS>from yt-dlp/yt-dlp)
[generic] Extracting URL: tiktok.com/@tylerliv314/live
WARNING: [generic] The url doesn't specify the protocol, trying with http
[tiktok:live] Extracting URL: http://tiktok.com/@tylerliv314/live
[tiktok:live] tylerliv314: Downloading webpage
[tiktok:live]<PHONE_NUMBER>538009390: Downloading JSON metadata
ERROR: [tiktok:live] tylerliv314: The channel is not currently live
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/yt_dlp/extractor/common.py", line 732, in extract
    ie_result = self._real_extract(url)
                ^^^^^^^^^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/yt_dlp/extractor/tiktok.py", line 1224, in _real_extract
    live_info = self._call_api(
                ^^^^^^^^^^^^^^^
  File "/data/data/com.termux/files/usr/lib/python3.11/site-packages/yt_dlp/extractor/tiktok.py", line 1204, in _call_api
    raise UserNotLive(video_id=uploader)

Duplicate of #9418


Treat empty files differently from non-existent

Return an 'undefined' config along with the file path for empty
configuration files when both traversing directories and loading
defined files.  Previously empty configuration files would prompt
an error upon loading defined files and be silently passed over
during directory traversal.

BREAKING CHANGE: treats empty files differently

Something concrete to discuss for #106
I assume all "empty config" scenarios are error cases, so I could also see us throwing an error and attaching a property 'filepath' to it so consumers (e.g. prettier-atom) can pass that debugging information onto users.
Just let me know how you guys prefer to handle empty configs - but I do feel they should be somehow treated differently from non-existent files.  I also feel it should be the same whether the config is loaded directly (defined file) or via directory traversal.

I like this change. @sudo-suhas, do you?

I assume all "empty config" scenarios are error cases, so I could also see us throwing an error and attaching a property 'filepath' to it so consumers (e.g. prettier-atom) can pass that debugging information onto users.

I'm thinking I'd rather leave that to the consumer. They can decide how to validate their config files. As long as they can reliably identify an empty file (which this PR makes possible), I'm not sure an error is necessary.

I do feel they should be somehow treated differently from non-existent files

I agree. @sudo-suhas @olsonpm are we confident this change covers all the cases @sudo-suhas laid out here in a consistent way: https://github.com/davidtheclark/cosmiconfig/pull/78#issuecomment-318810892?

Just let me know how you guys prefer to handle empty configs - but I do feel they should be somehow treated differently from non-existent files. I also feel it should be the same whether the config is loaded directly (defined file) or via directory traversal.

I think my preference is to do what this PR does. @olsonpm what do you think are the open questions?

I'm thinking I'd rather leave that to the consumer.

Makes sense.  Thanks

are we confident this change covers all the cases sudo-suhas laid out here in a consistent way?

I'll test that and edit this post with my results

what do you think are the open questions?

Nothing I can think of.  I would like sudo-suhas' approval before I manually test this branch (I'm never confident with first PRs, and I don't like testing before the implementation is agreed-upon).  After I test I'll remove the WIP

I was out of town during the last few days and hence the delayed response.
My thoughts:

Would it be better to accept a config option to determine behavior for empty config files? Might be a little complicated to implement as it would need to handle the cases for 'resolveEmpty'|'ignoreEmpty'|'throwEmpty'. This would simplify scenarios like 'load only a non-empty cfg'.
Instead of returning { config: undefined, filepath }, how about adding a boolean field emptyCfg instead? I think this might be cleaner. Would also avoid an extreme edge case of JS file with module.exports = undefined

i'm still apathetic as to the implementation and will implement whatever you guys agree on

haha okay

Would it be better to accept a config option to determine behavior for empty config files

I think until a consumer has a need for empty config files other than for friendly error messages, we should hold off on allowing it to be customized.

Instead of returning { config: undefined, filepath }, how about adding a boolean field emptyCfg instead?

cleaner indeed 👍

I think until a consumer has a need for empty config files other than for friendly error messages, we should hold off on allowing it to be customized.

I was thinking of the scenario the other way around. Currently, cosmiconfig will resolve with the first non-empty cfg it finds while searching up the directory tree. But with this change, to get the old behavior, the search would need to be restarted from the directory with the empty file.

In that case would ignoreEmpty only apply for search then?  (using the new terminology search/load)

I think, if the option is part of the config used to instantiate the explorer instance, it should be applicable for both. Otherwise, we could accept it as the second parameter with ignoreEmpty as the default for search and throwEmpty for load.

Yeah I'm torn.  The argument for backward compatibility is good for sure, but I don't think empty file behavior should differ between search and load meaning I would prefer that option to exist for both.  But then I think ignoring an empty file when loading it directly would be extremely confusing behavior.  So in my opinion the decision comes down to a value judgement between backward compatibility and simplicity.  I don't want to make that call haha.

Ok, to help finalize a decision — here's what I see as the use cases:

Using load, if the config I point to is empty I want an error.
Using load, if the config I point to is empty I don't want an error; just give me undefined for the content.
Using search, if an empty config is found I want an error.
Using search, if an empty config is found I don't want an error, but I do want the search to stop; just give me undefined for the content.
Using search, if an empty config is found I want the search to skip over it and continue.

For throwing vs not throwing: I'm in favor of leaving this in the hands of the user. cosmiconfig can just give them undefined content, and the user can determine how to respond. I don't think an edge case like module.exports = undefined is worth worrying about, as that seems to indicate the exact same intention as a completely empty yaml file, for example.
The idea of skipping over an empty config only applies to search, doesn't really have any parallel for load. If we follow through with splitting out search and load functions, the second argument to either could an options argument, and ignoreEmpty could be an option for search, not something you an option for cosmiconfig, when you instantiate the explorer (load wouldn't have any options yet).
How does this sound @sudo-suhas @olsonpm?

It sounds good @davidtheclark. Just to summarise,

If load gets an empty file, return { config: undefined, filepath, isEmpty: true }. The user can choose to throw an error for this by checking the result.
search uses the ignoreEmpty parameter to either return the empty config result or continue the search.

Do you think it would make sense to recommend throwing the error in the transform function? We could implement and export this so the user could do something like this:
const explorer = cosmiconfig(moduleName, {
  transform: cosmiconfig.throwOnEmpty,
})

@sudo-suhas I'm not sure I'm convinced that a isEmpty: true in the return object or a throwOnEmpty helper are worth the additional API surface for this module.
For isEmpty: true — do you really think there will be a user who needs to distinguish between a JS file that's completely empty and one that's module.exports = undefined? That seems like an unrealistic edge case, or at least one that we don't need to cater to.
For throwOnEmpty — I don't think this provides enough convenience that it's worth an API addition. When the user gets a config object, they can check if the content is undefined and respond accordingly.
Do you think I'm not understanding some benefits?

For isEmpty: true — do you really think there will be a user who needs to distinguish between a JS file that's completely empty and one that's module.exports = undefined? That seems like an unrealistic edge case, or at least one that we don't need to cater to.

No, I am in agreement with you on this. My intention was not to say that this is the main reason for the flag. To clarify, these are the reasons I am advocating it

When we return { config: undefined, filepath } as the result, we are attaching special meaning to the undefined which might not be immediately obvious.
I think having a isEmpty flag is explicit. In the client code, for someone reading it without complete familiarity with cosmiconfig API, consider the following:explorer.search()
  .then(result => {
    // Usage with proposed
    if (result !== null && result.isEmpty) { /* do something */ }

    // Without the flag present
    if (result !== null && result.config === undefined) { /* do something */ }
  })

In my opinion the proposed syntax is much easier to understand without having to consult the documentation to understand what undefined signifies.

For throwOnEmpty — I don't think this provides enough convenience that it's worth an API addition. When the user gets a config object, they can check if the content is undefined and respond accordingly.

Alright, fair enough. How about just having the following in the documentation:
// To throw an error on getting an empty configuration file
const explorer = cosmiconfig(moduleName, {
  transform: result => {
    if (result.isEmpty) {
      throw new Error(`Config file is empty! Filepath - "${result.filepath}".`);
    }

    return result;
  },
})

yeah to me using isEmpty is just like avoiding a -1 magic number return which is then documented to mean something.  Where every time you see -1 in the code you have to either remember what it means or refer to the documentation, and my memory for things like that is nil.

Ok, I'm fine with having isEmpty since you both want it 👍
@olsonpm — I think we're all agreed upon the goals now, right?

I think I addressed

use double equals null instead of checking for typeof

fixed issue where the config wasn't being set to undefined in loadRc (previously I had missed that portion)

added isEmpty: true only when the content is empty.
I decided against setting isEmpty to false explicitly because it seemed unnecessary.  I also made sure isEmpty wasn't being set to false anywhere to prevent users from checking isEmpty === false

I decided against documenting the error on isEmpty transform because

The transform portion of the documentation was already fairly large
Adding an error check goes against the previous recommendation of utilizing the transform for extra io whose result can be cached.

Regardless, I'll add it if you want me to.

Finally, I kept the code verbose in the new tests for empty rc files because that seemed to be consistent with the existing code.  Let me know if you want that slimmed down.

hmm re-reading this thread now I didn't realize you guys agreed on adding ignoreEmpty.  Also I'll rebase this onto the search/load branch, knowing I'll have to rebase it on master once it gets mereged.

I removed one review comment which was no longer relevant.

@olsonpm thanks for the continued excellent work! Would you like to be added as a collaborator to this project, on GitHub and npm?
Once you and @sudo-suhas are pleased with this let's merge. Then please give me a little while so I can find some time to take a pass myself over the code and especially the documentation before we release 5.0.

Added a couple notes to the changelog
Slimmed down src/loadRc.js

@sudo-suhas don't worry about nit-picks if you have any.  I'd much prefer to write code that fits your guys' "voice" per se.
@davidtheclark I'd like to be a collaborator.  Thanks.  I haven't done much in terms of managing npm packages so if something happened I'd be learning how to fix it rather than just fixing it haha.  Any code modifications I'd also still be looking heavily for your and suhas' input because I'm not confident in writing code that matches your style.  But I'm willing to write code and definitely help out with issues.
Finally - no rush on getting it merged.

The description you are giving fits @davidtheclark rather than me 😃. I am kinda new here too.

Guess it also depends on whether it makes sense for the options to exist in the explorer as a default, specified per-call, or both.  I haven't used cosmiconfig enough to have a feel for what scope is appropriate.

There is also the option of accepting searchOptions and loadOptions in the createExplorer options but that might be taking it too far.

yeah that was my thought as well.  Maybe wait until someone requests it?
Another thought I had was to make load and search take a single argument each, to get rid of the awkward search(undefined, { ignoreEmpty: false })
e.g.
// instead of this
function search(searchPath, searchOptions = {}) {
  const { ignoreEmpty = true } = searchOptions
  // ...
}

// we could do this
function search(searchOptions = {}) {
  const {
    ignoreEmpty = true,
    searchPath = process.cwd()
  } = searchOptions
  // ...
}

I know the more common approach in the javascript wild is to collapse the arguments, e.g.
function search(searchPath, searchOptions) {
  if (typeof searchPath === 'object') {
    searchOptions = searchPath
  }
  // ...
}

I personally think this approach makes input difficult to validate so I don't use it in my own code, but it's another option.  Again, probably an unnecessary problem to tackle atm

Another thought I had was to make load and search take a single argument each

I like this idea and am in agreement with you w.r.t collapsing the arguments.

sounds good.

Alright everything I haven't commented on should be fixed/pushed.  Thanks much for taking a look.

The following comments were not addressed:

https://github.com/davidtheclark/cosmiconfig/pull/107#discussion_r173060710
https://github.com/davidtheclark/cosmiconfig/pull/107#discussion_r173060941
https://github.com/davidtheclark/cosmiconfig/pull/107#discussion_r173061820
https://github.com/davidtheclark/cosmiconfig/pull/107#discussion_r173062200
https://github.com/davidtheclark/cosmiconfig/pull/107#discussion_r173062208
https://github.com/davidtheclark/cosmiconfig/pull/107#discussion_r173062453

Maybe you missed them because they were collapsed?

Okay - the latest commit addresses

the repetitive parsing code
remove unnecessary yml test
add empty files in existing tests to ensure intended default 'ignoreEmpty' behavior

The commit prior to that should have addressed the other small changes that I missed per your earlier comment.  Again, sorry to cause the unnecessary back and forth.

done

not a problem.  I really appreciate your patience

the preference was regarding variable names. I've been going verbose lately

This is purely academic discussion at this point but I was in the same boat as you. However, I have come to grudgingly concede that short variable names are not bad as we have been told. And in fact, having short variable names makes a lot of sense in some situations. See https://talks.golang.org/2014/names.slide#1 if you are interested.

haha.  Thanks for the link.  Who knows how I'll code two years from now but I don't see myself straying toward some of these opinions e.g.

A good name is

easy to type

or

Prefer r to reader.
Prefer b to buffer.

as I have a moral stance against single letter shell options.  I understand that one can learn to read these, but they are hardly intuitive.  One thing that drove me nuts earlier was learning why on earth vue decided createElement should be aliased as h in their documentation.  A couple angry googles led me to the source, only to still wonder "is typing createElement really so inconvenient that they need a single, seemingly unassociated letter to replace it?"
There's definitely a class of programmers who highly value conciseness and my guess is they tend to have better memories than us mortals.  I'm convinced they are the ones who created sh and bash and are to blame for all the insane variable manipulations cryptically available
Anyway, I'm currently focused on writing code that reads english'y.  I understand it's not possible in certain circumstances due to english hardly being computer friendly - and lower level operations or code focused on performance will never read well, but their overall operations can easily be wrapped in a nice intuitive function name where its internals are shielded from innocent eyes.

Thanks for all the work. I'm going to merge this into a v5 branch and we can follow up with other details, if we'd like before release.
@sudo-suhas I dunno ... in that slideshow you linked, the only reason I found for preferring short names was "long names obscure what the code does". And I don't understand that justification. 🤷♂

@sudo-suhas @olsonpm I pushed a v5 branch and forced master back to the 4.0.0 tag. You'll probably need to delete your local master and re-pull it next time you need it.

@davidtheclark I understand what you mean. I personally prefer neither extreme. In some cases, the short variable names conveys precise information about it's role(like i instead of index or idx). Furthermore, I think some of these conventions apply more for statically typed language where the variable declaration provides good amount of information about what the variable is for.

You'll probably need to delete your local master and re-pull it

git pull --rebase takes care of it just fine.

@davidtheclark What are your thoughts on this - https://github.com/davidtheclark/cosmiconfig/pull/107#issuecomment-371377662

@davidtheclark What are your thoughts on this - #107 (comment)

Thanks for pointing that out.
Maybe we should remove the format option for load. The amount of time it might save (by avoiding an attempt at parsing JS as YAML) would be so inconsequential.
And for searchPath[, searchOptions], I'm fine with the approach "in the javascript wild" of collapsing the arguments. But I think @olsonpm's suggestion to just have a single options argument for both functions is the nicest. If you're ok with that, I'll work that in.

Maybe we should remove the format option for load.

I am okay with this.

But I think @olsonpm's suggestion to just have a single options argument for both functions is the nicest.

I too agree, let's do it


[5.8] Router name filtered for striping whitespaces

While coding I faced with incorrect router name error. I have realized that there is whitespace on the beginning of my router name because of it I have filtered router name ignoring whitespaces. It irritates me a lot finding conflict if there is whitespace on the begin or end of my router name. I would like my PR to be accepted.

I'm not sue we should be trimming whitespace here. If anything, we should remove the whitespace trimming from the other location, so the error is more obvious.

You should pass the name without white space.


Working with scopes in postman

I'm using postman to access a route with the middleware oauth. I'd like to use scopes, but I don't know how to send data with postman when I set my route like the scopes exemple
Route::get('user', ['middleware' => 'oauth:scope1+scope2', function() {
//
}]);
I added date do oauth_client_scopes and oauth_scopes, but still can't figure out!
I just received this error message
{
"error": "invalid_scope",
"error_description": "The requested scope is invalid, unknown, or malformed. Check the "scope1,scope2" scope."
}
Someone knows how to use scopes and test with postman?

Have you checked if the client_id you added to oauth_client_scopes is the same as the one in oauth_clients as well as the one in your request?

Thanks for using this package!
For this kind of support questions, we'd like you to use the following resources:

Documentation
OAuth 2.0 Documentation
Laracasts
Laravel Slack
Stack Overflow

This will allow us to keep the issues for bug reporting only and make our work easier.


Updated documentation in examples

Documentation in examples recommends using tokio 0.2 as dependency, while README.md recomends tokio 1.
I've updated comments in examples according to readme.

It's strange that build failed, even thought I've only changed comments in examples 🤷🏻

Thanks for the PR! The test failure was indeed unrelated, being fixed in https://github.com/seanmonstar/reqwest/pull/1223


Confusing/misformed clustered-fasta output

Hope I am not making a simple mistake but output seems to be not what I expect. Thanks for any help.
Expected Behavior
Fasta-formatted cluster results have output following documentation.
Current Behavior
Fasta-formatted cluster results have empty lines that don't seem to correspond to correct clustering.
Examples:
>Pip8wV
>Pip8wV
MQKNLIQRYIPLSDKNWFCTGGPARFYTEPETTQEFVKSLEFANLHNLELFILGKGANILISDNGFDGLVIKPNLQQISHQDYDNDHALVHAQAGACIKDLITYCLKNNMTGPEEFSGIPGTIGGSVYINIHYFNFFLSDFLYNAQVIHKKTGDIFTVTKNWFNFGYDKSKLFEKEYFLVQATFKLKKITPIKAAYATGRSIEIIRHRNARYPNSGTCGSFFRNFLDSEVTLNIAGTEKKMIYVGYYLDKLGVKGNLNVGGASVSHKHANMIVNTNNATSTDIINLARQMQKLVQENFGITPQPECQLIGFKKYPLL*
>PJB17I
>E7HKRc
MFKRSVCVFCGSRKGRNPAHEAAATDLGTALAQNDMRLVYGAGDVGLMGAVARAAQAAGGETFGVIPDHLVKWEVGKTDLTRYIVTETMHERKKVMFMNCDAVVVLPGGAGSLDEYFEVLTWRQIGLHEKPVFLLNTEGYWTKLIHLIDHVIDEGFADASLRDYTTVVDTVQDLMDGLGATGR*

and
>S2LnDK
>S2LnDK
MNNKSENQSSQGDARRGMLIGMALGMGIGAVIGLVLGDISSGFIIGMGIGAAVGYWRFRDTPIGMRYPPHLVRQLIISGLLYLVTLIGVIYLLEYNLNRSIEIILVLLPALPGIWFLVSLGRAIASLDELQRFIQLEGIAIGFGITAMAALTYGLLGMAGVPQVSWMYVPVVMVFGWFLGKMWTLWRYR*
>E6GnE9
>PYRss2
MKKAMATSKSQFKTMDEYIATFPENVRDVLEKLRRTIMESAPKAEETISYGMPAFKLNGKSLVYFAAWKNHIGFYPAGPSAIKAFKKELSPFRQAKGTIQFPLDKPIPIDLVKKIVKFRVEENESKKK*

Where in original input file, we see:
>PJB17I
MQKRSICVFCGASDGIDSAYGAAADTLGRLIASHKMRLVYGAGDVGLMGRVARAAQKDGAATFGVIPKHLVNWEVGKTDLTTYIITENMHERKKVMFMNSDAIALLPGGAGSLDEFFEVLTWAQLGLHDKPIVLININSYWGPLLALLDHVIAQGFAKENIKDFFQIAVTPEEAMSKLA*

... and elsewhere in file ...
>E6GnE9
MNNKTGIQPIDEYIAAFPEEVQEKLISIYRLIAGDVPEATVKISYGMPTFVLNGNLVHFAAFKNHIGFYPAPSGIQAFQEELAGYKTSKGAIQFPLDKPVPYELISKITAFRVAENVKNN*

It seems that PJB17I should cluster with E7HKRc (they're ~50% identical) but then I would expect the output to be:
>PJB17I
>PJB17I
MQKRSICVFCGASDGIDSAYGAA...
>E7HKRc
MFKRSVCVFCGSRKGRNPAHE...

Based on latest documentation.
Steps to Reproduce (for bugs)
Just the commands (see full log below):
user@user:~$ ./mmseqs/bin/mmseqs createdb experiments/small_sample.fa experiments/small.mm.db
user@user:~$ ./mmseqs/bin/mmseqs linclust experiments/small.mm.db experiments/small50.mm.db experiments/tmp/ --min-seq-id 0.5
user@user:~$ ./mmseqs/bin/mmseqs createseqfiledb experiments/small.mm.db experiments/small50.mm.db experiments/small50_seq
user@user:~$ ./mmseqs/bin/mmseqs result2flat experiments/small.mm.db experiments/small.mm.db experiments/small50_seq experiments/small50_seq.fa
MMseqs Output (for bugs)
Full session output:
user@user:~$ ./mmseqs/bin/mmseqs createdb experiments/small_sample.fa experiments/small.mm.db
Converting sequences
[24948] 0s 72ms
Time for merging to small.mm.db_h: 0h 0m 0s 37ms
Time for merging to small.mm.db: 0h 0m 0s 16ms
Database type: Aminoacid
Time for merging to small.mm.db.lookup: 0h 0m 0s 0ms
Time for processing: 0h 0m 0s 204ms
user@user:~$ ./mmseqs/bin/mmseqs linclust experiments/small.mm.db experiments/small50.mm.db experiments/tmp/ --min-seq-id 0.5
linclust experiments/small.mm.db experiments/small50.mm.db experiments/tmp/ --min-seq-id 0.5

MMseqs Version:                     	02be0c4ea6183fce9cf45521a8c145d10f3928c1
Cluster mode                        	0
Max depth connected component       	1000
Similarity type                     	2
Threads                             	12
Compressed                          	0
Verbosity                           	3
Substitution matrix                 	nucl:nucleotide.out,aa:blosum62.out
Add backtrace                       	false
Alignment mode                      	2
Allow wrapped scoring               	false
E-value threshold                   	0.001
Seq. id. threshold                  	0.5
Min. alignment length               	0
Seq. id. mode                       	0
Alternative alignments              	0
Coverage threshold                  	0.8
Coverage mode                       	0
Max sequence length                 	65535
Compositional bias                  	1
Realign hits                        	false
Max reject<PHONE_NUMBER>
Max accept<PHONE_NUMBER>
Include identical seq. id.          	false
Preload mode                        	0
Pseudo count a                      	1
Pseudo count b                      	1.5
Score bias                          	0
Gap open cost                       	11
Gap extension cost                  	1
Alphabet size                       	21
K-mers per sequence                 	21
scale k-mers per sequence           	0
Adjust k-mer length                 	false
Mask residues                       	0
Mask lower case residues            	0
K-mer size                          	0
Shift hash                          	5
Split memory limit                  	0
Include only extendable             	false
Skip repeating k-mers               	false
Rescore mode                        	0
Remove hits by seq. id. and coverage	false
Sort results                        	0
Remove temporary files              	false
Force restart with latest tmp       	false
MPI runner

Set cluster mode SET COVER.
kmermatcher experiments/small.mm.db experiments/tmp//6404161245249296443/pref --sub-mat nucl:nucleotide.out,aa:blosum62.out --alph-size 13 --min-seq-id 0.5 --kmer-per-seq 21 --kmer-per-seq-scale 0 --adjust-kmer-len 0 --mask 0 --mask-lower-case 0 --cov-mode 0 -k 0 -c 0.8 --max-seq-len 65535 --hash-shift 5 --split-memory-limit 0 --include-only-extendable 0 --ignore-multi-kmer 0 --threads 12 --compressed 0 -v 3

kmermatcher experiments/small.mm.db experiments/tmp//6404161245249296443/pref --sub-mat nucl:nucleotide.out,aa:blosum62.out --alph-size 13 --min-seq-id 0.5 --kmer-per-seq 21 --kmer-per-seq-scale 0 --adjust-kmer-len 0 --mask 0 --mask-lower-case 0 --cov-mode 0 -k 0 -c 0.8 --max-seq-len 65535 --hash-shift 5 --split-memory-limit 0 --include-only-extendable 0 --ignore-multi-kmer 0 --threads 12 --compressed 0 -v 3

Database size: 25000 type: Aminoacid
Reduced amino acid alphabet: (A S T) (C) (D B N) (E Q Z) (F Y) (G) (H) (I V) (K R) (L J M) (P) (W) (X)

Estimated memory consumption 8 MB
Generate k-mers list for 1 split
[=================================================================] 100.00% 25.00K 0s 120ms
Sort kmer 0h 0m 0s 37ms
Sort by rep. sequence 0h 0m 0s 0ms
Time for fill: 0h 0m 0s 0ms
Time for merging to pref: 0h 0m 0s 5ms
Time for processing: 0h 0m 0s 219ms
rescorediagonal experiments/small.mm.db experiments/small.mm.db experiments/tmp//6404161245249296443/pref experiments/tmp//6404161245249296443/pref_rescore1 --sub-mat nucl:nucleotide.out,aa:blosum62.out --rescore-mode 0 --wrapped-scoring 0 --filter-hits 0 -e 0.001 -c 0.8 -a 0 --cov-mode 0 --min-seq-id 0.5 --min-aln-len 0 --seq-id-mode 0 --add-self-matches 0 --sort-results 0 --db-load-mode 0 --threads 12 --compressed 0 -v 3

[=================================================================] 100.00% 25.00K 0s 11ms
Time for merging to pref_rescore1: 0h 0m 0s 8ms==================>] 99.34% 24.84K eta 0s
Time for processing: 0h 0m 0s 48ms
clust experiments/small.mm.db experiments/tmp//6404161245249296443/pref_rescore1 experiments/tmp//6404161245249296443/pre_clust --cluster-mode 0 --max-iterations 1000 --similarity-type 2 --threads 12 --compressed 0 -v 3

Clustering mode: Set Cover
[=================================================================] 100.00% 25.00K 0s 9ms
Sort entries
Find missing connections
Found 597 new connections.
Reconstruct initial order
[=================================================================] 100.00% 25.00K 0s 17ms
Add missing connections
[=================================================================] 100.00% 25.00K 0s 1ms

Time for read in: 0h 0m 0s 42ms
Total time: 0h 0m 0s 47ms

Size of the sequence database: 25000
Size of the alignment database: 25000
Number of clusters: 24598

Writing results 0h 0m 0s 4ms
Time for merging to pre_clust: 0h 0m 0s 11ms
Time for processing: 0h 0m 0s 87ms
createsubdb experiments/tmp//6404161245249296443/order_redundancy experiments/small.mm.db experiments/tmp//6404161245249296443/input_step_redundancy -v 3 --subdb-mode 1

Time for merging to input_step_redundancy: 0h 0m 0s 2ms
Time for processing: 0h 0m 0s 6ms
createsubdb experiments/tmp//6404161245249296443/order_redundancy experiments/tmp//6404161245249296443/pref experiments/tmp//6404161245249296443/pref_filter1 -v 3 --subdb-mode 1

Time for merging to pref_filter1: 0h 0m 0s 2ms
Time for processing: 0h 0m 0s 6ms
filterdb experiments/tmp//6404161245249296443/pref_filter1 experiments/tmp//6404161245249296443/pref_filter2 --filter-file experiments/tmp//6404161245249296443/order_redundancy

Filtering using file(s)
[=================================================================] 100.00% 24.60K 0s 11ms
Time for merging to pref_filter2: 0h 0m 0s 21ms
Time for processing: 0h 0m 0s 56ms
rescorediagonal experiments/tmp//6404161245249296443/input_step_redundancy experiments/tmp//6404161245249296443/input_step_redundancy experiments/tmp//6404161245249296443/pref_filter2 experiments/tmp//6404161245249296443/pref_rescore2 --sub-mat nucl:nucleotide.out,aa:blosum62.out --rescore-mode 1 --wrapped-scoring 0 --filter-hits 1 -e 0.001 -c 0.8 -a 0 --cov-mode 0 --min-seq-id 0.5 --min-aln-len 0 --seq-id-mode 0 --add-self-matches 0 --sort-results 0 --db-load-mode 0 --threads 12 --compressed 0 -v 3

[=================================================================] 100.00% 24.60K 0s 11ms
Time for merging to pref_rescore2: 0h 0m 0s 19ms=================>] 99.48% 24.47K eta 0s
Time for processing: 0h 0m 0s 59ms
align experiments/tmp//6404161245249296443/input_step_redundancy experiments/tmp//6404161245249296443/input_step_redundancy experiments/tmp//6404161245249296443/pref_rescore2 experiments/tmp//6404161245249296443/aln --sub-mat nucl:nucleotide.out,aa:blosum62.out -a 0 --alignment-mode 2 --wrapped-scoring 0 -e 0.001 --min-seq-id 0.5 --min-aln-len 0 --seq-id-mode 0 --alt-ali 0 -c 0.8 --cov-mode 0 --max-seq-len 65535 --comp-bias-corr 1 --realign 0 --max-rejected<PHONE_NUMBER> --max-accept<PHONE_NUMBER> --add-self-matches 0 --db-load-mode 0 --pca 1 --pcb 1.5 --score-bias 0 --gap-open 11 --gap-extend 1 --threads 12 --compressed 0 -v 3

Compute score and coverage
Query database size: 24598 type: Aminoacid
Target database size: 24598 type: Aminoacid
Calculation of alignments
[=================================================================] 100.00% 24.60K 0s 159ms
Time for merging to aln: 0h 0m 0s 22ms

25322 alignments calculated.
24830 sequence pairs passed the thresholds (0.980570 of overall calculated).
1.009432 hits per query sequence.
Time for processing: 0h 0m 0s 211ms
clust experiments/tmp//6404161245249296443/input_step_redundancy experiments/tmp//6404161245249296443/aln experiments/tmp//6404161245249296443/clust --cluster-mode 0 --max-iterations 1000 --similarity-type 2 --threads 12 --compressed 0 -v 3

Clustering mode: Set Cover
[=================================================================] 100.00% 24.60K 0s 10ms
Sort entries
Find missing connections
Found 232 new connections.
Reconstruct initial order
[=================================================================] 100.00% 24.60K 0s 18ms
Add missing connections
[=================================================================] 100.00% 24.60K 0s 1ms

Time for read in: 0h 0m 0s 47ms
Total time: 0h 0m 0s 56ms

Size of the sequence database: 24598
Size of the alignment database: 24598
Number of clusters: 24385

Writing results 0h 0m 0s 4ms
Time for merging to clust: 0h 0m 0s 19ms
Time for processing: 0h 0m 0s 101ms
mergeclusters experiments/small.mm.db experiments/small50.mm.db experiments/tmp//6404161245249296443/pre_clust experiments/tmp//6404161245249296443/clust --threads 12 --compressed 0 -v 3

Clustering step 1
[=================================================================] 100.00% 24.60K 0s 9ms
Clustering step 2
[=================================================================] 100.00% 24.39K 0s 43ms
Write merged clustering
[=================================================================] 100.00% 25.00K 0s 65ms
Time for merging to small50.mm.db: 0h 0m 0s 22ms
Time for processing: 0h 0m 0s 112ms
user@user:~$ ./mmseqs/bin/mmseqs createseqfiledb experiments/small.mm.db experiments/small50.mm.db experiments/small50_seq
createseqfiledb experiments/small.mm.db experiments/small50.mm.db experiments/small50_seq

MMseqs Version:	02be0c4ea6183fce9cf45521a8c145d10f3928c1
Min sequences	1
Max sequences<PHONE_NUMBER>
HH format    	false
Threads      	12
Compressed   	0
Verbosity    	3

Time for merging to small50_seq: 0h 0m 0s 12ms
Time for processing: 0h 0m 0s 75ms
user@user:~$ ./mmseqs/bin/mmseqs result2flat experiments/small.mm.db experiments/small.mm.db experiments/small50_seq experiments/small50_seq.fa
result2flat experiments/small.mm.db experiments/small.mm.db experiments/small50_seq experiments/small50_seq.fa

MMseqs Version: 	02be0c4ea6183fce9cf45521a8c145d10f3928c1
Use fasta header	false
Verbosity       	3

Time for processing: 0h 0m 0s 107ms

Context
Input file (small_sample.fa): https://gist.github.com/tomblaze/818f17864d3afeb5475b054a66169571
Output file (small50_seq.fa): https://gist.github.com/tomblaze/e7840473fcfb4992ec709327c358d679
Your Environment
Ubuntu 16.04 (this output from my computer, but bug also occurred on an AWS run)
MMseqs Version: 	02be0c4ea6183fce9cf45521a8c145d10f3928c1
Downloaded from https://mmseqs.com/latest/mmseqs-linux-sse41.tar.gz

Thank you for this detailed bug report. It really helped to find the bug. I introduced it recently.
The issue should be fixed by https://github.com/soedinglab/MMseqs2/commit/be1a9822cde9389cda4d927d32f22c51790506d3.
If you want a set of stickers though (see https://twitter.com/thesteinegger/status/1201076220957315074), sent me your address via mail.

Hi @martin-steinegger, I've been getting this exact same error, not sure what could be happening. I am using the latest version of mmseqs2 (14-7e284). What other information could I provide to help debug?
Thank you,
Vini

Can you please make a new issue, with the output of MMseqs2 and excerpts of your result files?


A class needs to be Serializable.

Cache Guide didn't mention that class needs to be Serializable
Fix https://github.com/micronaut-projects/micronaut-guides/issues/666

 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.

(I've signed the agreement it's just stuck on "pending")

How can I verify this? I don't think it needed to be Serializable when we wrote the guide. Moreover, the guide has tests.

https://github.com/jacekgajek/redis-error-demo
This is actually a showcase for a bug in caching suspending funs, but if you remove Serializable then the non-suspending controllers will fail with error
 "message": "Internal Server Error: I/O error occurred during serialization: com.example.BarController$Bar"

Putting this here to prove that I agreed to the CLA

https://github.com/jacekgajek/redis-error-demo
This is actually a showcase for a bug in caching suspending funs, but if you remove Serializable then the non-suspending controllers will fail with error
 "message": "Internal Server Error: I/O error occurred during serialization: com.example.BarController$Bar"

https://github.com/jacekgajek/redis-error-demo This is actually a showcase for a bug in caching suspending funs, but if you remove Serializable then the non-suspending controllers will fail with error
 "message": "Internal Server Error: I/O error occurred during serialization: com.example.BarController$Bar"

Is this unrelated to the guide? If it is not related I would like to move it to a different issue.
For the guide, we have tests. I don't think it is necessary. Am I missing anything?

Closing this PR, I don't think it needs to be serializable.


💡 [Tutorial Project] -  Setup Docs Project: k8s Playground Tutorial - Service & Secret Management

Start Date
2023-11-26
Implementation PR
1
Reference Issues
No response
Summary

📔 Enrich k8s Playground Tutorial - Service & Secret Management.
📅 Utilize GitHub project management, issue tracking and pull request to implement.

Basic Example
🎯 Goal

service

service-discovery
load-balance
ingress-controller
istio-service-mesh

secret management

vault setup
vault example

Drawbacks

NA
Effort to learn new things 🥳

Unresolved questions
No response

Setup k8s Playground Tutorial - Service & Secret Management


Blog app - Views

In this Milestone,I

Implement the design of the rails blog app

@vickymarz Thanks for your comment and review


Update StatusPartial.cs

Mismatch between code sample and the type's name.

(I'm not worried by the conventional commit warning here - it's not something we need in release notes. Any future commits you create for this repo would be best to have a conventional commit message, but that's all.)


⚠ Jenkins Plugins Artifactory has degraded performance

In 0319f4c, Jenkins Plugins Artifactory (https://get.jenkins.io/plugins/artifactory/) experienced degraded performance:

HTTP code: 200
Response time: 1247 ms

Resolved: Jenkins Plugins Artifactory performance has improved in de73648 after 1 hour, 47 minutes.


Machine mac-4 lost connection from external iPhone device.

Machine mac-4 lost connection from external iPhone device.

The external connection device has been restored by rebooting machine mac-4.


when the new stable build is available for issue #262.

As referenced in #262 "Failed to get Certificate URL" for the build 0.10.1. The developer pointed to a build which was not officially released to solve the issue . Since official Packer repository is not available which will address issue #262, When would the official new packer build containing the fix would be released  ?

Azure ARM is supported in the official Packer repository.  Please log issues for Azure ARM at https://github.com/mitchellh/packer.


WebProxy settings are ignored

When new HttpClientWebRequest is created in ExchangeServiceBase WebProxy is not passed downstream and is not used later on.

Does this particular bug is their in EWS Java API 1.3 version also or it came only with 2.0 ?

I don't know. I haven't been using 1.3.

I think that this issue is caused by missing line in ExchangeServiceBase.java. Check this patch: https://gist.github.com/bbucko/1ef9e6ac2947c85db613

Hi @serious6 ,
Is the fix for issue available in Maven repository also? If I will use maven dependency for ews-java-api snapshot 2.0 version, will this fix come along?
Regards,
Pranjal

As #327 has been merged the fix is already included in the latest snapshot version.

Hi @serious6
It seems the fix is not merged fully! The fix given by @pheenomenon in the url https://gist.github.com/bbucko/1ef9e6ac2947c85db613, I am still not able to see in the source code.
This fix is critical to us. Can you assist here?
Regards,
Pranjal

@serious6, @pheenomenon  I checked at location https://oss.sonatype.org/content/repositories/snapshots/com/microsoft/ews-java-api/ews-java-api/3.0-SNAPSHOT/
there also the fix seems to be missing.

Hi  @serious6 ,
This issues is big blocker for us for our internal testing , could you please merge the fix and  included in the latest snapshot version.
Regards,
Showkath.


Automated cherry pick of #9331: fix(region): openstack hosts sync

Cherry pick of #9331 on release/3.6.
#9331: fix(region): openstack hosts sync

Codecov Report

Merging #9332 (8692498) into release/3.6 (b9d30c0) will decrease coverage by 1.91%.
The diff coverage is 0.93%.

@@               Coverage Diff               @@
##           release/3.6   #9332       +/-   ##
===============================================
- Coverage         5.86%   3.95%    -1.92%
===============================================
  Files              828     170      -658
  Lines           129133   25162   -103971
===============================================
- Hits              7577     995     -6582
+ Misses          120876   24055    -96821
+ Partials           680     112      -568

Flag
Coverage Δ

aFlag
3.95% <0.93%> (-1.92%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

pkg/cloudcommon/db/apply_manager_method.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/archs.go
0.00% <ø> (ø)

pkg/cloudcommon/db/db_dispatcher.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/modelbase.go
4.49% <0.00%> (-0.03%)
:arrow_down:

pkg/cloudcommon/db/models.go
0.00% <0.00%> (ø)

pkg/cloudcommon/db/sharablebase.go
6.06% <0.00%> (ø)

pkg/cloudcommon/db/virtualjointbase.go
0.00% <0.00%> (ø)

pkg/cloudprovider/objectstore.go
2.06% <0.00%> (-0.51%)
:arrow_down:

pkg/cloudprovider/resources.go
0.00% <0.00%> (ø)

pkg/compute/regiondrivers/aliyun.go
0.33% <0.00%> (-0.01%)
:arrow_down:

... and 614 more

Continue to review full report at Codecov.

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


misconfiguration of DMARC record on datagir

Message reçu sur la boîte contact@
Qu'en penser ?

Hi there,
Kindly update me regarding the issue and I am expecting a bug bounty from you for sending this bug ethically to you.
Best Regards
Arslan
On Fri, Nov 19, 2021 at 4:53 AM Arslan kabeer<EMAIL_ADDRESS>wrote:
Hello Team,
I am a security researcher and I founded this vulnerability in your website.
I just sent a forged email to my email address that appears to originate from<EMAIL_ADDRESS>I was able to do this because of the following DMARC record:
DMARC record lookup and validation for: datagir.beta.gouv.fr
" DMARC Quarantine/Reject policy not enabled "
How To Reproduce(POC-ATTACHED IMAGE):-
1.Go To- mxtoolbox.com/DMARC.aspx
2.Enter the Website.CLICK GO.
3.You Will See the fault(DMARC Quarantine/Reject policy not enabled)
Fix:
1)Publish DMARC Record.
2)Enable DMARC Quarantine/Reject policy
For more information you can use this blog
(https://sendgrid.com/blog/what-is-dmarc/).

Reference : https://www.knownhost.com/wiki/email/troubleshooting/setting-up_spf-dkim-dmarc_records
Let me know if you need me to send another forged email, or if have any other questions.
Hoping for the bounty for my ethical Disclosure.
Kind Regards
Security Researcher

Je pense que c'est quelque chose à activer du côté de beta.gouv.fr
(dans tous les cas, ça me semble être un risque très mineur)


New Feature - Collections

Kudos to MicroSoft for the constant endeavour on updating learning portal with new features such as Bookmarks, Collections which makes learning more organized and interesting!

Thanks @krisrajz . We appreciate your awesome feedback and will pass the kudos on to the rest of our team! Thanks for helping us to make Learn better =)

Thank you for the shout-out, @krisrajz!


Update solana version to 1.18.11 on Testnet

Update solana version from 1.18.9 to 1.18.11 on Testnet.
(It looks like 1.18.10 was skipped.)
[Details]
https://discord.com/channels/428295358100013066/594138785558691840/1228170547884593185
@testnet Validator
The v1.18.11 release is now recommended for use on Testnet. Please upgrade when there's less than 5% delinquent stake.

https://github.com/solana-labs/solana/releases/tag/v1.18.11

[Remarks]
It looks like 1.18.10 was skipped.
https://github.com/solana-labs/solana/releases

Awesome!


autocomplete in navbar not working

This is a (multiple allowed):

[x] bug
[ ] enhancement
[ ] feature-discussion (RFC)

What you did
I tryed to use autocomplete in navbar but i need it there. I need dropdown from ajax for navbar search
Expected Behavior
Thinked It will work in navbar.
Actual Behavior
Not working in navbar. Iam getting errors.
in page content everything works well.
Any Ideas how to slove it ?

Can you explain in more detail and provide code

nah. I made buggy work around, but that should be checked.

nah. still have this bug https://cloud.githubusercontent.com/assets/1125765/25792274/45c9df8a-33ce-11e7-98f5-29a8313140d9.png
just i cant use in navbar for some reason. only works in page-content

Define 'in navber'?

works only in page-content

Non standard behaviour for iOS/Android and unsupported in F7 (positioning is relative the page-content)

Fixed in v2


i can show $$\left\{ x  \right.$$, but \[\left\{ x  \right.\] will not show, I'm wondering why?

i can show $$\left\{ x  \right.$$, but \[\left\{ x  \right.\] will not show, I'm wondering why?
i have already used katex/contrib/auto-render：

others \[ ... \] will be show correctly

It looks like you are rendering katex after running through marked. Do you have a repo where we can see the code and try to help?

It looks like you are rendering katex after running through marked. Do you have a repo where we can see the code and try to help?

sure i will make a demo repo for u later，thanks a lot

It looks like you are rendering katex after running through marked. Do you have a repo where we can see the code and try to help?

hello dude，this is our katex demo repo link：https://github.com/xinla/katex-test
it uses VUE3 and node 18.20.4，u can use   pnpm run dev to start the project. and u will see latex examples in lines 25, 27, and 29 of App.vue in the project.
Lines 25 and 29 use the same identifier. Lines 27 and 29 use the same latex formula, but the identifiers are inconsistent. However, lines 25 and 27 can be rendered, regardless of line 29. Cannot be rendered in any way

Looking forward to reply~

What does the renderMathInElement function do? the tempContent should be rendered to html by the marked.parse call but that is not valid katex since the extension requires $$ or $ as a delimiter. You aren't sending the autoRendererOptions to marked at all so it has no way of knowing that \\[ \\] should be a delimiter.

Also marked-katex-extension only allows $ and $$ as delimiters. If you would like other delimiters you can create your own extension.
You can copy most of this extension and just change the things you need to get it to work. I will warn you that using [ ] as delimiters is probably going to be harder than you think because they have special meaning in markdown for links and images.

What does the renderMathInElement function do? the tempContent should be rendered to html by the marked.parse call but that is not valid katex since the extension requires $$ or $ as a delimiter. You aren't sending the autoRendererOptions to marked at all so it has no way of knowing that \\[ \\] should be a delimiter.

this is what renderMathInElementdo, it can be used to render latex formulas wrapped in \\[ \\]
If you say this, then I may think that this is not a problem with your library, but a problem with the katex autorender function.
you can try to ask chatgpt o1-preview:
\[
 \left\{\begin{array}{l}
 x - y = 2a, \\
 3x + y = 3a - 15.
 \end{array}\right.
 \]

Directly copy gpt's answer. The formula it answers is wrapped in \[ \], Therefore, in some mathematical reasoning model applications, it is difficult to ensure that the algorithm returns a formula wrapped in $.
At the same time, I think I have temporarily found a solution. I modified the regular expression in your source code to support both \[...\] and $$...$$ or support \(. ..\) and $...$. In my current testing, this problem seems to have been solved, but I am not sure what risks there may be in the future.
Like this:
const inlineRule = /^(?:\\\(([^]*?)\\\)|\$(?!\$)((?:\\.|[^\\\n])*?(?:\\.|[^\\\n\$]))\$)(?=[\s?!\.,:？！。，：]|$)/;
const inlineRuleNonStandard = /^(?:\\\(([^]*?)\\\)|\$(?!\$)((?:\\.|[^\\\n])*?(?:\\.|[^\\\n\$]))\$)/;
const blockRule = /^(?:\\\[([^]*?)\\\]|\$\$((?:\\[^]|[^\\])+?)\$\$)(?:\n|$)/;

What does the renderMathInElement function do? the tempContent should be rendered to html by the marked.parse call but that is not valid katex since the extension requires $$ or $ as a delimiter. You aren't sending the autoRendererOptions to marked at all so it has no way of knowing that \\[ \\] should be a delimiter.

this is what renderMathInElement do, it can be used to render latex formulas wrapped in \\[ \\]
If you say this, then I may think that this is not a problem with your library, but a problem with the katex autorender function.
you can try to ask chatgpt o1-preview:
\[
\left\{\begin{array}{l}
x - y = 2a, \\
3x + y = 3a - 15.
\end{array}\right.
\]

Directly copy gpt's answer. The formula it answers is wrapped in \[ \], Therefore, in some mathematical reasoning model applications, it is difficult to ensure that the algorithm returns a formula wrapped in $.
At the same time, I think I have temporarily found a solution. I modified the regular expression in your source code to support both \[...\] and $$...$$ or support \(. ..\) and $...$. In my current testing, this problem seems to have been solved, but I am not sure what risks there may be in the future.
Like this:
const inlineRule = /^(?:\\\(([^]*?)\\\)|\$(?!\$)((?:\\.|[^\\\n])*?(?:\\.|[^\\\n\$]))\$)(?=[\s?!\.,:？！。，：]|$)/;
const inlineRuleNonStandard = /^(?:\\\(([^]*?)\\\)|\$(?!\$)((?:\\.|[^\\\n])*?(?:\\.|[^\\\n\$]))\$)/;
const blockRule = /^(?:\\\[([^]*?)\\\]|\$\$((?:\\[^]|[^\\])+?)\$\$)(?:\n|$)/;

i'am finding ways to render formula inner a string like this, but failed to...
斐波那契数列可以通过两种主要公式来表示：递归公式和显式公式（Binet公式）。\n\n### 递归公式：\n递归公式定义了斐波那契数列的每一项是前两项的和，具体如下：\n\\[\nF(n) =\n\\begin{cases}\n0, & \\text{if } n = 0, \\\\\n1, & \\text{if } n = 1, \\\\\nF(n-1) + F(n-2), & \\text{if } n > 1.\n\\end{cases}\n\\]\n\n### 显式公式（Binet公式）：\n斐波那契数列的第 \\(n\\) 项也可以通过显式公式计算（无需递归）：\n\\[\nF(n) = \\frac{\\phi^n - \\psi^n}{\\sqrt{5}},\n\\]\n其中：\n- \\(\\phi = \\frac{1 + \\sqrt{5}}{2}\\) 是黄金比例，\n- \\(\\psi = \\frac{1 - \\sqrt{5}}{2}\\) 是另一个根。\n\n**注意**：显式公式适用于任意 \\(n \\geq 0\\)，但可能需要取整来处理因浮点数误差导致的小数问题。

What does the renderMathInElement function do? the tempContent should be rendered to html by the marked.parse call but that is not valid katex since the extension requires $$ or $ as a delimiter. You aren't sending the autoRendererOptions to marked at all so it has no way of knowing that \\[ \\] should be a delimiter.

this is what renderMathInElement do, it can be used to render latex formulas wrapped in \\[ \\]
If you say this, then I may think that this is not a problem with your library, but a problem with the katex autorender function.
you can try to ask chatgpt o1-preview:
\[
\left\{\begin{array}{l}
x - y = 2a, \\
3x + y = 3a - 15.
\end{array}\right.
\]

Directly copy gpt's answer. The formula it answers is wrapped in \[ \], Therefore, in some mathematical reasoning model applications, it is difficult to ensure that the algorithm returns a formula wrapped in $.
At the same time, I think I have temporarily found a solution. I modified the regular expression in your source code to support both \[...\] and $$...$$ or support \(. ..\) and $...$. In my current testing, this problem seems to have been solved, but I am not sure what risks there may be in the future.
Like this:
const inlineRule = /^(?:\\\(([^]*?)\\\)|\$(?!\$)((?:\\.|[^\\\n])*?(?:\\.|[^\\\n\$]))\$)(?=[\s?!\.,:？！。，：]|$)/;
const inlineRuleNonStandard = /^(?:\\\(([^]*?)\\\)|\$(?!\$)((?:\\.|[^\\\n])*?(?:\\.|[^\\\n\$]))\$)/;
const blockRule = /^(?:\\\[([^]*?)\\\]|\$\$((?:\\[^]|[^\\])+?)\$\$)(?:\n|$)/;

i'am finding ways to render formula inner a string like this, but failed too...
斐波那契数列可以通过两种主要公式来表示：递归公式和显式公式（Binet公式）。\n\n### 递归公式：\n递归公式定义了斐波那契数列的每一项是前两项的和，具体如下：\n\[\nF(n) =\n\begin{cases}\n0, & \text{if } n = 0, \\\n1, & \text{if } n = 1, \\\nF(n-1) + F(n-2), & \text{if } n > 1.\n\end{cases}\n\]\n\n### 显式公式（Binet公式）：\n斐波那契数列的第 \(n\) 项也可以通过显式公式计算（无需递归）：\n\[\nF(n) = \frac{\phi^n - \psi^n}{\sqrt{5}},\n\]\n其中：\n- \(\phi = \frac{1 + \sqrt{5}}{2}\) 是黄金比例，\n- \(\psi = \frac{1 - \sqrt{5}}{2}\) 是另一个根。\n\n注意：显式公式适用于任意 \(n \geq 0\)，但可能需要取整来处理因浮点数误差导致的小数问题。

Can you prompt chatgpt to output $ and $$ as delimiters instead? Or maybe even doing a .replace(/\\\[/g, '$$') before sending it to marked will be enough.


Add settings to ignore unassigned property warnings

See eclipse/lsp4mp#145
Signed-off-by: David Thompson<EMAIL_ADDRESS>

Thanks @datho7561 for your great job!


Can't modify any nodes when using await or a seperate thread C#

Godot version
4.1.1.stable.mono
System information
Arch linux: Zen Kernel 6.3 Ryzen 5900x Nvidia RTX 2080TI 11GB (proprietary drivers)
Issue description
When updating from 4.0 to 4.1 my entire C# project is broken due to thread safety issues. Anything that calls a thread after awaiting or inside of
await Task.Run(async () =>
			{
                         // Do stuff
                         });

Gives me errors about "This function in thise node ,,,, can only be accessed from the main thread". It seems GDScript can use Thread.set_thread_safety_checks_enabled(false) as a work around for these bogus checks, but I can't find an equivalent in C# other than calling everything as deferred which is ridiculous and a pain since no IDE's can autocomplete or properly change that if a variable name is modified as it is a string. Highly related to this issue, but concerened about the C# elements #78149
Steps to reproduce
Create a C# script and use await, then attempt to modify a nodes property.
Minimal reproduction project
N/A

AFAIK this is working as intended, the scene APIs are not thread-safe, see the Thread-safe APIs documentation page.

These thread guards were added in https://github.com/godotengine/godot/pull/75901.

It seems GDScript can use Thread.set_thread_safety_checks_enabled(false) as a work around for these bogus checks, but I can't find an equivalent in C#

Most of the C# API is generated from ClassDB, so if the Thread type has a set_thread_safety_checks_enabled method then it should be available in C# too. Look for GodotThread.SetThreadSafetyChecksEnabled.

[...] other than calling everything as deferred which is ridiculous and a pain since no IDE's can autocomplete or properly change that if a variable name is modified as it is a string.

You don't have to use GodotObject.CallDeferred (but if you are, consider using the MethodName static class which contains a cached StringName to avoid creating it from a string every time), you can also use Callable.CallDeferred so you can use a C# lambda:
Callable.From(() =>
{
	// This will be executed in the main thread.
}).CallDeferred();

You can also await the next process frame and that should continue in the main thread because of Godot's synchronization context:
await ToSignal(GetTree(), SceneTree.SignalName.ProcessFrame);

Strange, well I appreciate the various options you have layed out! I will close the issue since you said it is designed this way.


Seed math/rand with crypto/rand

The performance arguments given in #48 and #102 are perfectly valid reasons to not use crypto/rand for every message ID but that doesn't mean you have to use the default seed (which is literally just 1) when using math/rand.
This patch simply reads out a random int64 using crypto/rand on package initialization and uses it to seed the default math/rand source. While there are obviously other more viable attacks this should make message ID spoofing/prediction much harder when using the default Id.
This also changes id() to just use a rand int32 and bound it to the max size of a uint16 instead of using time.Now since it's a relatively easy to guess variable so it shouldn't actually provide that many useful bits (since someone analyzing the messages will generally know the period the messages were generated in).

Nice!
Don't like the panic though as that is a backwards incomp. change. Can't we just default to the current setup then? I.e. seed with 1?

Good point, I've also cleaned up the various integer bounding by leaving it to the compiler (it's much cleverer than me anyway).


unix: fix uv_cpu_info always returning UV_ENOTDIR on OpenBSD

The wrong names and name sizes were being used with sysctl(2), which
in particular made the call to get the machine's CPU speed always fail
with ENOTDIR.

Green CI: https://ci.nodejs.org/view/libuv/job/libuv-test-commit/1765/
Landed in https://github.com/libuv/libuv/commit/7611294da945aab758e0895b4901a6eab46c2e76. Thanks!


Test class not found via keyboard shortcut in AndroidStudio

Hitting ctrl+shift+t does not find the corresponding test class in AndroidStudio. Same goes for the other direction when using the shortcut to navigate to the implementation class.

This is a limitation of the ide  that I could not find a way around. This is because the main project only knows about main sources and the stub project only knows about test sources and they are different kinds of projects.
I would just Ctrl+shift+O for the class you are looking for or click attach sources at the top right when this happens and just point to the relevant source directory in your project.
If you find a way to do this via the plugin itself, you are welcome to contribute :)