main-filenames as configurable option

I would like to do a feature request: to have an option to add new file extension on-the-go (I'm talking about the file main-filenames.ts which defines what kind of file the video hub will try to import).
Some people may have some video files that works with ffmpeg but its not imported by default because the file extension is not on main-filenames.ts file, some of them maybe not worth add for everybody like a .part file that may have unfinished downloaded file video that ffmpeg can work with, or a different/customized file extension not very used.
Another nice think would have an option to try to import every file doesn't matter the filename, of course with a warning on this option to people avoid using it without knowing what its about, could be very useful for video-only directories.

Seems doable 👌
PR welcome. I imagine in the main settings tab (3rd tab - the one that opens by default) below all the "select default video player" options 👍
I'm guessing it would accept a comma-separated list of extensions (without periods), so
part, abc, xyz

Other suggestions welcome for how to handle it 👍

I tried so far to implement the last thing a mention on this issue, which is an option to skip the extension check, because its easier and I'm not a developer, my skills are pretty bad. but unfortunately it didn't work.
What I tried was this:

src/app/common/settings-buttons.ts:
add:
    'searchForAllFiles' on SettingsButtonsGroups constant
and
  'searchForAllFiles': {
    description: 'BUTTONS.searchForAllFilesDescription',
    hidden: false,
    moreInfo: 'BUTTONS.searchForAllFilesMoreInfo',
    title: 'BUTTONS.searchForAllFilesHint',
    toggled: false
  },

on SettingsButtons constant

i18n/en.json:
    "searchForAllFilesDescription": "Skip the file extension check before trying to import a file",
    "searchForAllFilesHint": "Skip the file extension check",
    "searchForAllFilesMoreInfo": "Beware that this option will make the import process try to import all files, even non-video ones, if unsure keep it desabled",

main-support.ts:
add an exportable variable:
export var skipExtensionCheck = false;

and changes the if responsible for the check:
if (skipExtensionCheck === true || (acceptableFiles.includes(extension.toLowerCase()) && !file.name.match(fileIgnoreRegex))) {

src/app/components/home.component.ts:
import the variables:
import { ImportStage, skipExtensionCheck } from '../../../main-support';

and add the value from stored button value:
skipExtensionCheck = this.settingsButtons['searchForAllFiles'].toggled;

Hey @frez777 -- let me know if you'd like me to help you with anything.
If you no longer have the time for this, no worries. If you're willing to share your code. please open a PR (pull request) with the changes you've made -- don't even worry if there are merge conflicts or remaining bugs 👌 I can finish things off. It's easier to finish what you started than to do everything from scratch 🤝
Cheers -- hope all is well 🙂

can also try help with this

@orkomlosh -- thanks for the offer!
@frez777 -- let us know here if you still prefer to finish fixing this issue 👍 else, @orkomlosh feel free to take it on 🤝

@orkomlosh -- if you're still interested in this (if you'll enjoy adding this feature) please feel free to take it 👌 👍 🤝

Sure no problem, just to understand what to implement.
I can see in this thread 2 options that are not completely related:

add option in settings to add list of extensions.
add option in settings to skip extension check.

I can try and add both, just wondered what you prefer.

Thank you! 🙌
I think (1) is the only option we'd want: just an input field with a comma-separated list of extensions (without periods), e.g.
part, abc, xyz

Do let me know if you think there are scenarios where (2) is likely. My best guess as of now is there is, for a very few users, some obscure specific file format that they'd like and the app skips it. Disabling all checks would pollute the app view with miscellaneous stuff like .txt files etc.

Added this functionality to main.
See referenced PR.
Closing this issue,
Works like charm!

Thane you for the feature addition #507 🚀


hcs-sxc-core: not passing sequence, hash and timestamp back to app

Detailed Description
Core only sends the original message back to the app, it would be ideal if the app could also receive the timestamp and sequence number, optionally the hash

It does so indirectly. Core stores a message in database and all these
properties .  The app then can request to see that info ( simple message
demo demonstrates this )
On Tue, 7 Apr 2020, 15:56 gregscullard<EMAIL_ADDRESS>wrote:

Detailed Description
Core only sends the original message back to the app, it would be ideal if
the app could also receive the timestamp and sequence number, optionally
the hash
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/hashgraph/hedera-hcs-sxc-java/issues/443, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/AIO4TMOFO5PZXFWD3FRY5X3RLM5KHANCNFSM4MDFY4XQ
.


Schedule runs at every 15 mins but scheduled to run at specific time

Hi,
I followed this library and the codeburst which schedules and runs just fine but I have below issue with it.
When I run my Asp.Net Core Web API in Windows 10 environments everything works as scheduled whereas the same same Web Api when I deploy in Windows Server Core, this schedule runs at every 15 mins.
Should I change any thing in the code?
Here is my options at startup.cs.
services.AddCronJob<BackUpDBService>(c =>
            { // Currently it is running for every 15 mins in server which is wrong.
                c.TimeZoneInfo = TimeZoneInfo.Local;
                c.CronExpression = @"0 3 * * *";
            });

I have a similar job on server running at early morning every day, and it works. However, from your description, I am not able to determine what's wrong.
Could you add some logging in the ScheduleJob method? So that you can verify the time of the next_occurrence and the time of delay.

@changhuixu , Thanks for comment. This library is just amazing when we needed to create many schedule jobs.
I just realized that this issue is not related with this library but with some other third party tool that I use in my code. Hence closing this. Thanks you.


chore: Move app navigation logo upload to Flagsmith

Description
Quite simply use replace APP_NAVIGATION_LOGO_UPLOAD flag on FF4J to release_appnavigationlogoupload_enabled on Flagsmith.
PR fixes following issue(s)
Fixes #25184
Type of change

Chore (housekeeping or task changes that don't impact user perception)

Testing

How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Also, list any relevant details for your test configuration.
Delete anything that is not relevant

[ ] Manual
[ ] Jest
[ ] Cypress

Test Plan

Add Testsmith test cases links that relate to this PR

Issues raised during DP testing

Link issues raised during DP testing for better visiblity and tracking (copy link from comments dropped on this PR)

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

/build-deploy-preview env=release

/ok-to-test

Tested this PR and LGTM


Bracketed-name fields shown as .null by docs

Environment

name
version

IDEA version
IdeaIU 2020.3

Luanalysis version
1.2.1-IDEA203

OS
Win7

What are the steps to reproduce this issue?

Create a class/shape with bracketed field names, e.g.:

With the sample shape above, try to index members (and assign to them) through an instance of the class/shape, through brackets or dot notation (if possible), then hover over the indexer (example in "What happens?" section)
Additionally, type a. on a new line and look at the suggestions.

What happens?
2: Bracketed fields show as .null

(Field m is correct when hovered, both by doing a.m and a["m"]: shows Test.m)
3: The bracketed fields aren't being suggested

What were you expecting to happen?
For 2, should show the field names normally: treating the n field as Test.n, and others as Test[1], Test[true], etc.
For 3, it should at least include n; better if it'd also suggest the non-string-name fields.
Any logs, error output, etc?
None
Any other comments?
Also, field description is placed too near to the left edge of the tooltip, don't know if it's normal.

The primary issue identified is resolved by https://github.com/Benjamin-Dobell/IntelliJ-Luanalysis/commit/2a48c29abed5d0438b14b0591dc25872bde23214
I've opened a separate issue (#28) to track completion of (primitive) indexed field.

The primary issue identified is resolved by https://github.com/Benjamin-Dobell/IntelliJ-Luanalysis/commit/2a48c29abed5d0438b14b0591dc25872bde23214
I've opened a separate issue (#28) to track completion of (primitive) indexed field.


[REF] Implement _required_inputs in CBMA estimators

Closes #171 and references #170.

Changes proposed in this pull request:

Consolidate some of the loading methods in Dataset to reduce duplicate code. Done separately.
Add "coordinates" to Dataset.get, which returns a list of DataFrames divided by contrast ID.
Drop "n" column from Dataset.coordinates in order to use the metadata field "sample_sizes" instead. Automatically average sample sizes for meta-analyses.

TODO:

[ ] Allow arguments that override existent data within _required_inputs.
[ ] Fix correctors (esp. FWECorrector) so they use Estimator._inputs (or some updated version?) the same was the Estimator's main fit method does.
[ ] Figure out how the kernel estimators should take in sample sizes. Currently, I'm reorganizing Estimator._inputs into a single DataFrame (with a sample size column) in Estimator._fit and feeding that DataFrame into the kernel estimator, which just doesn't seem to fit in with the approach we're going for.
[ ] Add levels argument to Dataset._load_data, in order to load data from the study level when appropriate (e.g., for metadata and texts, but not for images).

Now that #232 is merged and #233 is opened, I can close this.


Proper nesting of inline and block components fixed

Changed the div that held the vti__flag to a span for proper nesting. This satisfies the specification of only nesting inline components inside other inline components. Additionally this solves WCAG 2.0 Guideline 4.1.1 Parsing.

@tijascott Thanks for your help! can you exclude changes of package-lock.json in the PR? it was created from an older nodejs version.

@tijascott Thanks for your help! can you exclude changes of package-lock.json in the PR? it was created from an older nodejs version.

Got it. Thanks for working with me on this!


Add metric for NER

The library can be enhanced by adding the following metric for NER - Message Understanding Conference (MUC)

I have started working on it.

@RigvedRocks thank you so much! Shoot me a PR once its done and I'll take a look :)


NBEP for typing recursion

Proposed changes implemented in #2130

Current coverage is 87.07% (diff: 100%)

Merging #2136 into master will not change coverage

@@             master      #2136   diff @@
==========================================
  Files           305        305
  Lines         56226      56226
  Methods           0          0
  Messages          0          0
  Branches       5819       5819
==========================================
  Hits          48958      48958
  Misses         6329       6329
  Partials        939        939

Powered by Codecov. Last update 08d5c88...52c068d

This is a very useful high-level document. Just needs addressing @stuartarchibald 's nits :-)

Just needs addressing @stuartarchibald 's nits :-)

I should have addressed them all in https://github.com/numba/numba/pull/2136/commits/a3ef309faaa93be111f069dfc57f18c8c2bd1de2
It seems outdated comment don't get collapsed anymore.

It seems outdated comment don't get collapsed anymore.

Oh, I see. Thank you, I'm gonna merge now.


boards: arduino_nicla_vision: add initial support for the camera system

This PR adds the support of the camera subsystem for the Arduino Nicla Vision, in order  to make it to work this PR covered:

Enable camera subsystem and the GC2145 on the device tree
Update the GC2145 video sensor to support lower resolutions
Add support this board as supported in  the video/capture samples

Just ran clang-format again on the GC2145 driver

One more round folks, we are almost there :)


HTML files default to save as .txt, but only if line 1 is not blank

Does this issue occur when all extensions are disabled?: Yes

VS Code Version: 1.75.1
OS Version: Windows 10 19044.2486

Steps to Reproduce:

files.DefaultLanguage is set to HTML

If I try to save a new HTML snippet, it defaults to .txt. The only way I have found to avoid this is to start the code on line 2 and leave line 1 blank.

Originally I thought it was because of internal CSS or custom tags my company uses, but stripping the code to only contain div and a href tags also resulted in the same issue. This has to be a recent issue, before last week I did not need to add this new line to the start of new files and only first encountered this issue yesterday. The issue also occurs on the latest Insider Build.
https://user-images.githubusercontent.com/110184020/218075944-c7c0fd46-29ce-45fc-9f28-caa7fc3289ab.mp4

Indeed, 👏

This reproduces when the first line of the untitled file contains characters that are not allowed as file names, e.g.:
<div class="sidenav">

This bug has been fixed in the latest release of VS Code Insiders!
@MurfW2U, you can help us out by commenting /verified if things are now working as expected.
If things still don't seem right, please ensure you're on version b2cc8c48b93222cd9727c4e70be3a269b132e5d8 of Insiders (today's or later - you can use Help: About in the command palette to check), and leave a comment letting us know what isn't working as expected.
Happy Coding!

Can confirm fix on Insiders, thank you!
/verified


Validation - Support HA install for most cert types

Support most cert types for HA installation:

Rancher self-signed
Bring your own valid cert
Bring your own self-signed cert
LetsEncrypt

Certificate values are stored in Jenkins credentials

Can you add some checks for necessary variables before staring running tests? Maybe a module-scope auto-run method?

when RANCHER_HA_CERT_OPTION == byo-valid, check whether RANCHER_VALID_TLS_CERT and RANCHER_VALID_TLS_KEY exist
when RANCHER_HA_CERT_OPTION == byo-self-signed, check whether RANCHER_BYO_TLS_CERT, RANCHER_BYO_TLS_KEY, and RANCHER_PRIVATE_CA_CERT exist

Can you add some checks for necessary variables before staring running tests? Maybe a module-scope auto-run method?

when RANCHER_HA_CERT_OPTION == byo-valid, check whether RANCHER_VALID_TLS_CERT and RANCHER_VALID_TLS_KEY exist
when RANCHER_HA_CERT_OPTION == byo-self-signed, check whether RANCHER_BYO_TLS_CERT, RANCHER_BYO_TLS_KEY, and RANCHER_PRIVATE_CA_CERT exist

Addressed


Testing Documentation

There is a very small blurb under the DSL page's "The simplest service" section that I think I missed at least 4 times before finally nailing it down x)
Would be nice to see that maybe in it's own section properly called out. Examples don't have any test examples either so it's rather easy for a newcomer to miss this while searching.
What do you all think?

That change makes sense to me.  If you're up for sending a PR, it's under docs/src/main/tut.
I have been considering adding a testkit to help with some common patterns, specifically around matchers (e.g., service(req) should be status(Ok)).  But http4s uses specs2 internally, and I use scalatest at work, and adding custom matchers for both makes me sad.  If people have testing idioms that they've been successful with, I'd love to hear them.

Sure, I'll send one over. I can add a ScalaTest snippet as well if you think it'd be beneficial?
Cheers!


Release/v0.1.1

Two small bugfixes:

Error on left join of class Table.
Error on pydantic validation of AEMET REST class.

Codecov Report

Merging #73 (26b5c5d) into master (1ea62a7) will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #73      +/-   ##
==========================================
+ Coverage   71.12%   71.13%   +0.01%
==========================================
  Files          38       38
  Lines        2213     2214       +1
==========================================
+ Hits         1574     1575       +1
  Misses        639      639

Flag
Coverage Δ

clients-tests
65.78% <100.00%> (ø)

config-tests
?

data-tests
?

logging-tests
?

models-tests
?

plots-tests
?

table-tests
93.38% <ø> (?)

unit-tests
71.13% <100.00%> (+0.01%)
:arrow_up:

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

Files
Coverage Δ

mango/clients/aemet.py
100.00% <100.00%> (ø)

mango/table/pytups_tools.py
94.73% <ø> (ø)

mango/validators/aemet.py
96.29% <100.00%> (+0.06%)
:arrow_up:

:mega: Codecov offers a browser extension for seamless coverage viewing on GitHub. Try it in Chrome or Firefox today!


Property 'rejects' does not exist on type 'Matchers<Promise>'.

🐛 Bug Report

Using rejects does not work. Getting error Property 'rejects' does not exist on type 'Matchers<Promise>'.
To Reproduce
Steps to reproduce the behavior:
function promiseThrow() {
  throw new Error();
}

describe('Function', () => {
  it('should throw error', async () => {
    await expect(promiseThrow()).rejects.toThrow();
  });
});

Outputs: Property 'rejects' does not exist on type 'Matchers<void>'.
Expected behavior

Test should pass and not output errors
Link to repo (highly encouraged)

Debug log:

# content of ts-jest.log :

envinfo
System:
    OS: Windows
    Node version: 14.16.1

Npm packages:
    jest: 27.0.4
    ts-jest: 27.0.3
    typescript: 4.1.3
    babel(optional):

the error is about typings. Typings comes from @types/jest package.


CLI version mismatch error when updating from Angular 13 to Angular 14

Command
serve
Is this a regression?

[X] Yes, this behavior used to work in the previous version

The previous version in which this bug was not present was
13.3.7
Description
I'm currently upgrading from Angular 13 to Angular 14.
Previous installed CLI version was v13.3.7, I've updated it to v14.2.11.
The upgrade itself doesn't throw errors but when I try to serve the project I get the following error:
This version of CLI is only compatible with Angular versions ^15.0.0,
but Angular version 14.3.0 was found instead.

Please visit the link below to find instructions on how to update Angular.
https://update.angular.io/

I'm not using CLI v15 (see ng version output below) and I can't find out, why it keeps giving me this specific error because the global and local CLI version is v14.2.11
Minimal Reproduction
At the moment I'm not able to figure out the root cause of the issue, these Angular dependencies are present in the project:
    "@angular/animations": "14.3.0",
    "@angular/cdk": "14.2.7",
    "@angular/cdk-experimental": "14.2.7",
    "@angular/common": "14.3.0",
    "@angular/core": "14.3.0",
    "@angular/forms": "14.3.0",
    "@angular/google-maps": "14.2.7",
    "@angular/material": "14.2.7",
    "@angular/material-luxon-adapter": "14.2.7",
    "@angular/material-moment-adapter": "14.2.7",
    "@angular/platform-browser": "14.3.0",
    "@angular/platform-browser-dynamic": "14.3.0",
    "@angular/router": "14.3.0",
    "@angular/service-worker": "14.3.0",
    "@angular-builders/custom-webpack": "15.0.0",
    "@angular-devkit/architect": "0.1402.11",
    "@angular-devkit/build-angular": "14.2.11",
    "@angular-devkit/core": "14.2.11",
    "@angular-devkit/schematics": "14.2.11",
    "@angular/cli": "14.2.11",
    "@angular/compiler": "14.3.0",
    "@angular/compiler-cli": "14.3.0",
    "@angular/language-service": "14.3.0",

Exception or Error
This version of CLI is only compatible with Angular versions ^15.0.0,
but Angular version 14.3.0 was found instead.

Please visit the link below to find instructions on how to update Angular.
https://update.angular.io/

Your Environment
Angular CLI: 14.2.11
Node: 16.15.0
Package Manager: npm 8.5.5
OS: darwin arm64

Angular: 14.3.0
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router, service-worker

Package                            Version
------------------------------------------------------------
@angular-devkit/architect          0.1402.11
@angular-devkit/build-angular      14.2.11
@angular-devkit/core               14.2.11
@angular-devkit/schematics         14.2.11
@angular/cdk                       14.2.7
@angular/cdk-experimental          14.2.7
@angular/cli                       14.2.11
@angular/google-maps               14.2.7
@angular/material                  14.2.7
@angular/material-luxon-adapter    14.2.7
@angular/material-moment-adapter   14.2.7
@schematics/angular                13.3.7
rxjs                               6.6.7
typescript                         4.6.4
webpack                            5.72.1

Anything else relevant?
No response

This is caused by the usage of @angular-builders/custom-webpack which is pulling @angular-devkit/build-angular version 15.x


🚀 Personal Profile: Adding DetailView

Added a basic personal profile detail view:

Updated the urls.py to navigate to the profile-detail
Updated the views.py with the ProfileDetailView class
Added an HTML page to display the personal profile's fields
Added tests that check the detail-view

On another PR- I will improve the UI and add the option to update the data, right now it's a basic display:

close #131

please add a test that checks for an invalid profile ID url. Look here for an example https://github.com/redhat-beyond/JobSeeker/blob/main/feed/tests/test_feed_views.py#L51-L58

Thanks @paOmer , added 👍


Babel doesn't export __esModule

Instead it tries to do a single export. This is a cool feature but by default it should use the commonStrict feature to be the same as traceur: https://babeljs.io/docs/usage/modules/#interop

Actually this isn't the right way to do this, transpile shouldn't be opinionated about compiler options.  https://github.com/bitovi/transpile/issues/18 is the way to go.


Set Detault Settings

On Install Speedy Loot, Speedy Confirm, and Auto Roll on Boes (Greed) should be set.

Are you sure about auto roll? I'm fine with that, but it seems like something that some people would be upset about. lot of people dont look through config ui at all so they might have no idea what addon is auto greeding

Yes, let's turn it on by default.

Let's turn on Auto Loot too.

Should be good with next commit


Error: Passive Subdomain Enumeration

Describe the bug
While running the application, I am getting an error with commoncrawl

Looks like this is already being discussed on https://github.com/six2dez/reconftw/issues/453


tabBarVisible not working

Bug
react navigation provide options props in the Tab.Screen, one of the  options you pass to options is tabBarVisible as everyone knows, when using Tab navigator without this lib the tabBarVisible works fine, but when i integrate it with this lib it stop working, the tab bar still visible even i pass the tabBarVisible and set it to false
Environment info

Library
Version

@gorhom/animated-tabbar
2.0.0

react-native
0.61.5

react-native-reanimated
1.9.0

react-native-gesture-handler
1.6.1

react-native-svg
12.1.0

thanks for reporting this issue , i'll look into it 👍

Hi, i update the lib to the last release (2.0.1) and it's not working
mini code :
<Tab.Screen name="Messages" options={{tabBarVisible:false}} component={Messages} />

i don't know why, but suddenly it works.
thanks


Unable to load saves

Hey there,
I'm seemingly unable to load my save via this docker.
Here is my command:
sudo docker run -d --name factorio13.20 -v /opt/factorio/saves:/saves -v /opt/factorio/data/server-settings.json:/server-settings.json -e FACTORIO_SAVE=FixedMap.zip -p 34197:34197/udp jpas/factorio

It should be fixed now.


Add library size check in CI

This will help in keeping preact tiny.
It's basically,
this in the terminal:
 PASS  ./dist/preact.min.js: 3.37kB < threshold 4kB gzip

and this in the pull request:

Setting the file and threshold:
The config sits inside package.json, the threshold is set to 4kB right now.
You can add multiple files here. (docs)

Authorize bundlesize:
bundlesize needs access to github API with scope repo:status, You can follow the steps here

Happy to hear your feedback 😄

Coverage remained the same at 100.0% when pulling 21c3f2b162db87786653b00346c99b044f6bba1d on siddharthkp:master into d49ba50ecc838361e5440f06618d9bb0c3bad7d8 on developit:master.

This is awesome 👍
I think it would be helpful to make it clear in the message that the file sizes are not the literal sizes of the bundle on disk but the size after gzipping.

@robertknight That's a great suggestion, done!

Coverage remained the same at 100.0% when pulling d3460a0025ebb4f0f269cb589746ffcd938760b3 on siddharthkp:master into d49ba50ecc838361e5440f06618d9bb0c3bad7d8 on developit:master.

Coverage remained the same at 100.0% when pulling d3460a0025ebb4f0f269cb589746ffcd938760b3 on siddharthkp:master into d49ba50ecc838361e5440f06618d9bb0c3bad7d8 on developit:master.

@robertknight Do you need some help with merging this?

Coverage remained the same at 100.0% when pulling a7241eae915b7d23f1a2de9a287ec7780820fefe on siddharthkp:master into f3d0047ce748788fa527fe021ccdc2b375afeec4 on developit:master.

I was just about to open this same PR. @developit you will like this.

Wow, I read about this earlier this morning and was hoping to have time to PR it today. You people are amazing.
Anything to set up for travis or permissions on my end?

Wow, I read about this earlier this morning and was hoping to have time to PR it today.

Ha! I made this PR before posting it on twitter 😋

I think "threshold" is the amount of bytes the build is allowed to change

Nope, @lukeed is right, it's the absolute threshold after which the build will fail. But, I understand how that might be confusing. Happy to change it to something more obvious, suggestions?

I've auth'd and added the GITHUB_TOKEN travis env var. Anything else I need to to?

Nope, just merge it 😄
You'll see the comparison with the next PR that comes up.

@siddharthkp 😅 Feel free to completely disregard, but I would have expected the current threshold behavior to be named max, and then use threshold as the permissible diff-gain before throwing an error.
Totally usable & workable as is though 🎉

@lukeed yeah, thinking back, threshold is a really bad name. I'll fix that soon.

I think I agree with @lukeed - happy to merge this and change if that gets updated.  Maybe to avoid having to rename you could add a new option called maxDelta, which sortof clarifies threshold is the absolute upper bound.

@developit This is not configured properly. I was using github_token, not GITHUB_TOKEN.
Now accepting both as valid in 0.6.1
I raised a PR for that: https://github.com/developit/preact/pull/744

and here I thought env vars were case-insensitive :P

So did I!


Requirements for Public UI

The API should support the following:

List types of AOI documents
List active records sorted by most recent, given the document type (AOI list)
Return metadata of product, given product id (will be used to show event details and show geoshape on leaflet)
Return all records given ES query, index name and doc type (will be used to get acquisitions, IFG, COD and SLCP products)

Pele is more like the generic dataset-level abstraction later for querying HySDS Core-generated datasets.
Concepts such as AOIs are more of the ARIA-adaptation.
Pele should at the least, support the querying of the fields we considered mandatory in ".dataset.json"
How about the following?

get list of dataset (collections)

response may be [acquisitions, IFG, COD, SLCP, etc]

get list of types

response may be [area_of_interest, raw, slc, interferogram, etc]

get dataset by constraint

allows users to apply constraints to filter the dataset results

The tricky thing is how far along to go before we end up re-doing ES. The intent of this is to provide a high-level dataset-layer model query.
That way, even if the backend db were to be replaced with something else, this Pele API should be able to stand the test of time (ideally).


fzf multi selection moves up for reverse layout

[X] I have read through the manual page (man fzf)
[X] I have the latest version of fzf
[X] I have searched through the existing issues

Info

OS

[X] Linux
[ ] Mac OS X
[ ] Windows
[ ] Etc.

Shell

[X] bash
[ ] zsh
[ ] fish

Problem / Steps to reproduce
find /bin | fzf --multi  --layout=reverse

The list shown is below the command line, growing downwards. Selection at the top. When doing a multi select using Shift+Tab, the cursor moves upwards, instead of downwards. This is usually not what is desired.

Thanks for the quick feedback. I had --bind=tab:accept in FZF_DEFAULT_OPTS to both bring up fzf with Tab and select the item. So Tab didn't work and I thought Shift+Tab was the default for multi select.
I have now added --bind=right:toggle+down.


Enter key not detected on TextFields on desktop embedder

When running Flutter on desktop (desktop embedder), hitting the Enter key while editing a TextField doesn't call onSubmitted or onEditingComplete. This only happens on iOS and Android simulators.

Please add the output of flutter doctor -v.

This only happens on iOS and Android.

What does this mean? Flutter only supports iOS and Android.

Sorry, my comment wasn't clear enough. I'm running Flutter on desktop through an embedder. Behavior in iOS and Android both device and simulator, are as intended. This is a PR for the embedder to make it work, along with the referenced PR here.

The PR was merged. Is this fixed?

Is this a duplicate of #15757 ?

I'm not sure it's a duplicate since this that issue seems a bit broad, and may not be talking about the embedder, where the key does nothing. The change merged adds an onSubmitted action if the text field maxLines == 1, but does nothing if it's > 1. I think we can keep it open until the latter is addressed.

This was fixed long ago, apologies for the delay.


Creating events not working for events created in 2024

Describe the bug
Users are unable to create new events this year. Although a message indicating the event has been successfully created is displayed to the user, the server actually responds with a 400 Error. As a result, the event is not created in the system.
Steps to Reproduce:
Log in to the application.
Navigate to the event creation page.
Fill in the required event details and submit.
Expected Behavior: The event should be created successfully and stored in the server.
Actual Behavior: The user sees a confirmation message saying the event has been created. However, the server returns a 400 Error, and no event is actually created.
Additional context
Likely related to server side event verification.
If you're interested in working on this feature, please comment so you can be assigned

https://github.com/Together-100Devs/Together/blob/5285afa00a45b01764c7db8d3aef03286593f865/server/models/Event.js#L34
Ok I think it is just this.

@intelagense is this issue completed?

@20jasper it is still being worked on. The code is good as far as I can tell but the site still needs some deployment tweaks to make the changes live.


CSS Error in mapbox-gl-geocoder

After incorporating this library, I keep getting the following error:
<EMAIL_ADDRESS>2:0
Module parse failed: Unexpected token (2:0)
You may need an appropriate loader to handle this file type.
| /* Basics */
> .mapboxgl-ctrl-geocoder,
| .mapboxgl-ctrl-geocoder *,
| .mapboxgl-ctrl-geocoder *:after,

The React app uses the NextJS framework (v8.0.4) and react-map-gl-geocoder version 1.8.0.
I'm guessing this could be a webpack config related problem since NextJS manages webpack for you. I will see if I can come up with anything there and report back.

Oops, sorry looks like I made a bad decision to import the CSS in this component. I was trying to make peoples lives easier and didn't consider that not everyone will have a build system setup to make this work. I'm going to need to do a major version upgrade and remove the CSS import and have users import it themselves as react-map-js does.
In the meantime, it looks like you might be able to use this library to get things working with Next.js. https://github.com/zeit/next-plugins/tree/master/packages/next-css

@kjkurtz how are you loading the CSS for react-map-gl?

I was letting this library do it and used that next-css plugin in my nextjs config. I’m not in front of my computer at the moment but can give it another try later and give you more detail. Using that next-css plugin though should allow css imports, but maybe not for stuff in node_modules? Not sure right off hand.

A temporary work around for you could be to copy and paste my code (it's only one file) into your code base and load the CSS the same way that you load the react-map-gl CSS.
I plan to remove the CSS import and have users bring it in themselves, but not sure when I'll push that up.

Cool, I did that and it worked at least for styling. I was able to bring it in using the same import statement you did for CSS but within my own component versus a library component. I'm guessing NextJS treats them differently.
I still have one goofy thing where because I am using onClick in ReactMapGL to zoom to polygon bounds, if you click in the Geocoder text box, it zooms to the bounds underneath it.

This click event propagating through to the map is a known issue that I haven't decided on how to fix yet https://github.com/SamSamskies/react-map-gl-geocoder/issues/22. I describe a current work around in the issue.

@kjkurtz I just published v2 which removes the CSS import if you wanna switch back to importing this component as a dependency to take advantage of updates. See release notes here https://github.com/SamSamskies/react-map-gl-geocoder/releases. Let me know if you still need help with fixing the click event propagation problem.

Great, thanks! I'll give it a try. I've also been experimenting with the slightly different mapbox-gl wrapper found here: https://github.com/alex3165/react-mapbox-gl. I've felt it's a little easier to integrate custom components into that one vs Uber's, but I do miss the integration of the viewport with state that the Uber library has. Have you compared them at all?

I checked out that library a long time ago, but ended up going with Uber's react-map-gl for projects that I've worked on. I haven't explored other options much because react-map-gl + deck.gl has been easy to work with.

Gotcha. deck.gl looks pretty awesome, I haven't tried it yet. At this point trying to build out some basic custom features on top of MapboxGL. Thanks again for getting the update out!


Password config form

There should be a form that allows users to select the length of the password. This should be done using a mui slider allowing password lengths stretching from 8 to 64, the default value is 12.

The password length config form has been created and deployed in v1.0.0


Fix container traversal

Description:
This PR fixes two issues with recursive browsing heos sources. First, we add basic support for browsing source containers by allowing to pass the container_id to the browse/browse command if it is set for the current HeosSource. Note that this variant of browse/browse also supports a range option, which would however require a change to the HeosSource.browse() function.
Secondly, we patch the resulting HeosSource objects by settings their source_id to the source_id of its parent.
I wonder whether we should rather introduce a new HeosContainer class; right now HeosSource plays a slightly surprising double role as a source and a folder (or container) on a source. Maybe this makes sense, I'm really new to this whole API...
Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.
[ ] Tests have been added/updated. No exclusions in .coveragerc permitted.
[ ] README.MD updated (if necessary)

Browsing music sources and media items has been fully and properly implemented in #37


test: run RunCommandContext asynchronously

This ensures that we return if either the context is canceled in the case that the
invocation of RunCommandContext gets stuck.
Signed-off by: Ian Vernon<EMAIL_ADDRESS>

This change is

Coverage increased (+0.03%) to 41.974% when pulling fe2cef70cea2600b5b52853a6b4ec9393771ba60 on pr/ianvernon/exec-async into 9da04ac9e1bda225689c08e614143be2e4a70915 on master.

test-me-please

Closing in favor of #8264


AnimatedValueXY w/interpolate

I found that you can't pass interpolated animations to AnimatedValue constructor
const LIMIT = 100; // or some other value
const pan2 = new Animated.ValueXY({
  x: this.state.pan.x.interpolate({
    inputRange: [-LIMIT, LIMIT],
    outputRange: [-LIMIT, LIMIT],
    extrapolate: 'clamp',
  }),
  y: this.state.pan.y.interpolate({
    inputRange: [-LIMIT, LIMIT],
    outputRange: [-LIMIT, LIMIT],
    extrapolate: 'clamp',
  }),
});

because of the following invariant in AnimatedImplementation.js
invariant(
  value.x instanceof AnimatedValue &&
  value.y instanceof AnimatedValue,
  'AnimatedValueXY must be initalized with an object of numbers or ' +
  'AnimatedValues.'
);

Funny thing is that commenting the invariant solves the problem and everything works as expected.
The problem is that AnimatedInterpolation is not an instance of AnimatedValue, but an instance of AnimatedWithChildren instance of Animated.
Theoretically, the solution would be to change the invariant to Animated.
This is happening on
"react": "15.2.1",
"react-native": "^0.30.0",

@facebook-github-bot label Icebox

Hi there! This issue is being closed because it has been inactive for a while.
But don't worry, it will live on with ProductPains! Check out its new home: https://productpains.com/post/react-native/animatedvaluexy-winterpolate
ProductPains helps the community prioritize the most important issues thanks to its voting feature.
It is easy to use - just login with GitHub.
Also, if this issue is a bug, please consider sending a PR with a fix.
We're a small team and rely on the community for bug fixes of issues that don't affect fb apps.

@facebook-github-bot close


Some white logs.

I face a small issue with logs. They are white.
I use:
MC 1.18.2
Forge 40.1.67
This Rocks!: 1.18.2-1.0.2

By the second wathing i saw it is birch and it is intendet i think. :)


fix(post_release): rm long running major release

The long running major release served no purpose. It was often not kept
up-to-date with the latest patch, and if it was then there was already
another long running cluster through the latest minor release benchmark.
This commit removes all mentions of this benchmark from the update
benchmarks form. It also tries to clean up parts of the text.
Note that this benchmark has already been stopped and deleted.

@remcowesterhoud I was encountering a flaky test. Can you take a look?


Pharah: Concussive Blast Still Deals Direct Damage

Created by: DpsDoomMain
• Currently Pharah’s Concussive Blast deals thirty damage on direct hits.
• Previously Pharah’s Concussive Blast dealt zero damage on direct hits.

moved from ow1_emulator_backup#509


Can not start verdaccio with docker-compose, version 4.4.0

I'm use verdaccio/verdaccio version 4.4.0 docker image
when execute docker-compose up, It show errors:
Attaching to verdaccio
verdaccio    |  warn --- config file  - /verdaccio/conf/config.yaml
verdaccio    |  warn --- Verdaccio started
verdaccio    | (node:8) UnhandledPromiseRejectionWarning: TypeError: Converting circular structure to JSON
verdaccio    |     --> starting at object with constructor 'Timeout'
verdaccio    |     |     property '_idlePrev' -> object with constructor 'TimersList'
verdaccio    |     --- property '_idleNext' closes the circle
verdaccio    |     at JSON.stringify (<anonymous>)
verdaccio    |     at new LocalDatabase (/opt/verdaccio/node_modules/@verdaccio/local-storage/lib/local-database.js:65:20)
verdaccio    |     at LocalStorage._loadStorage (/opt/verdaccio/build/lib/local-storage.js:842:14)
verdaccio    |     at new LocalStorage (/opt/verdaccio/build/lib/local-storage.js:47:31)
verdaccio    |     at Storage.init (/opt/verdaccio/build/lib/storage.js:64:25)
verdaccio    |     at _default (/opt/verdaccio/build/api/index.js:126:17)
verdaccio    |     at startVerdaccio (/opt/verdaccio/build/lib/bootstrap.js:60:22)
verdaccio    |     at init (/opt/verdaccio/build/lib/cli.js:78:35)
verdaccio    |     at Object.<anonymous> (/opt/verdaccio/build/lib/cli.js:111:3)
verdaccio    |     at Module._compile (internal/modules/cjs/loader.js:959:30)
verdaccio    | (node:8) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2)
verdaccio    | (node:8) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
verdaccio exited with code 0

my docker-compose.yml file:
version: '3.1'

services:
  verdaccio:
    image: verdaccio/verdaccio:4.3.5
    container_name: "verdaccio"
    networks:
      - node-network
    environment:
      - VERDACCIO_PORT=4873
    ports:
      - "80:4873"
    volumes:
      - "./storage:/verdaccio/storage"
      - "./config:/verdaccio/conf"
      - "./plugins:/verdaccio/plugins"
networks:
  node-network:
    driver: bridge

my config file:
storage: /verdaccio/storage/data
plugins: /verdaccio/plugins
web:
  title: TAL NPM
auth:
  htpasswd:
    file: /verdaccio/storage/htpasswd
    max_users: 3
uplinks:
  taobao:
    url: https://registry.npm.taobao.org/
packages:
  '@peiyou/*':
    access: $all
    publish: peiyou-ci peiyou admin
    unpublish: admin peiyou
    storage: peiyou
    proxy: taobao
  '**':
    access: $all
    publish: admin
    unpublish: admin
    storage: public
    proxy: taobao
middlewares:
  audit:
    enabled: true
logs:
  - { type: stdout, format: pretty, level: http }
  - { type: rotating-file, format: json, path: /verdaccio/storage/logs/log.jsonl, level: http, options: {period: 1d, count: 30} }

But everything is ok when using 4.3.5

Hm, this seems to be new:
verdaccio    | (node:8) UnhandledPromiseRejectionWarning: TypeError: Converting circular structure to JSON
verdaccio    |     --> starting at object with constructor 'Timeout'
verdaccio    |     |     property '_idlePrev' -> object with constructor 'TimersList'
verdaccio    |     --- property '_idleNext' closes the circle
verdaccio    |     at JSON.stringify (<anonymous>)
verdaccio    |     at new LocalDatabase (/opt/verdaccio/node_modules/@verdaccio/local-storage/lib/local-database.js:65:20)

The part which throws this error is
config: JSON.stringify(this.config, null, 4).

Can you output / export `this.config` (to a file) and check which part contains the TimersList / idlePrev part?

You might be able to find the culprit by removing single lines from your config file and test when it works.

https://gist.github.com/zmmbreeze/9408172

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Cyclic_object_value

> The JSON format per se doesn't support object references (although an IETF draft exists), hence JSON.stringify() doesn't try to solve them and fails accordingly.

Hm, this seems to be new:
verdaccio    | (node:8) UnhandledPromiseRejectionWarning: TypeError: Converting circular structure to JSON
verdaccio    |     --> starting at object with constructor 'Timeout'
verdaccio    |     |     property '_idlePrev' -> object with constructor 'TimersList'
verdaccio    |     --- property '_idleNext' closes the circle
verdaccio    |     at JSON.stringify (<anonymous>)
verdaccio    |     at new LocalDatabase (/opt/verdaccio/node_modules/@verdaccio/local-storage/lib/local-database.js:65:20)

The part which throws this error is
config: JSON.stringify(this.config, null, 4).

Can you output / export this.config (to a file) and check which part contains the TimersList / idlePrev part?
You might be able to find the culprit by removing single lines from your config file and test when it works.
https://gist.github.com/zmmbreeze/9408172
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Cyclic_object_value

The JSON format per se doesn't support object references (although an IETF draft exists), hence JSON.stringify() doesn't try to solve them and fails accordingly.

I found that when I comment this line, the error disappers
- { type: rotating-file, format: json, path: /verdaccio/storage/logs/log.jsonl, level: http, options: {period: 1d, count: 30} }

any idea?

Not yet sure, we have to check if we can reproduce it now and find the cause.

Could you provide a repo where we can reproduce this issue ?

Could you provide a repo where we can reproduce this issue ?

Of course, here's repo: https://github.com/taoabc/reproduce-verdaccio-error

Ok, thanks for the repo. Currently working on it.
When starting I get the following error:

Error: ENOENT: no such file or directory, open '/verdaccio/storage/logs/log.jsonl'

I will create this file manually.

Ok, thanks for the repo. Currently working on it.
When starting I get the following error:

Error: ENOENT: no such file or directory, open '/verdaccio/storage/logs/log.jsonl'

Seems I have to create an empty logsfolder.

follow the readme will reproduce the issue.

Which readme? I see none.

So far it works here:
➜  reproduce-verdaccio-error git:(master) docker-compose up
Creating network "reproduce-verdaccio-error_node-network" with driver "bridge"
Creating verdaccio-test ... done
Attaching to verdaccio-test
verdaccio-test |  warn --- config file  - /verdaccio/conf/config.yaml
verdaccio-test |  warn --- Verdaccio started
verdaccio-test |  warn --- Plugin successfully loaded: verdaccio-htpasswd
verdaccio-test |  warn --- Plugin successfully loaded: verdaccio-audit
verdaccio-test |  warn --- http address - http://<IP_ADDRESS>:4873/ - verdaccio/4.3.5
verdaccio-test |  fatal--- uncaught exception, please report this
verdaccio-test | Error: ENOENT: no such file or directory, open '/verdaccio/storage/logs/log.jsonl'
verdaccio-test exited with code 255
➜  reproduce-verdaccio-error git:(master) ✗ docker-compose up
Starting verdaccio-test ... done
Attaching to verdaccio-test
verdaccio-test |  warn --- config file  - /verdaccio/conf/config.yaml
verdaccio-test |  warn --- Verdaccio started
verdaccio-test |  warn --- Plugin successfully loaded: verdaccio-htpasswd
verdaccio-test |  warn --- Plugin successfully loaded: verdaccio-audit
verdaccio-test |  warn --- http address - http://<IP_ADDRESS>:4873/ - verdaccio/4.3.5
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /', bytes: 0/575
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/0.style.ce77317cdb424d2f38d8.css', bytes: 0/1191
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/manifest.ba207bfcf72b6ad80f79.js', bytes: 0/1610
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/main.ba207bfcf72b6ad80f79.js', bytes: 0/19831
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/vendors.ba207bfcf72b6ad80f79.js', bytes: 0/168857
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/verdaccio/packages', bytes: 0/3
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/93df1ce974e744e7d98f5d842da74ba0.svg', bytes: 0/753
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/favicon.ico', bytes: 0/2054
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/6f6560222974090c1ef11e84623ff803.svg', bytes: 0/692
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/1.ba207bfcf72b6ad80f79.js', bytes: 0/9676
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/6.ba207bfcf72b6ad80f79.js', bytes: 0/4670
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/ac0877b3e5dab78d7b5319b32cb03b11.svg', bytes: 0/833
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/fonts/roboto-latin-400.woff2', bytes: 0/15736
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/fa99a58eb30e323243a5b2dbae7eacdd.svg', bytes: 0/898
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/d96f386211a24e791aaa1f929fd56f91.svg', bytes: 0/1291
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/fonts/roboto-latin-500.woff2', bytes: 0/15872
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/de092a6cac20ccf2cd373644425a13ce.svg', bytes: 0/577
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/3025c327f6f127d5190f14b16e75b41b.svg', bytes: 0/851
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/24fd3a77ee5710ead382075bbfa36d17.svg', bytes: 0/380
verdaccio-test |  http <-- 200, user: null(<IP_ADDRESS>), req: 'GET /-/static/b1e0d4d4ee23474aee6616f444fc7aa9.svg', bytes: 0/1045

follow the readme will reproduce the issue.

Which readme? I see none.

My misstake, I push the commit now.

My docker version
Client: Docker Engine - Community
 Version:           19.03.5
 API version:       1.40
 Go version:        go1.12.12
 Git commit:        633a0ea
 Built:             Wed Nov 13 07:25:41 2019
 OS/Arch:           linux/amd64
 Experimental:      false

Server: Docker Engine - Community
 Engine:
  Version:          19.03.5
  API version:      1.40 (minimum version 1.12)
  Go version:       go1.12.12
  Git commit:       633a0ea
  Built:            Wed Nov 13 07:24:18 2019
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.2.10
  GitCommit:        b34a5c8af56e510852c35414db4c1f4fa6172339
 runc:
  Version:          1.0.0-rc8+dev
  GitCommit:        3e425f80a8c931f88e6d94a8c831b9d5aa481657
 docker-init:
  Version:          0.18.0
  GitCommit:        fec3683

My docker-compose version
docker-compose version 1.25.0, build 0a186604
docker-py version: 4.1.0
CPython version: 3.7.4
OpenSSL version: OpenSSL 1.1.0l  10 Sep 2019

Error: ENOENT: no such file or directory, open '/verdaccio/storage/logs/log.jsonl'

Please try to create the logsfolder manually and see if it works then.
So far I can not reproduce the issue. I have cloned the repo using cc40935f07315b8ab17cb64b2aeb29ab4e15305e

http address - http://<IP_ADDRESS>:4873/ - verdaccio/4.3.5

Are you sure you have pushed the correct docker-compose file?

http address - http://<IP_ADDRESS>:4873/ - verdaccio/4.3.5

Are you sure you have pushed the correct docker-compose file?
Currently testing with image: verdaccio/verdaccio:4.4.0
Please make sure to always specify the version / pin the version.

I can reproduce it now, investigating.

Hm, debugging is a bit hard here without bashon the path of the image. What is the preferred and recommended way @juanpicado?

se try to create the logsfolder man

I've pushed the commit that contains logs folder, and lock the verdaccio version to 4.4.0

works: "@verdaccio/local-storage": "8.2.0"
broken: "@verdaccio/local-storage": "8.4.2"

CIRCULAR: obj.logger.streams.1.stream.timeout._idleNext._idlePrev = obj.logger.streams.1.stream.timeout = [object Object]

Used the ìsCircular`function from https://stackoverflow.com/a/34909127/753676

So when both logger configs are defined streams: [ [Object], [Object] ], is problematic.
This is what we get when we dump this.configin this case:
verdaccio-test | Config {
verdaccio-test |   logger: Logger {
verdaccio-test |     _events: [Object: null prototype] {},
verdaccio-test |     _eventsCount: 0,
verdaccio-test |     _maxListeners: undefined,
verdaccio-test |     _level: 35,
verdaccio-test |     streams: [ [Object], [Object] ],
verdaccio-test |     serializers: { err: [Function], req: [Function], res: [Function] },
verdaccio-test |     src: false,
verdaccio-test |     fields: { name: 'verdaccio', hostname: '5b13626778f2', pid: 7 },
verdaccio-test |     haveNonRawStreams: false
verdaccio-test |   },

CIRCULAR: obj.logger.streams.1.stream.timeout._idleNext._idlePrev = obj.logger.streams.1.stream.timeout = [object Object]

Used the isCircularfunction from https://stackoverflow.com/a/34909127/753676
So when both logger configs are defined streams: [ [Object], [Object] ], is problematic.
This is what we get when we dump this.configin this case:
verdaccio-test | Config {
verdaccio-test |   logger: Logger {
verdaccio-test |     _events: [Object: null prototype] {},
verdaccio-test |     _eventsCount: 0,
verdaccio-test |     _maxListeners: undefined,
verdaccio-test |     _level: 35,
verdaccio-test |     streams: [ [Object], [Object] ],
verdaccio-test |     serializers: { err: [Function], req: [Function], res: [Function] },
verdaccio-test |     src: false,
verdaccio-test |     fields: { name: 'verdaccio', hostname: '5b13626778f2', pid: 7 },
verdaccio-test |     haveNonRawStreams: false
verdaccio-test |   },

See https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger.ts#L138

CIRCULAR: obj.logger.streams.1.stream.timeout._idleNext._idlePrev = obj.logger.streams.1.stream.timeout = [object Object]

Used the isCircularfunction from https://stackoverflow.com/a/34909127/753676
So when both logger configs are defined streams: [ [Object], [Object] ], is problematic.
This is what we get when we dump this.config in this case:
verdaccio-test | Config {
verdaccio-test |   logger: Logger {
verdaccio-test |     _events: [Object: null prototype] {},
verdaccio-test |     _eventsCount: 0,
verdaccio-test |     _maxListeners: undefined,
verdaccio-test |     _level: 35,
verdaccio-test |     streams: [ [Object], [Object] ],
verdaccio-test |     serializers: { err: [Function], req: [Function], res: [Function] },
verdaccio-test |     src: false,
verdaccio-test |     fields: { name: 'verdaccio', hostname: '5b13626778f2', pid: 7 },
verdaccio-test |     haveNonRawStreams: false
verdaccio-test |   },

See https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger.ts#L138

I think the extra JSON.stringify is not needed here.
See https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger/format/json.ts#L9 and https://github.com/trentm/node-bunyan/blob/master/lib/bunyan.js#L1191
https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger.ts#L21
Caused by https://github.com/verdaccio/monorepo/commit/27fc528e6d191e2a5bfee00885f8134b1f7fd17f, see https://github.com/verdaccio/monorepo/blame/master/plugins/local-storage/src/local-database.ts#L61
https://github.com/verdaccio/monorepo/commit/27fc528e6d191e2a5bfee00885f8134b1f7fd17f#diff-a16a6ac27b56d0c88b0b66f05c86ef05R38
We should use the jsonFormat / safeCycles method.

I think the extra JSON.stringify is not needed here.
See https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger/format/json.ts#L9 and https://github.com/trentm/node-bunyan/blob/master/lib/bunyan.js#L1191
https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger.ts#L21
Caused by https://github.com/verdaccio/monorepo/commit/27fc528e6d191e2a5bfee00885f8134b1f7fd17f, see https://github.com/verdaccio/monorepo/blame/master/plugins/local-storage/src/local-database.ts#L61
https://github.com/verdaccio/monorepo/commit/27fc528e6d191e2a5bfee00885f8134b1f7fd17f#diff-a16a6ac27b56d0c88b0b66f05c86ef05R38
We should use the jsonFormat / safeCycles method.
Normally it is handled by bunyan, its emitevent and fastAndSafeJsonStringifymethod.

I think the extra JSON.stringify is not needed here.
See https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger/format/json.ts#L9 and https://github.com/trentm/node-bunyan/blob/master/lib/bunyan.js#L1191
https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger.ts#L21
Caused by https://github.com/verdaccio/monorepo/commit/4d7a068, see https://github.com/verdaccio/monorepo/blame/master/plugins/local-storage/src/local-database.ts#L61
https://github.com/verdaccio/monorepo/commit/4d7a068#diff-c1f05bdde7ec795154f8e0f7a77aa61eR28
We should use the jsonFormat / safeCycles method.
Normally it is handled by bunyan, its emitevent and fastAndSafeJsonStringifymethod.

I think the extra JSON.stringify is not needed here.
See https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger/format/json.ts#L9 and https://github.com/trentm/node-bunyan/blob/master/lib/bunyan.js#L1191
https://github.com/verdaccio/verdaccio/blob/master/src/lib/logger.ts#L21
Caused by https://github.com/verdaccio/monorepo/commit/27fc528e6d191e2a5bfee00885f8134b1f7fd17f, see https://github.com/verdaccio/monorepo/blame/master/plugins/local-storage/src/local-database.ts#L61
https://github.com/verdaccio/monorepo/commit/27fc528e6d191e2a5bfee00885f8134b1f7fd17f#diff-a16a6ac27b56d0c88b0b66f05c86ef05R38
We should use the jsonFormat / safeCycles method.
Normally it is handled by bunyan, its emitevent and fastAndSafeJsonStringifymethod.

A clean logfile with one entry per line (no beautifying needed, this should be done by bunyan).
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"msg":"Verdaccio started","time":"2020-01-06T11:37:21.607Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":10,"config":{"logger":{"_events":{},"_eventsCount":0,"_level":10,"streams":[{"type":"raw","level":35,"stream":{"_events":{},"_eventsCount":0,"writable":true},"raw":true,"closeOnExit":false},{"type":"raw","level":10,"stream":{"path":"/verdaccio/storage/logs/log.jsonl","count":30,"periodNum":1,"periodScope":"d","stream":{"_writableState":{"objectMode":false,"highWaterMark":16384,"finalCalled":false,"needDrain":false,"ending":false,"ended":false,"finished":false,"destroyed":false,"decodeStrings":true,"defaultEncoding":"utf8","length":132,"writing":true,"corked":0,"sync":false,"bufferProcessing":false,"writelen":132,"bufferedRequest":null,"lastBufferedRequest":null,"pendingcb":1,"prefinished":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"bufferedRequestCount":0,"corkedRequestsFree":{"next":null,"entry":null}},"writable":true,"_events":{},"_eventsCount":1,"path":"/verdaccio/storage/logs/log.jsonl","fd":null,"flags":"a","mode":438,"autoClose":true,"bytesWritten":0,"closed":false},"rotQueue":[],"rotating":false,"rotAt":1578355200000,"timeout":{"_idleTimeout":44558394,"_idlePrev":{"_idleNext":"[Circular]","_idlePrev":"[Circular]","expiry":44559832,"id":-9007199254740991,"msecs":44558394,"priorityQueuePosition":1},"_idleNext":"[Circular]","_idleStart":1438,"_repeat":null,"_destroyed":false},"_events":{},"_eventsCount":1},"raw":true,"closeOnExit":false}],"serializers":{},"src":false,"fields":{"name":"verdaccio","hostname":"02a487678ebc","pid":7},"haveNonRawStreams":false},"user_agent":"verdaccio/4.4.0","uplinks":{"taobao":{"url":"https://registry.npm.taobao.org","cache":true}},"packages":{"@peiyou/*":{"access":["$all"],"publish":["peiyou-ci","peiyou","admin"],"unpublish":["admin","peiyou"],"storage":"peiyou","proxy":["taobao"]},"**":{"access":["$all"],"publish":["admin"],"unpublish":["admin"],"storage":"public","proxy":["taobao"]}},"server_id":"8d5c52fbc950","self_path":"/verdaccio/conf/config.yaml","storage":"/verdaccio/storage/data","plugins":"/verdaccio/plugins","web":{"title":"TAL NPM"},"auth":{"htpasswd":{"file":"/verdaccio/storage/htpasswd","max_users":3}},"middlewares":{"audit":{"enabled":true}},"logs":[{"type":"stdout","format":"pretty","level":"http"},{"type":"rotating-file","format":"json","path":"/verdaccio/storage/logs/log.jsonl","level":"trace","options":{"period":"1d","count":30}}],"https":{"enable":false}},"msg":"[local-storage]: configuration: Config {\n  logger: Logger {\n    _events: [Object: null prototype] {},\n    _eventsCount: 0,\n    _maxListeners: undefined,\n    _level: 10,\n    streams: [\n      {\n        type: 'raw',\n        level: 35,\n        stream: Stream {\n          _events: [Object: null prototype] {},\n          _eventsCount: 0,\n          _maxListeners: undefined,\n          writable: true,\n          write: [Function]\n        },\n        raw: true,\n        closeOnExit: false\n      },\n      {\n        type: 'raw',\n        level: 10,\n        stream: VerdaccioRotatingFileStream {\n          path: '/verdaccio/storage/logs/log.jsonl',\n          count: 30,\n          periodNum: 1,\n          periodScope: 'd',\n          stream: WriteStream {\n            _writableState: WritableState {\n              objectMode: false,\n              highWaterMark: 16384,\n              finalCalled: false,\n              needDrain: false,\n              ending: false,\n              ended: false,\n              finished: false,\n              destroyed: false,\n              decodeStrings: true,\n              defaultEncoding: 'utf8',\n              length: 132,\n              writing: true,\n              corked: 0,\n              sync: false,\n              bufferProcessing: false,\n              onwrite: [Function: bound onwrite],\n              writecb: [Function: nop],\n              writelen: 132,\n              bufferedRequest: null,\n              lastBufferedRequest: null,\n              pendingcb: 1,\n              prefinished: false,\n              errorEmitted: false,\n              emitClose: false,\n              autoDestroy: false,\n              bufferedRequestCount: 0,\n              corkedRequestsFree: {\n                next: null,\n                entry: null,\n                finish: [Function: bound onCorkedFinish]\n              }\n            },\n            writable: true,\n            _events: [Object: null prototype] {\n              open: [Function: bound onceWrapper] { listener: [Function] }\n            },\n            _eventsCount: 1,\n            _maxListeners: undefined,\n            path: '/verdaccio/storage/logs/log.jsonl',\n            fd: null,\n            flags: 'a',\n            mode: 438,\n            start: undefined,\n            autoClose: true,\n            pos: undefined,\n            bytesWritten: 0,\n            closed: false\n          },\n          rotQueue: [],\n          rotating: false,\n          rotAt:<PHONE_NUMBER>000,\n          timeout: Timeout {\n            _idleTimeout: 44558394,\n            _idlePrev: [TimersList],\n            _idleNext: [TimersList],\n            _idleStart: 1438,\n            _onTimeout: [Function],\n            _timerArgs: undefined,\n            _repeat: null,\n            _destroyed: false,\n            [Symbol(refed)]: false,\n            [Symbol(asyncId)]: 26,\n            [Symbol(triggerId)]: 1\n          },\n          _events: [Object: null prototype] { rotated: [Function] },\n          _eventsCount: 1\n        },\n        raw: true,\n        closeOnExit: false\n      }\n    ],\n    serializers: { err: [Function], req: [Function], res: [Function] },\n    src: false,\n    fields: { name: 'verdaccio', hostname: '02a487678ebc', pid: 7 },\n    haveNonRawStreams: false\n  },\n  user_agent: 'verdaccio/4.4.0',\n  secret: undefined,\n  uplinks: { taobao: { url: 'https://registry.npm.taobao.org', cache: true } },\n  packages: {\n    '@peiyou/*': {\n      access: [ '$all' ],\n      publish: [ 'peiyou-ci', 'peiyou', 'admin' ],\n      unpublish: [ 'admin', 'peiyou' ],\n      storage: 'peiyou',\n      proxy: [ 'taobao' ]\n    },\n    '**': {\n      access: [ '$all' ],\n      publish: [ 'admin' ],\n      unpublish: [ 'admin' ],\n      storage: 'public',\n      proxy: [ 'taobao' ]\n    }\n  },\n  users: undefined,\n  server_id: '8d5c52fbc950',\n  self_path: '/verdaccio/conf/config.yaml',\n  storage: '/verdaccio/storage/data',\n  plugins: '/verdaccio/plugins',\n  security: undefined,\n  web: { title: 'TAL NPM' },\n  auth: { htpasswd: { file: '/verdaccio/storage/htpasswd', max_users: 3 } },\n  middlewares: { audit: { enabled: true } },\n  logs: [\n    { type: 'stdout', format: 'pretty', level: 'http' },\n    {\n      type: 'rotating-file',\n      format: 'json',\n      path: '/verdaccio/storage/logs/log.jsonl',\n      level: 'trace',\n      options: { period: '1d', count: 30 }\n    }\n  ],\n  https: { enable: false },\n  http_proxy: undefined,\n  https_proxy: undefined,\n  no_proxy: undefined\n}","time":"2020-01-06T11:37:21.640Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync]: init sync database","time":"2020-01-06T11:37:21.645Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"folderName":"/verdaccio/storage/data","msg":"[local-storage/_sync]: folder /verdaccio/storage/data created succeed","time":"2020-01-06T11:37:21.651Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync/writeFileSync]: sync write succeed","time":"2020-01-06T11:37:21.656Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync]: init sync database","time":"2020-01-06T11:37:21.667Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"folderName":"/verdaccio/storage/data","msg":"[local-storage/_sync]: folder /verdaccio/storage/data created succeed","time":"2020-01-06T11:37:21.669Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync/writeFileSync]: sync write succeed","time":"2020-01-06T11:37:21.672Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"content":"htpasswd","prefix":"verdaccio","msg":"Plugin successfully loaded: verdaccio-htpasswd","time":"2020-01-06T11:37:21.711Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"content":"audit","prefix":"verdaccio","msg":"Plugin successfully loaded: verdaccio-audit","time":"2020-01-06T11:37:21.755Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":10,"totalItems":0,"msg":"local-storage: [get] full list of packages (0) has been fetched","time":"2020-01-06T11:37:21.767Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":10,"totalItems":0,"msg":"local-storage: [get] full list of packages (0) has been fetched","time":"2020-01-06T11:37:21.769Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"addr":"http://<IP_ADDRESS>:4873/","version":"verdaccio/4.4.0","msg":"http address - http://<IP_ADDRESS>:4873/ - verdaccio/4.4.0","time":"2020-01-06T11:37:21.776Z","v":0}

A clean logfile with one entry per line (no beautifying needed, this should be done by bunyan).
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"msg":"Verdaccio started","time":"2020-01-06T11:37:21.607Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":10,"config":{"logger":{"_events":{},"_eventsCount":0,"_level":10,"streams":[{"type":"raw","level":35,"stream":{"_events":{},"_eventsCount":0,"writable":true},"raw":true,"closeOnExit":false},{"type":"raw","level":10,"stream":{"path":"/verdaccio/storage/logs/log.jsonl","count":30,"periodNum":1,"periodScope":"d","stream":{"_writableState":{"objectMode":false,"highWaterMark":16384,"finalCalled":false,"needDrain":false,"ending":false,"ended":false,"finished":false,"destroyed":false,"decodeStrings":true,"defaultEncoding":"utf8","length":132,"writing":true,"corked":0,"sync":false,"bufferProcessing":false,"writelen":132,"bufferedRequest":null,"lastBufferedRequest":null,"pendingcb":1,"prefinished":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"bufferedRequestCount":0,"corkedRequestsFree":{"next":null,"entry":null}},"writable":true,"_events":{},"_eventsCount":1,"path":"/verdaccio/storage/logs/log.jsonl","fd":null,"flags":"a","mode":438,"autoClose":true,"bytesWritten":0,"closed":false},"rotQueue":[],"rotating":false,"rotAt":1578355200000,"timeout":{"_idleTimeout":44558394,"_idlePrev":{"_idleNext":"[Circular]","_idlePrev":"[Circular]","expiry":44559832,"id":-9007199254740991,"msecs":44558394,"priorityQueuePosition":1},"_idleNext":"[Circular]","_idleStart":1438,"_repeat":null,"_destroyed":false},"_events":{},"_eventsCount":1},"raw":true,"closeOnExit":false}],"serializers":{},"src":false,"fields":{"name":"verdaccio","hostname":"02a487678ebc","pid":7},"haveNonRawStreams":false},"user_agent":"verdaccio/4.4.0","uplinks":{"taobao":{"url":"https://registry.npm.taobao.org","cache":true}},"packages":{"@peiyou/*":{"access":["$all"],"publish":["peiyou-ci","peiyou","admin"],"unpublish":["admin","peiyou"],"storage":"peiyou","proxy":["taobao"]},"**":{"access":["$all"],"publish":["admin"],"unpublish":["admin"],"storage":"public","proxy":["taobao"]}},"server_id":"8d5c52fbc950","self_path":"/verdaccio/conf/config.yaml","storage":"/verdaccio/storage/data","plugins":"/verdaccio/plugins","web":{"title":"TAL NPM"},"auth":{"htpasswd":{"file":"/verdaccio/storage/htpasswd","max_users":3}},"middlewares":{"audit":{"enabled":true}},"logs":[{"type":"stdout","format":"pretty","level":"http"},{"type":"rotating-file","format":"json","path":"/verdaccio/storage/logs/log.jsonl","level":"trace","options":{"period":"1d","count":30}}],"https":{"enable":false}},"msg":"[local-storage]: configuration: Config {\n  logger: Logger {\n    _events: [Object: null prototype] {},\n    _eventsCount: 0,\n    _maxListeners: undefined,\n    _level: 10,\n    streams: [\n      {\n        type: 'raw',\n        level: 35,\n        stream: Stream {\n          _events: [Object: null prototype] {},\n          _eventsCount: 0,\n          _maxListeners: undefined,\n          writable: true,\n          write: [Function]\n        },\n        raw: true,\n        closeOnExit: false\n      },\n      {\n        type: 'raw',\n        level: 10,\n        stream: VerdaccioRotatingFileStream {\n          path: '/verdaccio/storage/logs/log.jsonl',\n          count: 30,\n          periodNum: 1,\n          periodScope: 'd',\n          stream: WriteStream {\n            _writableState: WritableState {\n              objectMode: false,\n              highWaterMark: 16384,\n              finalCalled: false,\n              needDrain: false,\n              ending: false,\n              ended: false,\n              finished: false,\n              destroyed: false,\n              decodeStrings: true,\n              defaultEncoding: 'utf8',\n              length: 132,\n              writing: true,\n              corked: 0,\n              sync: false,\n              bufferProcessing: false,\n              onwrite: [Function: bound onwrite],\n              writecb: [Function: nop],\n              writelen: 132,\n              bufferedRequest: null,\n              lastBufferedRequest: null,\n              pendingcb: 1,\n              prefinished: false,\n              errorEmitted: false,\n              emitClose: false,\n              autoDestroy: false,\n              bufferedRequestCount: 0,\n              corkedRequestsFree: {\n                next: null,\n                entry: null,\n                finish: [Function: bound onCorkedFinish]\n              }\n            },\n            writable: true,\n            _events: [Object: null prototype] {\n              open: [Function: bound onceWrapper] { listener: [Function] }\n            },\n            _eventsCount: 1,\n            _maxListeners: undefined,\n            path: '/verdaccio/storage/logs/log.jsonl',\n            fd: null,\n            flags: 'a',\n            mode: 438,\n            start: undefined,\n            autoClose: true,\n            pos: undefined,\n            bytesWritten: 0,\n            closed: false\n          },\n          rotQueue: [],\n          rotating: false,\n          rotAt:<PHONE_NUMBER>000,\n          timeout: Timeout {\n            _idleTimeout: 44558394,\n            _idlePrev: [TimersList],\n            _idleNext: [TimersList],\n            _idleStart: 1438,\n            _onTimeout: [Function],\n            _timerArgs: undefined,\n            _repeat: null,\n            _destroyed: false,\n            [Symbol(refed)]: false,\n            [Symbol(asyncId)]: 26,\n            [Symbol(triggerId)]: 1\n          },\n          _events: [Object: null prototype] { rotated: [Function] },\n          _eventsCount: 1\n        },\n        raw: true,\n        closeOnExit: false\n      }\n    ],\n    serializers: { err: [Function], req: [Function], res: [Function] },\n    src: false,\n    fields: { name: 'verdaccio', hostname: '02a487678ebc', pid: 7 },\n    haveNonRawStreams: false\n  },\n  user_agent: 'verdaccio/4.4.0',\n  secret: undefined,\n  uplinks: { taobao: { url: 'https://registry.npm.taobao.org', cache: true } },\n  packages: {\n    '@peiyou/*': {\n      access: [ '$all' ],\n      publish: [ 'peiyou-ci', 'peiyou', 'admin' ],\n      unpublish: [ 'admin', 'peiyou' ],\n      storage: 'peiyou',\n      proxy: [ 'taobao' ]\n    },\n    '**': {\n      access: [ '$all' ],\n      publish: [ 'admin' ],\n      unpublish: [ 'admin' ],\n      storage: 'public',\n      proxy: [ 'taobao' ]\n    }\n  },\n  users: undefined,\n  server_id: '8d5c52fbc950',\n  self_path: '/verdaccio/conf/config.yaml',\n  storage: '/verdaccio/storage/data',\n  plugins: '/verdaccio/plugins',\n  security: undefined,\n  web: { title: 'TAL NPM' },\n  auth: { htpasswd: { file: '/verdaccio/storage/htpasswd', max_users: 3 } },\n  middlewares: { audit: { enabled: true } },\n  logs: [\n    { type: 'stdout', format: 'pretty', level: 'http' },\n    {\n      type: 'rotating-file',\n      format: 'json',\n      path: '/verdaccio/storage/logs/log.jsonl',\n      level: 'trace',\n      options: { period: '1d', count: 30 }\n    }\n  ],\n  https: { enable: false },\n  http_proxy: undefined,\n  https_proxy: undefined,\n  no_proxy: undefined\n}","time":"2020-01-06T11:37:21.640Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync]: init sync database","time":"2020-01-06T11:37:21.645Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"folderName":"/verdaccio/storage/data","msg":"[local-storage/_sync]: folder /verdaccio/storage/data created succeed","time":"2020-01-06T11:37:21.651Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync/writeFileSync]: sync write succeed","time":"2020-01-06T11:37:21.656Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync]: init sync database","time":"2020-01-06T11:37:21.667Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"folderName":"/verdaccio/storage/data","msg":"[local-storage/_sync]: folder /verdaccio/storage/data created succeed","time":"2020-01-06T11:37:21.669Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync/writeFileSync]: sync write succeed","time":"2020-01-06T11:37:21.672Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"content":"htpasswd","prefix":"verdaccio","msg":"Plugin successfully loaded: verdaccio-htpasswd","time":"2020-01-06T11:37:21.711Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"content":"audit","prefix":"verdaccio","msg":"Plugin successfully loaded: verdaccio-audit","time":"2020-01-06T11:37:21.755Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":10,"totalItems":0,"msg":"local-storage: [get] full list of packages (0) has been fetched","time":"2020-01-06T11:37:21.767Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":10,"totalItems":0,"msg":"local-storage: [get] full list of packages (0) has been fetched","time":"2020-01-06T11:37:21.769Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"addr":"http://<IP_ADDRESS>:4873/","version":"verdaccio/4.4.0","msg":"http address - http://<IP_ADDRESS>:4873/ - verdaccio/4.4.0","time":"2020-01-06T11:37:21.776Z","v":0}

It already correctly adds the \n and '[Circular]' parts. I will provide a PR.

A clean logfile with one entry per line (no beautifying needed, this should be done by bunyan) - I've used the level: trace option.
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"msg":"Verdaccio started","time":"2020-01-06T11:37:21.607Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":10,"config":{"logger":{"_events":{},"_eventsCount":0,"_level":10,"streams":[{"type":"raw","level":35,"stream":{"_events":{},"_eventsCount":0,"writable":true},"raw":true,"closeOnExit":false},{"type":"raw","level":10,"stream":{"path":"/verdaccio/storage/logs/log.jsonl","count":30,"periodNum":1,"periodScope":"d","stream":{"_writableState":{"objectMode":false,"highWaterMark":16384,"finalCalled":false,"needDrain":false,"ending":false,"ended":false,"finished":false,"destroyed":false,"decodeStrings":true,"defaultEncoding":"utf8","length":132,"writing":true,"corked":0,"sync":false,"bufferProcessing":false,"writelen":132,"bufferedRequest":null,"lastBufferedRequest":null,"pendingcb":1,"prefinished":false,"errorEmitted":false,"emitClose":false,"autoDestroy":false,"bufferedRequestCount":0,"corkedRequestsFree":{"next":null,"entry":null}},"writable":true,"_events":{},"_eventsCount":1,"path":"/verdaccio/storage/logs/log.jsonl","fd":null,"flags":"a","mode":438,"autoClose":true,"bytesWritten":0,"closed":false},"rotQueue":[],"rotating":false,"rotAt":1578355200000,"timeout":{"_idleTimeout":44558394,"_idlePrev":{"_idleNext":"[Circular]","_idlePrev":"[Circular]","expiry":44559832,"id":-9007199254740991,"msecs":44558394,"priorityQueuePosition":1},"_idleNext":"[Circular]","_idleStart":1438,"_repeat":null,"_destroyed":false},"_events":{},"_eventsCount":1},"raw":true,"closeOnExit":false}],"serializers":{},"src":false,"fields":{"name":"verdaccio","hostname":"02a487678ebc","pid":7},"haveNonRawStreams":false},"user_agent":"verdaccio/4.4.0","uplinks":{"taobao":{"url":"https://registry.npm.taobao.org","cache":true}},"packages":{"@peiyou/*":{"access":["$all"],"publish":["peiyou-ci","peiyou","admin"],"unpublish":["admin","peiyou"],"storage":"peiyou","proxy":["taobao"]},"**":{"access":["$all"],"publish":["admin"],"unpublish":["admin"],"storage":"public","proxy":["taobao"]}},"server_id":"8d5c52fbc950","self_path":"/verdaccio/conf/config.yaml","storage":"/verdaccio/storage/data","plugins":"/verdaccio/plugins","web":{"title":"TAL NPM"},"auth":{"htpasswd":{"file":"/verdaccio/storage/htpasswd","max_users":3}},"middlewares":{"audit":{"enabled":true}},"logs":[{"type":"stdout","format":"pretty","level":"http"},{"type":"rotating-file","format":"json","path":"/verdaccio/storage/logs/log.jsonl","level":"trace","options":{"period":"1d","count":30}}],"https":{"enable":false}},"msg":"[local-storage]: configuration: Config {\n  logger: Logger {\n    _events: [Object: null prototype] {},\n    _eventsCount: 0,\n    _maxListeners: undefined,\n    _level: 10,\n    streams: [\n      {\n        type: 'raw',\n        level: 35,\n        stream: Stream {\n          _events: [Object: null prototype] {},\n          _eventsCount: 0,\n          _maxListeners: undefined,\n          writable: true,\n          write: [Function]\n        },\n        raw: true,\n        closeOnExit: false\n      },\n      {\n        type: 'raw',\n        level: 10,\n        stream: VerdaccioRotatingFileStream {\n          path: '/verdaccio/storage/logs/log.jsonl',\n          count: 30,\n          periodNum: 1,\n          periodScope: 'd',\n          stream: WriteStream {\n            _writableState: WritableState {\n              objectMode: false,\n              highWaterMark: 16384,\n              finalCalled: false,\n              needDrain: false,\n              ending: false,\n              ended: false,\n              finished: false,\n              destroyed: false,\n              decodeStrings: true,\n              defaultEncoding: 'utf8',\n              length: 132,\n              writing: true,\n              corked: 0,\n              sync: false,\n              bufferProcessing: false,\n              onwrite: [Function: bound onwrite],\n              writecb: [Function: nop],\n              writelen: 132,\n              bufferedRequest: null,\n              lastBufferedRequest: null,\n              pendingcb: 1,\n              prefinished: false,\n              errorEmitted: false,\n              emitClose: false,\n              autoDestroy: false,\n              bufferedRequestCount: 0,\n              corkedRequestsFree: {\n                next: null,\n                entry: null,\n                finish: [Function: bound onCorkedFinish]\n              }\n            },\n            writable: true,\n            _events: [Object: null prototype] {\n              open: [Function: bound onceWrapper] { listener: [Function] }\n            },\n            _eventsCount: 1,\n            _maxListeners: undefined,\n            path: '/verdaccio/storage/logs/log.jsonl',\n            fd: null,\n            flags: 'a',\n            mode: 438,\n            start: undefined,\n            autoClose: true,\n            pos: undefined,\n            bytesWritten: 0,\n            closed: false\n          },\n          rotQueue: [],\n          rotating: false,\n          rotAt:<PHONE_NUMBER>000,\n          timeout: Timeout {\n            _idleTimeout: 44558394,\n            _idlePrev: [TimersList],\n            _idleNext: [TimersList],\n            _idleStart: 1438,\n            _onTimeout: [Function],\n            _timerArgs: undefined,\n            _repeat: null,\n            _destroyed: false,\n            [Symbol(refed)]: false,\n            [Symbol(asyncId)]: 26,\n            [Symbol(triggerId)]: 1\n          },\n          _events: [Object: null prototype] { rotated: [Function] },\n          _eventsCount: 1\n        },\n        raw: true,\n        closeOnExit: false\n      }\n    ],\n    serializers: { err: [Function], req: [Function], res: [Function] },\n    src: false,\n    fields: { name: 'verdaccio', hostname: '02a487678ebc', pid: 7 },\n    haveNonRawStreams: false\n  },\n  user_agent: 'verdaccio/4.4.0',\n  secret: undefined,\n  uplinks: { taobao: { url: 'https://registry.npm.taobao.org', cache: true } },\n  packages: {\n    '@peiyou/*': {\n      access: [ '$all' ],\n      publish: [ 'peiyou-ci', 'peiyou', 'admin' ],\n      unpublish: [ 'admin', 'peiyou' ],\n      storage: 'peiyou',\n      proxy: [ 'taobao' ]\n    },\n    '**': {\n      access: [ '$all' ],\n      publish: [ 'admin' ],\n      unpublish: [ 'admin' ],\n      storage: 'public',\n      proxy: [ 'taobao' ]\n    }\n  },\n  users: undefined,\n  server_id: '8d5c52fbc950',\n  self_path: '/verdaccio/conf/config.yaml',\n  storage: '/verdaccio/storage/data',\n  plugins: '/verdaccio/plugins',\n  security: undefined,\n  web: { title: 'TAL NPM' },\n  auth: { htpasswd: { file: '/verdaccio/storage/htpasswd', max_users: 3 } },\n  middlewares: { audit: { enabled: true } },\n  logs: [\n    { type: 'stdout', format: 'pretty', level: 'http' },\n    {\n      type: 'rotating-file',\n      format: 'json',\n      path: '/verdaccio/storage/logs/log.jsonl',\n      level: 'trace',\n      options: { period: '1d', count: 30 }\n    }\n  ],\n  https: { enable: false },\n  http_proxy: undefined,\n  https_proxy: undefined,\n  no_proxy: undefined\n}","time":"2020-01-06T11:37:21.640Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync]: init sync database","time":"2020-01-06T11:37:21.645Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"folderName":"/verdaccio/storage/data","msg":"[local-storage/_sync]: folder /verdaccio/storage/data created succeed","time":"2020-01-06T11:37:21.651Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync/writeFileSync]: sync write succeed","time":"2020-01-06T11:37:21.656Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync]: init sync database","time":"2020-01-06T11:37:21.667Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"folderName":"/verdaccio/storage/data","msg":"[local-storage/_sync]: folder /verdaccio/storage/data created succeed","time":"2020-01-06T11:37:21.669Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":20,"msg":"[local-storage/_sync/writeFileSync]: sync write succeed","time":"2020-01-06T11:37:21.672Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"content":"htpasswd","prefix":"verdaccio","msg":"Plugin successfully loaded: verdaccio-htpasswd","time":"2020-01-06T11:37:21.711Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"content":"audit","prefix":"verdaccio","msg":"Plugin successfully loaded: verdaccio-audit","time":"2020-01-06T11:37:21.755Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":10,"totalItems":0,"msg":"local-storage: [get] full list of packages (0) has been fetched","time":"2020-01-06T11:37:21.767Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":10,"totalItems":0,"msg":"local-storage: [get] full list of packages (0) has been fetched","time":"2020-01-06T11:37:21.769Z","v":0}
{"name":"verdaccio","hostname":"02a487678ebc","pid":7,"level":40,"addr":"http://<IP_ADDRESS>:4873/","version":"verdaccio/4.4.0","msg":"http address - http://<IP_ADDRESS>:4873/ - verdaccio/4.4.0","time":"2020-01-06T11:37:21.776Z","v":0}

It already correctly adds the \n and [Circular] parts. I will provide a PR.

I have tested it with some changes in the container by using a custom image with sudo and nano.
FROM node:12.13.1-alpine as builder

ENV NODE_ENV=production \
    VERDACCIO_BUILD_REGISTRY=https://registry.verdaccio.org

RUN apk --no-cache add openssl ca-certificates wget && \
    apk --no-cache add g++ gcc libgcc libstdc++ linux-headers make python && \
    wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub && \
    wget -q https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.25-r0/glibc-2.25-r0.apk && \
    apk add glibc-2.25-r0.apk && apk add nano

WORKDIR /opt/verdaccio-build
COPY . .

ADD conf/docker.yaml /verdaccio/conf/config.yaml

RUN adduser -u $VERDACCIO_USER_UID -S -D -h $VERDACCIO_APPDIR -g "$VERDACCIO_USER_NAME user" -s /sbin/nologin $VERDACCIO_USER_NAME && \
    chmod -R +x $VERDACCIO_APPDIR/bin $VERDACCIO_APPDIR/docker-bin && \
    chown -R $VERDACCIO_USER_UID:root /verdaccio/storage && \
    chmod -R g=u /verdaccio/storage /etc/passwd

USER root

EXPOSE $VERDACCIO_PORT

VOLUME /verdaccio/storage

ENTRYPOINT ["uid_entrypoint"]

CMD $VERDACCIO_APPDIR/bin/verdaccio --config /verdaccio/conf/config.yaml --listen $VERDACCIO_PROTOCOL://<IP_ADDRESS>:$VERDACCIO_PORT

See also https://verdaccio.org/docs/en/reverse-proxy#sub-directory

I have tested it with some changes in the container by using a custom image with sudo and nano.
FROM node:12.13.1-alpine as builder

ENV NODE_ENV=production \
    VERDACCIO_BUILD_REGISTRY=https://registry.verdaccio.org

RUN apk --no-cache add openssl ca-certificates wget && \
    apk --no-cache add g++ gcc libgcc libstdc++ linux-headers make python && \
    wget -q -O /etc/apk/keys/sgerrand.rsa.pub https://alpine-pkgs.sgerrand.com/sgerrand.rsa.pub && \
    wget -q https://github.com/sgerrand/alpine-pkg-glibc/releases/download/2.25-r0/glibc-2.25-r0.apk && \
    apk add glibc-2.25-r0.apk

WORKDIR /opt/verdaccio-build
COPY . .

ADD conf/docker.yaml /verdaccio/conf/config.yaml

RUN adduser -u $VERDACCIO_USER_UID -S -D -h $VERDACCIO_APPDIR -g "$VERDACCIO_USER_NAME user" -s /sbin/nologin $VERDACCIO_USER_NAME && \
    chmod -R +x $VERDACCIO_APPDIR/bin $VERDACCIO_APPDIR/docker-bin && \
    chown -R $VERDACCIO_USER_UID:root /verdaccio/storage && \
    chmod -R g=u /verdaccio/storage /etc/passwd

USER root

EXPOSE $VERDACCIO_PORT

VOLUME /verdaccio/storage

ENTRYPOINT ["uid_entrypoint"]

CMD $VERDACCIO_APPDIR/bin/verdaccio --config /verdaccio/conf/config.yaml --listen $VERDACCIO_PROTOCOL://<IP_ADDRESS>:$VERDACCIO_PORT

Fixed here https://github.com/verdaccio/monorepo/pull/312 but not released yet


Fixed links in README

Coverage remained the same at 100.0% when pulling f132a9551f871aaab80016e62ecf663c71fcdaad on andy/fix-readme-links into eff35915f5ff96296050cd5c877930bcfedce5cd on master.


Bump version of wit-parser in wasmtime-component-macro

Currently the wasmtime-component-macro crate pulls in ^3.0 of the wit-parser crate and is missing what appear to be significant improvements since 0.3.1.
For example, the version it pulls in doesn't understand the default keyword and gives the following confusing error which has since been fixed.
expected `default`, `world` or `interface`, found keyword `default`
      |
    7 | default world template {
      | ^------

source

I think you were using Wasmtime 5.0.0 from crates.io perhaps? If that's the case then the Wasmtime 6.0.0 version should suffice as that, and main, depend on tha latest wit-parser. I'm going to go ahead and close this as I think that addresses the issues here, but let me know if there's still problems.


Set the target of a permanent zone. target is one of: default , ACCEPT , DROP , REJECT

Cookbook version
[2.6.2]
Chef-client version
[12.18.31]
Platform Details
[Operating system distribution and release version. Cloud provider if running in the cloud]
Scenario:
[run the following command : firewall-cmd --zone=public --set-target=ACCEPT --permanent]
Steps to Reproduce:
[If you are filing an issue what are the things we need to do in order to repro your problem? How are you using this cookbook or any resources it includes?]
Expected Result:
[What are you expecting to happen as the consequence of above reproduction steps?]
Actual Result:
[What actually happens after the reproduction steps? Include the error output or a link to a gist if possible.]

Looks like we need a little more info here to understand what you're reporting.

I was trying to use the cookbook to execute the command "firewall-cmd --zone=public --set-target=ACCEPT --permanent", but there was no way to accomplish it. and looking at the cookbook code, it wasn't made to execute the "SET" command.


[DO NOT MERGE] Add Premium to EventHub SKU name and tier enums

This PR updates the Eventhub SKU name and tier enums (both modeled as string) by adding "Premium" to the allowed values.
MSFT employees can try out our new experience at OpenAPI Hub  - one location for using our validation tools and finding your workflow.

Contribution checklist:

[ ] I commit to follow the Breaking Change Policy of “no breaking changes
[ ] I have reviewed the documentation for the workflow.
[ ] Validation tools were run on swagger spec(s) and errors have all been fixed in this PR. How to fix?

If any further question about AME onboarding or validation tools, please view the FAQ.
ARM API Review Checklist

[ ] Ensure to check this box if one of the following scenarios meet updates in the PR, so that label “WaitForARMFeedback” will be added automatically to involve ARM API Review. Failure to comply may result in delays for manifest application. Note this does not apply to data plane APIs, all “removals” and “adding a new property” no more require ARM API review.

Adding new API(s)
Adding a new API version
Adding a new service

[ ] If you are blocked on ARM review and want to get the PR merged with urgency, please get the ARM oncall for reviews (RP Manifest Approvers team under Azure Resource Manager service) from IcM and reach out to them.

Breaking Change Review Checklist
If there are following updates in the PR, ensure to request an approval from API Review Board as defined in the Breaking Change Policy.

[ ] Removing API(s) in stable version
[ ] Removing properties in stable version
[ ] Removing API version(s) in stable version
[ ] Updating API in stable version with Breaking Change Validation errors
[ ] Updating API(s) in preview over 1 year

Please follow the link to find more details on PR review process.

/azp run automation - sdk

/azp run automation - sdk

Remove WaitForARMFeedback label as modifying properties does not need ARM review.

@nyaghma, could you explain why do you add label DoNotMerge, is this PR ready for review?

@erich-wang I'm sending this PR to make sure the changes that I've made to the API are not being considered as breaking changes (referring to this document). Since the required changes in the backend are not complete yet, I added the label DoNotMerge. We need to know if a new API version would be required for the proposed API changes or not in order to complete our backend development.

Adding new enum value is considered as breaking change per https://github.com/Azure/openapi-diff/blob/master/docs/rules/1020.md

@erich-wang Is this true even for the Enums that are modeled as string? The document I shared says adding value to Enum is non-breaking if it's modeled as string in the swagger. The link you shared doesn't specifically talk about the "modeledAsString" Enums, so I'm wondering if there is an exception for this type of Enums or the document I referred to is out of date.

@nyaghma, you're right, it is not considered as breaking change if modelAsString is set as true. I just talked with AME swagger team to update the rules, thanks.

@nyaghma , please let us know when it is ready to merge, thanks.

@nyaghma, what is current status for this PR? I'll close this PR within 5 biz days if no response from you, thanks.

@nyaghma, I'm closing this PR as there's no response from your side for long time, please reopen this PR if necessary, thanks.


Maybe wrong proxy behaviour

Hi Dave,
I'm trying out Drachtio's proxy capability but I'm experiencing some issues:
I have an Asterisk PBX + Drachtio running on docker on local server. Drachtio is registered to the provider and is receiving INVITEs;  INVITEs are then proxied to Asterisk which handles the calls.
Something fun is happening since "200 OK" from my provider is not proxied (to Asterisk) but is sent again to Drachtio's public IP.
Here is what is happening:

My_Provider —- INVITE ——-> Drachtio
Drachtio —— Trying —--—> My_Provider
Drachtio  ——> INVITE -—-> Asterisk
Asterisk ——-> TRYING —-> Drachtio
Asterisk ——> Ringing ——> Drahctio
Drachtio ——> Ringing --—> My_Provider
Asterisk ——> 200 OK ——> Drachtio
Drachtio ——-> 200 OK -—> My_Provider
My_Provider —-> ACK ———> Drachtio [here]
Drachtio ——-> ACK ——--> Drachtio [here]

The code I'm running is
srf.invite((req, res) => {
    srf.proxyRequest(req, ['asterisk'],
    {
      remainInDialog: true,
      followRedirects: true,
      provisionalTimeout: '3s'
    },
      function(err, results){
        if( err ) { throw err ; }
        console.log(/*JSON.stringify*/(results));
      }
    );
});

I'm running drachtio version v0.8.3-4-g8fe175fb0  as:

drachtio --contact "sip:*;transport=udp --external-ip MY-SERVER-PUBLIC-IP

The container starts with:

SipTransport::logTransports - udp/<IP_ADDRESS>:5060 (sip:;transport=udp, external-ip: [MY-SERVER-PUBLIC-IP], local-net: ), mtu size: 1300
SipTransport::logTransports - udp/[MY-DRACHTIO-PRIVATE-DOCKER-IP]:5060 (sip:;transport=udp, external-ip: [MY-SERVER-PUBLIC-IP], local-net: ), mtu size: 1300

Here I've dumped the app.js debug log and drachtio-server 's one.
May it be due to this Route header sent by myProvider?
Thank you!

Sorry for the delay in responding..
This seems to me to be a problem with the Voip provider.  drachtio sends a 200 OK to the invite back to the service provider with these Record-Route headers and Contact:
Record-Route: <sip:[MY-SERVER-PUBLIC-IP]:5060;lr>
Record-Route: <sip:[VOIP-PROVIDER-IP];lr;ftag=c50f3666.Acc135.B2b30.DbGkDji1MyPBibo37FWEK0087;did=ac8.a54b5b95>
Record-Route: <sip:ITL-RR@<IP_ADDRESS>:5060;lr>
Contact: <sip:s@[MY-ASTERISK-PRIVATE-DOCKER-IP]:5060>

what I would expect to see in the ACK, therefore would be a SIP URI containing that Contact, and then 1 Route header (the 2 RR headers from the voip provider side should have been removed by the time the final proxy on the provider side sends the ACK).
Instead, we get this:
ACK sip:s@[MY-SERVER-PUBLIC-IP]:5060 SIP/2.0

That is what leads drachtio  to try to forward the request to itself.
Furthermore, the ACK also has Record-Route headers....these should have been converted to Route headers and should not appear in the ACK.
Can you share with your provider and get their feedback?

Hi Dave,
I agree with you, this seems a wrong implementation on their side.
I'll try to reach them but for sure they wont fix.

OK, please re-open if they have any feedback