node-gyp preventing npm install

I can't npm install because of node-gyp. I'm on Sierra and v5.8.0 node and v3.9.3 npm.
><EMAIL_ADDRESS>install /Users/fang/Desktop/mindflowy/node_modules/nslog
> node-gyp rebuild

  CXX(target) Release/obj.target/nslog/src/main.o
  CXX(target) Release/obj.target/nslog/src/nslog_mac.o
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:10:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/NSArray.h:5:
/System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:44:12: error: unknown property
      attribute 'class'
@property (class, readonly) BOOL supportsSecureCoding;
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:6:
/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:262:12: error: unknown property
      attribute 'class'
@property (class, readonly) const NSStringEncoding *availableStringEncodings;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:269:12: error: unknown property
      attribute 'class'
@property (class, readonly) NSStringEncoding defaultCStringEncoding;    // Should be rarely used
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:11:
/System/Library/Frameworks/Foundation.framework/Headers/NSNotification.h:45:12: error: unknown
      property attribute 'class'
@property (class, readonly, strong) NSNotificationCenter *defaultCenter;
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:33:12: error: unknown property
      attribute 'class'
@property (class, readonly, strong) NSBundle *mainBundle;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:46:12: error: unknown property
      attribute 'class'
@property (class, readonly, copy) NSArray<NSBundle *> *allBundles;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:47:12: error: unknown property
      attribute 'class'
@property (class, readonly, copy) NSArray<NSBundle *> *allFrameworks;
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:14:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/NSCalendar.h:7:
/System/Library/Frameworks/Foundation.framework/Headers/NSDate.h:46:12: error: unknown property
      attribute 'class'
@property (class, readonly) NSTimeInterval timeIntervalSinceReferenceDate;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSDate.h:60:12: error: unknown property
      attribute 'class'
@property (class, readonly, copy) NSDate *distantFuture;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSDate.h:61:12: error: unknown property
      attribute 'class'
@property (class, readonly, copy) NSDate *distantPast;
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:14:
/System/Library/Frameworks/Foundation.framework/Headers/NSCalendar.h:108:12: error: unknown
      property attribute 'class'
@property (class, readonly, copy) NSCalendar *currentCalendar...
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCalendar.h:109:12: error: unknown
      property attribute 'class'
@property (class, readonly, strong) NSCalendar *autoupdatingCurrentCalendar NS_AVAILABLE(10...
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:15:
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:21:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *controlCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:22:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *whitespaceCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:23:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *whitespaceAndNewlineCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:24:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *decimalDigitCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:25:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *letterCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:26:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *lowercaseLetterCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:27:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *uppercaseLetterCharacterSet;
                     ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [Release/obj.target/nslog/src/nslog_mac.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:100:13)
gyp ERR! stack     at ChildProcess.emit (events.js:185:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:204:12)
gyp ERR! System Darwin 16.0.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/fang/Desktop/mindflowy/node_modules/nslog
gyp ERR! node -v v5.8.0
gyp ERR! node-gyp -v v3.3.1
gyp ERR! not ok
<EMAIL_ADDRESS>/Users/fang/Desktop/mindflowy
├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├─┬<EMAIL_ADDRESS>│ └──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>├──<EMAIL_ADDRESS>└──<EMAIL_ADDRESS>
npm ERR! Darwin 16.0.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install"
npm ERR! node v5.8.0
npm ERR! npm  v3.9.3
npm ERR! code ELIFECYCLE

npm ERR<EMAIL_ADDRESS>install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the nslog package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs nslog
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls nslog
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/fang/Desktop/mindflowy/npm-debug.log

Any ideas how to fix this? I have node-gyp installed globally.

Things you should try:

Update to latest npm version:

npm install -g npm

Try using the latest version of node:

Clean install:

rm -rf node_modules
npm cache clean
npm i && npm rb

No luck 😦
><EMAIL_ADDRESS>install /Users/fang/Desktop/mindflowy/node_modules/nslog
> node-gyp rebuild

gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
gyp WARN download NVM_NODEJS_ORG_MIRROR is deprecated and will be removed in node-gyp v4, please use NODEJS_ORG_MIRROR
  CXX(target) Release/obj.target/nslog/src/main.o
  CXX(target) Release/obj.target/nslog/src/nslog_mac.o
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:10:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/NSArray.h:5:
/System/Library/Frameworks/Foundation.framework/Headers/NSObject.h:44:12: error: unknown property
      attribute 'class'
@property (class, readonly) BOOL supportsSecureCoding;
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:6:
/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:262:12: error: unknown property
      attribute 'class'
@property (class, readonly) const NSStringEncoding *availableStringEncodings;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:269:12: error: unknown property
      attribute 'class'
@property (class, readonly) NSStringEncoding defaultCStringEncoding;    // Should be rarely used
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:11:
/System/Library/Frameworks/Foundation.framework/Headers/NSNotification.h:45:12: error: unknown
      property attribute 'class'
@property (class, readonly, strong) NSNotificationCenter *defaultCenter;
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:12:
/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:33:12: error: unknown property
      attribute 'class'
@property (class, readonly, strong) NSBundle *mainBundle;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:46:12: error: unknown property
      attribute 'class'
@property (class, readonly, copy) NSArray<NSBundle *> *allBundles;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:47:12: error: unknown property
      attribute 'class'
@property (class, readonly, copy) NSArray<NSBundle *> *allFrameworks;
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:14:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/NSCalendar.h:7:
/System/Library/Frameworks/Foundation.framework/Headers/NSDate.h:46:12: error: unknown property
      attribute 'class'
@property (class, readonly) NSTimeInterval timeIntervalSinceReferenceDate;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSDate.h:60:12: error: unknown property
      attribute 'class'
@property (class, readonly, copy) NSDate *distantFuture;
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSDate.h:61:12: error: unknown property
      attribute 'class'
@property (class, readonly, copy) NSDate *distantPast;
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:14:
/System/Library/Frameworks/Foundation.framework/Headers/NSCalendar.h:108:12: error: unknown
      property attribute 'class'
@property (class, readonly, copy) NSCalendar *currentCalendar...
           ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCalendar.h:109:12: error: unknown
      property attribute 'class'
@property (class, readonly, strong) NSCalendar *autoupdatingCurrentCalendar NS_AVAILABLE(10...
           ^
In file included from ../src/nslog_mac.mm:3:
In file included from /System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:15:
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:21:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *controlCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:22:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *whitespaceCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:23:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *whitespaceAndNewlineCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:24:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *decimalDigitCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:25:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *letterCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:26:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *lowercaseLetterCharacterSet;
                     ^
/System/Library/Frameworks/Foundation.framework/Headers/NSCharacterSet.h:27:22: error: unknown
      property attribute 'class'
@property (readonly, class, copy) NSCharacterSet *uppercaseLetterCharacterSet;
                     ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [Release/obj.target/nslog/src/nslog_mac.o] Error 1
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/local/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:100:13)
gyp ERR! stack     at ChildProcess.emit (events.js:185:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:204:12)
gyp ERR! System Darwin 16.0.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /Users/fang/Desktop/mindflowy/node_modules/nslog
gyp ERR! node -v v5.8.0
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok
<EMAIL_ADDRESS>/Users/fang/Desktop/mindflowy
└── (empty)

npm ERR! Darwin 16.0.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "i"
npm ERR! node v5.8.0
npm ERR! npm  v3.10.5
npm ERR! code ELIFECYCLE

npm ERR<EMAIL_ADDRESS>install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script 'node-gyp rebuild'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the nslog package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node-gyp rebuild
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs nslog
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls nslog
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/fang/Desktop/mindflowy/npm-debug.log
npm ERR! code 1

Hmm did you try all the steps?

Yup, same problem.
Andy
On Sat, Aug 06, 2016 at 8:35 PM Amila Welihinda
<
mailto:Amila Welihinda<EMAIL_ADDRESS>
wrote:

a, pre, code, a:link, body { word-wrap: break-word !important; }
Hmm did you try all the steps?
—
You are receiving this because you authored the thread.
Reply to this email directly,
https://github.com/chentsulin/electron-react-boilerplate/issues/326#issuecomment-238056193
, or
https://github.com/notifications/unsubscribe-auth/ASOTmkARppOSxDUvGRPxNzgIOkk2iz3fks5qdShjgaJpZM4JeX0A
.

There is probably something wrong with your C++ compiler. The tests for this project are at 100% coverage and this works on my machine.

How would I fix my C++ compiler?
Andy
On Sat, Aug 06, 2016 at 9:35 PM Amila Welihinda
<
mailto:Amila Welihinda<EMAIL_ADDRESS>
wrote:

a, pre, code, a:link, body { word-wrap: break-word !important; }
There is probably something wrong with your C++ compiler. The
https://travis-ci.org/chentsulin/electron-react-boilerplate
are at 100% coverage and this works on my machine.
—
You are receiving this because you authored the thread.
Reply to this email directly,
https://github.com/chentsulin/electron-react-boilerplate/issues/326#issuecomment-238057947
, or
https://github.com/notifications/unsubscribe-auth/ASOTmro0zQbhrMV6itciXpCGIsbm7t6lks5qdTZFgaJpZM4JeX0A
.

@fandy could you try upgrade to Xcode 8? It looks you are using macOS Sierra. (Darwin 16)

I'm a JS dev so idk about C++/LLVM/clang. LLVM on my machine doesnt work so I'm thinking of doing a fresh install of my OS.

$ gcc -v:
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 7.3.0 (clang-703.0.31)
Target: x86_64-apple-darwin16.0.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin

@fandy make sure LLVM version is 8.0.0, try move to Xcode-beta.app, just run sudo xcode-select -switch /Applications/Xcode-beta.app/Contents/Developer.

That fixed it, thanks!
—
You are receiving this because you were mentioned.
Reply to this email directly,
https://github.com/chentsulin/electron-react-boilerplate/issues/326#issuecomment-238140031
, or
https://github.com/notifications/unsubscribe-auth/ASOTmi9nS_vXlPKe2Ge9f3SlQZsV5HnHks5qdrHHgaJpZM4JeX0A
.
a, pre, code, a:link, body { word-wrap: break-word !important; }


Merge from AK 2.5 to confluentinc/kafka 2.5

Resolved merge conflict found in automated merge  https://jenkins.confluent.io/job/apache-kafka-test/job/2.5/117/console
Retained conflicting documentation.

Can you add a brief description of what the conflicts were and how you resolved them?

@dhruvilshah3 the conflict was in docs/upgrade.html with additional comments which I retained.

Looking into why check fails, it works in my setup though

It looks like its 2.12 specific scala syntax introduced recently in which is causing build failure.
Thanks, @lbradstreet for guiding me on scala support and pointing the same and @andrewegel with his merge process

@ijuma @lbradstreet @dhruvilshah3 can this be merged. All scala 2.11 issue are resolved.

@rohitshekhar29 thanks, the scala 2.11 fixes LGTM. I left one comment about the conflict fix in upgrade.html. Once that's fixed I can approve it.

merged this from the local repo.


tab/ctrl+e can't work

I create a new .PHP blank file ,then input
html:5
and press tab/ctrl+e  then it is not work.

What’s your OS? Do you see any error in DevTools?

win8.1

but i create .html bank file ，it‘s work.
there is not any  code of.html .php  it's bank.
not  any error in DevTools.
sorry my English is poor.

Same here on Windows 7 using version 0.199.0. No errors in the dev tools.

+1 same problem here for PHP and Blade (PHP templating language). Ctrl+E works but it's not as easy as just hitting tab 😔

Same problem on Mac OS 10.11.1, Atom 1.2.4, Emmet 2.3.16. Ctrl+E works, tab doesn’t.

Whilst I am hesitant to bump an old issue, this is an issue that seems to have not been fixed as of yet. Is there any fix available to get tab working in .blade.php files with emmet?

Just go to settings->packages->{{emmet}} and select view codes
in new window select keymaps->emmet.cson and change shortcode from ctrl-e to something else such as ctrl-i
hit save and close atom next time you can use ctrl-i ;).


Ambiguity in wiki docs?

Type: Question
NLog.Config version : 4.2.3
Platform: .Net Framework 4.6.1
There is some ambiguity between the lines marked and Accuracy and Speed columns marked in the snapshot.

The sentence tells use:
speed(FastLocal) < speed (FastUtc) and
speed(AccuratetLocal) < speed (AccurateUtc) .
That's consistent with the table?
Mabye you read the sentence as speed(Local) < speed (Fast) , which isn't true

OK.
Then, the speed of execution should be in the order AccurateUTC < AccurateLocal < FastUTC < FastLocal

Well the difference between FactUTC and FastLocal isn't that big, so therefor they are both "fastest"

Anyway, ambiguity is bad and so I updated the text:

https://github.com/NLog/NLog/wiki/Time-Source
Is this more clear?

Yes. Thanks.


PowerDNS dns provider.

Thank you for contributing to sewer.
Every contribution to sewer is important to us.
You may not know it, but you have just contributed to making the world a more safer and secure place.
What(What have you changed?)
Added a dns provider for the PowerDNS API.
Why(Why did you change it?)
So that DNS authentication can be performed against a PowerDNS server.

 Here is an overview of what got changed by this pull request:

Issues
======
- Added 1

Complexity increasing per file
==============================
- sewer/dns_providers/powerdns.py  2

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- sewer/dns_providers/powerdns.py  2

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- sewer/dns_providers/powerdns.py  2

See the complete overview on Codacy

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- sewer/dns_providers/powerdns.py  4

See the complete overview on Codacy

@kylejohnson I've had a need to know what the domain.tld of the fqdn that's passed to the provider class is in a still-private hack for updating an acme-validation subzone (challenges are in host.acme-validation.domain.tld linked by static cnames in the apex zone).  One reason that provider is still private code is that it currently has the domain.tld hardwired.  :-(
Would having that apex zone name passed to the dns code help with PowerDNS, or is that just one part of the search you have to do?  (or @anyone, would it be useful for other dns_providers?)

@mmaney

Would having that apex zone name passed to the dns code help with PowerDNS

Yes, but I don't know that we ever really know the apex domain; you can request a certificate for any number of subdomains without also requesting for the apex domain, and you can also request certificates for multiple, separate apex domains (I think?).
Either way, PowerDNS makes it very easy to check if a given zone_id exists, and the validate_powerdns_zone function takes care of the rest.  I imagine the code would not be applicable with different providers.

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- sewer/dns_providers/powerdns.py  4
- sewer/dns_providers/tests/test_powerdns.py  2

See the complete overview on Codacy

So obviously that doesn't look good, but it looks like the testing for sewer isn't so great to begin with?

@kylejohnson Ah, I see, you're using a part of the PowerDNS system to find the apex for each request.  I don't know if there was anything like that that I could use, but in any case I was coming from the perspective that I had a bunch of fqdns to validate (and they did share an apex, whether that was one of the fqdns or not), and of course I knew - the literal me setting up and running the requests - what the apex was.  If I'd had something like that virtual URI tree (?) that this driver queries... nah, at this point it would still be hard-wired, but I might be thinking of finding it in a like manner as a way forward.
Thanks for the food for thought!

@kylejohnson tests are failing

note to self; related: https://github.com/komuw/sewer/pull/144

@komuw Sorry, didn't see the other refactoring changes included.  This PR now only has the powerdns changes.

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- sewer/dns_providers/tests/test_powerdns.py  2
- sewer/dns_providers/powerdns.py  4

See the complete overview on Codacy

@komuw Tests for my changes look OK, I think.
Locally, they seem to run OK:
kjohnson@kyle-workstation01:~/work/sewer$ python -m unittest sewer.dns_providers.tests.test_powerdns.TestPowerDNS
...
----------------------------------------------------------------------
Ran 3 tests in 0.001s

OK

@kylejohnson
You need to add powerdns to:

setup.py; somewhere here: https://github.com/komuw/sewer/blob/ee0f259c303038968556d8b5680e6c58f0fd1645/setup.py#L29
and also here: https://github.com/komuw/sewer/blob/ee0f259c303038968556d8b5680e6c58f0fd1645/setup.py#L111

https://github.com/komuw/sewer/blob/master/sewer/cli.py somewhere here: https://github.com/komuw/sewer/blob/ee0f259c303038968556d8b5680e6c58f0fd1645/sewer/cli.py#L74
and somehere here: https://github.com/komuw/sewer/blob/ee0f259c303038968556d8b5680e6c58f0fd1645/sewer/cli.py#L300-L311

README.md somewhere here: https://github.com/komuw/sewer/blame/master/README.md#L26
and somewhere here: https://github.com/komuw/sewer/blame/master/README.md#L70-L71

@kylejohnson the CI(circleCI) is failing because this PR is going to reduce the test code coverage to less than 85%.

As you can see, this is because the file sewer/dns_providers/powerdns.py only has a test coverage of 29%.
Compare this to the file, sewer/dns_providers/route53.py which has a test coverage of 89%.
The main lines in sewer/dns_providers/powerdns.py that are missing test coverage are line 55 to line 91:

https://github.com/komuw/sewer/blob/7fbcbccfdb56753aac8aed1c80c2810c88191971/sewer/dns_providers/powerdns.py#L55-L91
So it seems like adding a test(unit test or otherwise) for the method _common_dns_record would help to restore the test code coverage

 Here is an overview of what got changed by this pull request:

Complexity increasing per file
==============================
- sewer/dns_providers/powerdns.py  4
- sewer/dns_providers/tests/test_powerdns.py  2

See the complete overview on Codacy

@komuw Thank you for walking me through this.

@kylejohnson I'm trying to sort out how best to solve #162, and powerdns is one of two providers that do not strip the "*." from wildcard domains.  Is that required for powerdns to work, or is it an oversight that will cause it to fail, like route53 does in that bug?
If powerdns doesn't need it, then the obvious fix is to not add it in sewer, and then the other providers can be cleaned up at our leisure.  If powerdns does need the star, then... Well, it's easy enough to patch route53 to strip it, as most of the providers probably do.  But I really hope we can clean this up instead.
Thanks!

@mmaney Hmm, I didn't explicitly run across this in my tests, integrations or usage.  In fact, I haven't used sewer with a wildcard cert yet.
That said, it looks like powerdns is not happy:
"message": "Error generating certificate - Error creating or deleting PowerDNS record: {\"error\": \"Name '_acme-challenge.*.domain.tld.' contains unsupported characters\"}"
It looks like validate_powerdns_zone works correctly as it is able to walk backwards from *.domain.tld to find domain.tld as the apex zone.
I'll need to dig a little bit more and see what the exact query that powerdns.py is sending to the powerdns API, because for example I do have existing CNAME records for widlcard domains.
(Note that to produce the above error, I tried using a wildcard alt domain, e.g. domain_name=domain, domain_alt_names=[f"*.{domain}"])

Yes, that's the case which seems to trip up a couple of service providers - when a single cert asks to cover the domain.tld and all subdomains *.domain.tld ... which is probably fairly common since many sites want www.d.t and naked d.t to refer to the same web site.

Hello guys, when can I expect there to be a new release of sewer containing the powerDNS provider? I implemented this provider manually in my project using sewer but I'd rather have a better-tested version!

  I've been working on reducing my "future" branch to provide the changes that still need to go in for the next 0.8 release, and I hope to have a PR (perhaps lacking documentation updates that also need to go in) later today.  That will have a couple of the recent DNS providers as well as the protocol updates, and should be worthy of your attention.
And after that I expect 0.8 will get bugfixes, maybe some new provider modules, but not the less compatible changes I've been working on in my local tree.  That stuff will go into a 0.9 branch that will be more experimental for a while until it's ready for release.
Oops, almost lost my question for you: you're hoping for a better-tested what, exactly?  Since the protocol changes went in the ACME code in client has been able to be exercised against LE's staging and has been tested that way.  And getting that working again since they dropped support for the earlier draft protocol in staging, hence being ready for production to drop it later this year, has been one of my goals this year.  As for the powerdns driver, or most any of the providers, the only real-world testing they can get is from people like you, who have access to the service provider's API.  Rejoice, for powerdns has at least two such users now (that I know of)!  :-)

By better-tested I simply meant using Kyle's code instead of my own homebrewed version, haha. Thank you for the update, looking forward to it.


Winget Gui

Description of the new feature / enhancement
I think powertoys should include a gui for the winget command available in powershell. This could either be directly intergrated within the microsoft store, or it could be its own seperate app. Having this feature would make it easy to search, install, update and delete any packages available via winget, especially for people who are not comfortable using a terminal.
Scenario when this would be used?
Anytime someone wants to use winget to install an app without using a terminal.
Supporting information
No response

/dup #22925


Add Maven coordinates to JLine2/3 modules

Minor documentation improvement.
Story behind it
I wanted to try out the JLine integration. I copy pasted the example and then simply started to add imports. However, my IDE couldn't find the imports, so I was obviously missing some dependency. But the dependency to be used for this integration is not mentioned anywhere in the docs.

Merged. Thank you for the contribution!


Fix swap event charts

From https://balancerecosystem.slack.com/archives/C04MZ3X2SLW/p1733418556689379
We have three ongoing issues

[ ] SOR for boosted with underlying (asked SDK team to look into this)
[x] Swaps not showing up (something is off with the "my transactions" pane, because they show up in the "pool activity" one)
[ ] 0 snapshot values

@agualis Did this get fixed?


Tying support

Add support for rounding to to_str, and additional rounding types for mpf.__format__ functions.

The round_nearest mode is split into two: round_nearest and round_nearest_even. The former ties away from zero, whereas the latter ties to an even number.
to_str now can access these rounding modes, only for base=10; all other scenarios are not tested and raise NotImplementedError.
The format specification for mpf.__format__ now accepts two new rounding types: 'M', for round_nearest tying away from zero (which is compatible with the default value for to_str), and 'Y', which rounds away from zero. The 'M' rounding type is not available in gmpy2; all the others are fully compatible with the ones from gmpy2 (see this).

Closes #757.

@skirpichev The DeprecationWarning makes most test cases fail.
To fix this I should modify all calls to to_str to include correct rounding.
This includes the __str__ and __repr__ methods for each type defined in mpmath.
I've made some of these modifications for mpf and mpc types, would you please tell me if you think this is the correct way to go forward?

Now this has merge conflicts.

yeah, lest just switch to round_nearest per default

OK, so if I understand correctly, I should modify all calls to to_str in the __str__ and __repr__ methods to use round_nearest, correct? Otherwise we would get deprecation warnings for simply printing a float, which is something regular users would not like (myself included)

OK, so if I understand correctly, I should modify all calls to to_str in the str and repr methods to use round_nearest, correct?

No.  Lets just change default in to_str() to round_nearest.

@skirpichev I think we should assert inside to_str that rounding is one of the correct modes.

Hmm, it seems some test(s?) loop forever with your recent changes.

I don't think that just removing "bad test" is ok.  Why it's failing?

I don't think that just removing "bad test" is ok. Why it's failing?

The test I removed aimed to cover line 1237 of libmpf.py. It wasn't relevant for this PR so I removed it without much thought.

I can reproduce this failure locally with python backend (MPMATH_NOGMPY=1).  Maybe it's a normalize() bug.

Thanks.


Migrate Twitch Emotes to Helix API

Freshly announced, there are new endpoints in Helix for getting emotes:

Get channel emotes
Get global emotes

The Get channel emotes endpoint currently seems bugged, returns emote id as set id, so I'll wait a bit before working on this

It doesn't look like Helix offers a way to get a user's emotes though, which is what Chatterino and DankChat use at the moment. Of course we could just fully switch to the emote sets in the USERSTATE irc message but that will lead to the scuffed emote reloading...

Is there any progress on this? Twitch API v5 will be decomissioned on February 28. I think the USERSTATE is the only way to do it currently.

We've actually already moved away from Kraken and the only Kraken endpoint that's left is Get User's Emotes which is only used as fallback to get information about some emotes that user can use (e.g. Hype Train and emotes from other 'time-limited' emotesets). This endpoint will however not have a migration path provided and we should perhaps just get rid of it.
Back to this issue though, we currently fetch emoteset data from Ivr, which should most likely be changed to helix anyway. After Kraken mess is purged it will be easier to move the whole thing to Helix from the third-party provider, so I'm leaving this open until that's done.


Toggling the cluster on/off

Seeing cluster at final zoom level
Steps to reproduce: Place two marks close to each other
Expected Result The ability to toggle the cluster off when needed
angular-google-maps, Angular, & any other relevant dependency versions

you can set maximum zoom level at which clustering will happen using [maxZoom] property on <agm-marker-cluster>, see  https://angular-maps.com/api-docs/markerclusterer/directives/agmmarkercluster#maxZoom


not found

Request type

[ ] New documentation
[ ] Correction or update

Page to change
If this request relates to an existing article, please give its URL:
Details
Please describe the change you are requesting. If you know of technical experts who can review the change, please mention them.
Related issues
If this request relates to other issues in Bugzilla or GitHub, please provide links:

Reopen if you have more detail to provide.


Arbitrarily pass time spent to endSpan

We have a use case where we batch multiple calls to a database with a native batch API and in the response we get the responseTime for each individual call.
We are tracing how long that takes but we would like to track them singularly passing the number of milliseconds to endSpan or maybe some other method?
Thanks
cc/ @calufa

This may be a little hacky but I think it will help understand what I am trying to do:
https://github.com/GoogleCloudPlatform/cloud-trace-nodejs/blob/master/src/trace-span.js#L48
TraceSpan.prototype.close = function(endTime) {
  this.endTime = (new Date()).toISOString();
};

and
https://github.com/GoogleCloudPlatform/cloud-trace-nodejs/blob/master/src/trace-api.js#L53
ChildSpan.prototype.endSpan = function(endTime) {
  this.span_.close(endTime);
};

This is just me looking how the calls are actually stacking up.

Hmm -- just to make sure I understand -- if you are batching database calls, would you create a span per call, or one span that represents all calls? In the latter case, how would you select which responseTime would be used to determine the length of that span?

would you create a span per call

Indeed, and then call endSpan on each one of them with the responseTime value.


ERROR in Cannot read property 'push' of undefined

🐞 Bug report
Command (mark with an x)

[ ] new
[X] build
[X] serve
[ ] test
[ ] e2e
[ ] generate
[ ] add
[ ] update
[ ] lint
[ ] xi18n
[ ] run
[ ] config
[ ] help
[ ] version
[ ] doc

Is this a regression?

 Yes, the previous version in which this bug was not present was: ....
Yes, I didn't see this issue before trying to upgrade to Angular 9
Description
 A clear and concise description of the problem...
When I run ng serve, I get a red error, ERROR in Cannot read property 'push' of undefined. There is no stack trace.
🔬 Minimal Reproduction

🔥 Exception or Error

$ ng serve
0% compiling
Compiling @ngx-translate/http-loader : es2015 as esm2015

chunk {main} main.js, main.js.map (main) 2 kB [initial] [rendered]
chunk {polyfills} polyfills.js, polyfills.js.map (polyfills) 679 bytes [initial] [rendered]
chunk {runtime} runtime.js, runtime.js.map (runtime) 6.15 kB [entry] [rendered]
chunk {styles} styles.js, styles.js.map (styles) 526 kB [initial] [rendered]
chunk {vendor} vendor.js, vendor.js.map (vendor) 340 kB [initial] [rendered]
Date: 2020-02-27T20:58:39.458Z - Hash: a28c43a5df921416a87c - Time: 8915ms

ERROR in Cannot read property 'push' of undefined
** Angular Live Development Server is listening on localhost:4200, open your browser on http://localhost:4200/ **
🌍 Your Environment

Angular CLI: 9.0.3
Node: 10.15.1
OS: win32 x64

Angular: 9.0.3
... animations, cli, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router
Ivy Workspace: Yes

Package                            Version
------------------------------------------------------------
@angular-devkit/architect          0.900.3
@angular-devkit/build-angular      0.900.3
@angular-devkit/build-optimizer    0.900.3
@angular-devkit/build-webpack      0.900.3
@angular-devkit/core               9.0.3
@angular-devkit/schematics         9.0.3
@angular/cdk                       9.1.0
@angular/flex-layout               9.0.0-beta.29
@angular/material                  9.1.0
@angular/material-moment-adapter   9.1.0
@ngtools/webpack                   9.0.3
@schematics/angular                9.0.3
@schematics/update                 0.900.3
rxjs                               6.5.4
typescript                         3.7.5
webpack                            4.41.2

Anything else relevant?
I have 2 projects and a library. Both projects depend on the library. The first project and the library work fine and I have successfully upgraded to Angular 9. The second project gives me this error. I am not sure how to go about debugging this. --verbose=true did not give me any helpful output.
One note is that sometimes it starts spitting out errors about tests after giving me that error? Cannot find name 'beforeEach', Cannot find name 'it', Cannot find name 'describe', Cannot find name 'expect', etc. I didn't run tests, and the printing of these errors is not consistent.
If there is another flag I can pass in to increase the log level I'd be happy to try it to provide more info.

Duplicate of https://github.com/angular/angular/issues/35709 - should be fixed by https://github.com/angular/angular/pull/35718.


Adding tags with Tagger#tag does not update Taggable.cached_*_list

The tags properly update, but I can't figure out why my cache field isn't getting updated when the taggable model is saved.
Found this issue with a basic setup of:
class Script < ActiveRecord::Base
  acts_as_taggable
end

def User < ActiveRecord::Base
  acts_as_tagger
end

class ScriptsController < ApplicationController
  def update
    @script.attributes = params[:script]
    current_user.tag(@script, on: :tags, with: params[:tag_list], skip_save: true)
    if @script.save
      # respond_to
    end
  end
end

What do you mean saying 'my cache field' ?

I mean the field cached_tag_list in my scripts database table. The module ActsAsTaggable::Taggable::Cache handles saving the data to that column.
I will try and fix this when I get home from my trip.

 I've been working on this over a few days and I'm kind of stuck. Hopefully this will help!

Tagger::InstanceMethods#tag adds tags with Taggable::Ownership::InstanceMethods#set_owner_tag_list_on
Tags from above are saved after the taggable object is saved
Taggable::Cache updates the cached_*_list field before the object is saved. It uses Taggable::Core#tag_list_cache_on to build the tag list.

From what I can tell (and the attempts I've made), I don't think this is fixable in it's current state without some gross hacks. I'll leave this open, perhaps someone else will have better luck than me. Or perhaps I'll have a moment of clarity at some point. Who knows!


Refactored the create-tina-app cli tool

Created Logger. Moved all pre-defined styles into Logger.
Moved global variables such as program to local space.
Updated preRunChecks to warn the user if they're using a non-supported version of Node.
Replaced throw new Error('...') with exit(1) to clean up CLI error outputs.
Added the ability for the user to CTRL+C or SIGINT early.
Added validation on project name to conform with NPM naming standards.
Refactored general code:

Abstracted related logic into functions.
Separated out logic from some functions doing multiple things.
Renamed certain functions to be more clear.

Added error handling around functions that could throw errors. Previously, many errors were being ignored.
Added more logs to the CLI tool so the user can remain updated throughout the initialisation process.
The name and version field within the generated package.json now reflect what was entered by the user.
Linted files.

🦙 Looks good!! - just need to resolve the merge conflict!


Some Sentinl configuration questions

Hi!
We are trying to use Sentinl to send daily/weekly/monthly reports (screenshots) of Kibana dashboards in emails, but have a few questions:

Is it possible to include several report attachments in the same email sent from a watcher?

We would like to send the email every time the watcher triggers, so no input or condition is really needed. Is it possible to create a watcher without specifying these parts somehow, or to set them to not send any query to elastic to get the input and that the condition always is true?

Is there any support for time zones when configuring the time at which watchers should trigger?

Any guidelines or suggestions what to do would be very appreciated!
System Details
Versions

Type
Version

Kibana
6.5.3

Elasticsearc
6.5.3

Server OS
Ubuntu 16.04.6

Browser
Google Chrome Version 72.0.3626.96

Not really. You need multiple watchers possibly.
Sure. Just return true or use an always true condition.
Everything is UTC internally. The browser TZ should do the rest.

Sorry for the delay responding. If you need more details, just reopen.
Thanks!


List bullets in table of contents don't render in Safari

Brief Description
When adding the necessary classes to make the text overflow “…” work, it makes the list bullets (both numbers and alphas) disappear in Safari only, both web and mobile.
Steps to reproduce the bug
Visit any page with a table of contents, eg. https://ash-hq.org/docs/guides/ash/latest/tutorials/get-started
In Firefox/Chrome the list markers appear, but in Safari they do not.
Context

The HTML used in this table of contents is generated here -> https://github.com/ash-project/ash_hq/blob/main/lib/ash_hq/docs/extensions/render_markdown/post_processors/table_of_contents_generator.ex
So any fix to this will probably tweaking what classes get added to the li elements, both first and second levels, on both https://github.com/ash-project/ash_hq/blob/b00d56b5c236f695d52a54a5b742a8bcb555dbd8/lib/ash_hq/docs/extensions/render_markdown/post_processors/table_of_contents_generator.ex#L38 and
https://github.com/ash-project/ash_hq/blob/b00d56b5c236f695d52a54a5b742a8bcb555dbd8/lib/ash_hq/docs/extensions/render_markdown/post_processors/table_of_contents_generator.ex#L102 .
Any new classes that get added may need to also be added to the Tailwind config in tailwind.config.js, as they will be stored as part of the database content and not part of the application UI code.


Support op group name in agent config core.

Begin to work on #3298, and I begin to add document about this feature. Please review and we could work from here.
Operation Name Group Rule
Operation Name in auto instrumentation agent is unpredictable, some time, target application carries parameter in it, due to the parameter included in URI mostly.
Those operation name are also as known endpoint name in most cases.
Such as /api/checkTicket/tk/{userToken}.
We solved most of these cases, by leverage the parameter pattern path in framework, such as SpringMVC, Webflux, etc.
But it is undetected in RPC client side, such as HTTP restful client.
In this case, we have to ask the users to set the group rule manually.
All rules are supported to set through agent.config, system properties and system env, like other agent settings.

Config format, plugin.opgroup.plugin name.rule[rule name]=pattern expression
Example, plugin.opgroup.resttemplate.rule[/user/auth/{token}]=/user/auth/*

We have following plugins supporting operation name group.

I didn't find a better way than regular expressions, the idea looks good to me, but seems it will have a serious performance impact on the agent, besides, I have a couple of questions:

Can the normalization be done in backend? What's the pros and cons?
The operations will evolve for sure, deleting operations does no harm though, but adding and updating operations (done in dev side) requires updating the rules accordingly (usually done in ops side), and we don't support dynamical configuration in agent side, it may be hard to mantain the rules in time

Can the normalization be done in backend? What's the pros and cons?

Backend thing still costs the same CPU, same calculation same CPU costs, just different places. I am thinking about tradeoff, regex is powerful, but I don't intend to do so. Just support * should be enough.
And make the agent cache harder. Right?

The operations will evolve for sure, deleting operations does no harm though, but adding and updating operations (done in dev side) requires updating the rules accordingly (usually done in ops side), and we don't support dynamical configuration in agent side, it may be hard to mantain the rules in time

That is another thing, how to downstream the config from OAP, which is not impossible, right? We have many static configurations today, I think this is not a block, just a feature wanted.
@kezhenxu94

@kezhenxu94 We have regex based string group util, which gives the following benchmark. Read StringFormatGroupTest for more detail. For my understanding, if this works for a single REST client, should be enough. What do you think?
/*********************************
     * # JMH version: 1.21
     * # VM version: JDK 1.8.0_91, Java HotSpot(TM) 64-Bit Server VM, 25.91-b14
     * # VM invoker: /Users/wusheng/Documents/applications/jdk1.8.0_91.jdk/Contents/Home/jre/bin/java
     * # VM options: -ea -Didea.test.cyclic.buffer.size=1048576 -javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=54841:/Applications/IntelliJ IDEA.app/Contents/bin -Dfile.encoding=UTF-8
     * # Warmup: <none>
     * # Measurement: 5 iterations, 10 s each
     * # Timeout: 10 min per iteration
     * # Threads: 1 thread, will synchronize iterations
     * # Benchmark mode: Throughput, ops/time
     * # Benchmark: org.apache.skywalking.apm.util.StringFormatGroupTest.test100Rule
     *
     * # Run progress: 0.00% complete, ETA 00:01:40
     * # Fork: 1 of 1
     * Iteration   1: 32016.496 ops/s
     * Iteration   2: 36703.873 ops/s
     * Iteration   3: 37121.543 ops/s
     * Iteration   4: 36898.225 ops/s
     * Iteration   5: 34712.564 ops/s
     *
     *
     * Result "org.apache.skywalking.apm.util.StringFormatGroupTest.test100Rule":
     *   35490.540 ±(99.9%) 8345.368 ops/s [Average]
     *   (min, avg, max) = (32016.496, 35490.540, 37121.543), stdev = 2167.265
     *   CI (99.9%): [27145.173, 43835.908] (assumes normal distribution)
     *
     *
     * # JMH version: 1.21
     * # VM version: JDK 1.8.0_91, Java HotSpot(TM) 64-Bit Server VM, 25.91-b14
     * # VM invoker: /Users/wusheng/Documents/applications/jdk1.8.0_91.jdk/Contents/Home/jre/bin/java
     * # VM options: -ea -Didea.test.cyclic.buffer.size=1048576 -javaagent:/Applications/IntelliJ IDEA.app/Contents/lib/idea_rt.jar=54841:/Applications/IntelliJ IDEA.app/Contents/bin -Dfile.encoding=UTF-8
     * # Warmup: <none>
     * # Measurement: 5 iterations, 10 s each
     * # Timeout: 10 min per iteration
     * # Threads: 1 thread, will synchronize iterations
     * # Benchmark mode: Throughput, ops/time
     * # Benchmark: org.apache.skywalking.apm.util.StringFormatGroupTest.testMatch
     *
     * # Run progress: 50.00% complete, ETA 00:00:50
     * # Fork: 1 of 1
     * Iteration   1: 1137158.205 ops/s
     * Iteration   2: 1192936.161 ops/s
     * Iteration   3: 1218773.403 ops/s
     * Iteration   4: 1222966.452 ops/s
     * Iteration   5: 1235609.354 ops/s
     *
     *
     * Result "org.apache.skywalking.apm.util.StringFormatGroupTest.testMatch":
     *   1201488.715 ±(99.9%) 150813.461 ops/s [Average]
     *   (min, avg, max) = (1137158.205, 1201488.715, 1235609.354), stdev = 39165.777
     *   CI (99.9%): [1050675.254, 1352302.176] (assumes normal distribution)
     *
     *
     * # Run complete. Total time: 00:01:41
     *
     * REMEMBER: The numbers below are just data. To gain reusable insights, you need to follow up on
     * why the numbers are the way they are. Use profilers (see -prof, -lprof), design factorial
     * experiments, perform baseline and negative tests that provide experimental control, make sure
     * the benchmarking environment is safe on JVM/OS/HW level, ask for reviews from the domain experts.
     * Do not assume the numbers tell you what you want them to tell.
     *
     * Benchmark                           Mode  Cnt        Score        Error  Units
     * StringFormatGroupTest.test100Rule  thrpt    5    35490.540 ±   8345.368  ops/s
     * StringFormatGroupTest.testMatch    thrpt    5  1201488.715 ± 150813.461  ops/s
     *
     */

Document updated w/ new code implementation.
Operation Name Group Rule
Operation Name in auto instrumentation agent is unpredictable, some time, target application carries parameter in it, due to the parameter included in URI mostly.
Those operation name are also as known endpoint name in most cases.
Such as /api/checkTicket/tk/{userToken}.
We solved most of these cases, by leverage the parameter pattern path in framework, such as SpringMVC, Webflux, etc.
But it is undetected in RPC client side, such as HTTP restful client.
In this case, we have to ask the users to set the group rule manually.
All rules are supported to set through agent.config, system properties and system env, like other agent settings.

Config format, plugin.opgroup.plugin name.rule[rule name]=pattern regex expression

Multiple configuration items for a single plugin with different keys are supports, such as

plugin.opgroup.resttemplate.rule[/rule1]=/path1
plugin.opgroup.resttemplate.rule[/rule2]=/path2
plugin.opgroup.resttemplate.rule[/rule2]=/path3

We have following plugins supporting operation name group.

Plugin
Config Key
Example

RestTemplate
plugin.opgroup.resttemplate.rule
plugin.opgroup.resttemplate.rule[/user/auth/{token}]=/user/auth/.*

@ascrutae Please review the Rest Template plugin change and run test for it.

@david1228 Could you try this?  Or are you using other plugins for outside API call?

@david1228 Could you try this? Or are you using other plugins for outside API call?

Okay, I tried to test this function

@wu-sheng
It took me some time to test the case, the final test passed.
Through the communication with wu-sheng, some problems are confirmed and solved.
Thanks for your support.
skywalking-ui trace span info as follows:

/run ci


"-fdiagnostics-color=always" not being enabled by default

This might be premature, but I saw 39a95483b3133d22d89a68d19a41bda9fb3a79ae and wanted to try it. I'm running HEAD but not seeing coloured output unless I enable it myself (with e.g. ghcid --command="ghci Main.hs -fdiagnostics-color=always"). I tried this with both GHC 8.2.2 and GHC 8.4.1 on Linux. Is there something obvious I'm missing?

In case it's relevant, here's the shell.nix file I used for GHC + ghcid:
let
  fetch   = (import <nixpkgs> {}).fetchFromGitHub;
  nixpkgs = import <nixpkgs> {};
  overrides = self: super: {
    ghcid' = nixpkgs.haskell.lib.overrideSrc super.ghcid {
      src = fetch {
        owner  = "ndmitchell";
        repo   = "ghcid";
        rev    = "9773482fd83bf0bc528bbcb0ad121191a8fd809b";
        sha256 = "18wi0ghxl9kszivyf50aixpbq7srrdncawk7x1fzxhyimm89qqqq";
      };
      version = "0.6.11";
    };
  };
in nixpkgs.mkShell {
  buildInputs = [ ((nixpkgs.haskell.packages.ghc841.override {overrides = overrides;}).ghcWithPackages (p: [ p.ghcid' ])) ];
}

I tried this with Stack as well to rule out Nix weirdness and the command used doesn't include -fdiagnostics-color=always:
$ git clone https://github.com/ndmitchell/ghcid
$ cd ghcid
$ stack init
<...>
Downloaded lts-11.4 build plan.
<...>
$ stack build
<...>
$ stack exec -- ghcid
<...>
No files loaded, GHCi is not working properly.
Command: stack ghci --test --no-load --ghci-options=-fno-code --ghci-options=-fno-break-on-exception --ghci-options=-fno-break-on-error --ghci-options=-v1 --ghci-options=-ferror-spans

I also tried the Stack-built ghcid with my other project and got the same uncoloured output as before.

This patch results in the behaviour I expect, but I'm assuming it isn't like this for older GHC compatibility reasons?
diff --git a/src/Ghcid.hs b/src/Ghcid.hs
index 7c08a83..7d39a3c 100644
--- a/src/Ghcid.hs
+++ b/src/Ghcid.hs
@@ -125,7 +125,7 @@ autoOptions<EMAIL_ADDRESS>         let cabal = filter ((==) ".cabal" . takeExtension) files
         let opts = ["-fno-code" | null test] ++
                    -- flags that are set by :set, but are useful earlier, and are GHC-version agnostic
-                   ["-fno-break-on-exception","-fno-break-on-error","-v1","-ferror-spans"]
+                   ["-fno-break-on-exception","-fno-break-on-error","-v1","-ferror-spans","-fdiagnostics-color=always"]
         return $ case () of
             _ | stack ->
                 let flags = if null arguments then

Yep, I don't want that for older GHC compatibility reasons.
However, ghcid does a :set -fdianostics-color=always immediately after loading, so while it won't color any errors/warnings from startup, it should start doing the colors on any subsequent errors. To test, just resave/touch one of the files that is listed as having non-colored warnings/errors. Do they then change to having color?

Ah, this is exactly what I was missing! I can confirm it works after modifying the file in question. Thanks!

I added a note at the bottom of the README.


Day108

Resolves #227.

Pull Request Test Coverage Report for Build 437

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

Totals

Change from base Build 442:
0.0%

Covered Lines:
5

Relevant Lines:
5

💛  - Coveralls


Discussion: Proposals for new ways to interact with setUI

This is not meant to be merged - only for providing an example/proposal for changes to how we can interact with Bangle.setUI. This is an addition to the discussion at https://github.com/espruino/BangleApps/issues/3435.
The diff has comments explaining my thoughts.

Thanks - extending to add the handlers looks good, but the whole extra thing seems like a bit of a mess. I think if you want to do something like that, it should really just be using custom and implementing its own behaviour


chore: update packages and change name

Updates packages and changes name in comments.
improves dev experience

Warnings

:warning:
> Pull Request size seems relatively large. If this Pull Request contains multiple changes, please split each into separate PR will helps faster, easier review.

  Generated by :no_entry_sign: Danger Swift against d9dd31c491bdbce3aed234337793a506bee78d55


16 variables write tests for new functions added

Add new tests for variable releated functions

Could you increase the benchmark HARD_PERFORMANCE_LEEWAY to be 15 for now. I will make a PR later to try get the speed tests to be more consistent


Receiving DeprecationWarning: Invalid 'main' field for cloudform dependency on most Amplify commands with Node 16+

Before opening, please confirm:

[X] I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
[X] I have removed any sensitive information from my code snippets and submission.

How did you install the Amplify CLI?
pnpm
If applicable, what version of Node.js are you using?
v16.13.2
Amplify CLI Version
7.6.23
What operating system are you using?
Mac
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
n/a
Amplify Categories
Not applicable
Amplify Commands
Not applicable
Describe the bug
Upon executing an amplify command we receive the following error:
(node:52156) [DEP0128] DeprecationWarning: Invalid 'main' field in<EMAIL_ADDRESS>of 'packages/cloudform/index.js'. Please either fix that or report it to the module author
(Use `node --trace-deprecation ...` to show where the warning was created)

Fortunately this does not block us from proceeding with the execution.

Pressing the up arrow to modify the API settings duplicates the original output

Current Workaround is to downgrade to Node 14
Expected behavior
no deprecationwarning error
Reproduction steps
run any amplify command other than amplify version
GraphQL schema(s)

# Put schemas below this line

Log output

# Put your logs below this line

Additional information
No response

https://github.com/bright/cloudform/blob/master/packages/cloudform/package.json#L5

+1

same here

+1

Hey @dtc7240 :wave: with 7.6.24 released I've updated the workaround to downgrade to Node.js 14 nvm use 14

+1

Hey @josefaidt ... that is a MUCH better idea.  I wasn't using nvm before 😳 and now I am.  Thanks so much.

+1

+1

+1 - Node 16 LTS too. Must be a node 16 thing.

+1 apparently node 14 doesn't work on M1 so not sure workaround will work for me

Hey folks :wave: this issue is now resolved with the release of the packaged Amplify CLI, version 8.0.0. Closing issue 🙂


Fixing default encoding for seed in generating Ed25519 keypair

Codecov Report

Merging #119 into master will not change coverage.
The diff coverage is 0%.

@@          Coverage Diff          @@
##           master   #119   +/-   ##
=====================================
  Coverage      89%    89%
=====================================
  Files          15     15
  Lines         828    828
=====================================
  Hits          737    737
  Misses         91     91

The line in question now reads:
return cls(nacl.signing.SigningKey(seed, 'bytes').encode(encoder=Base58Encoder))
Does that mean seed should be a Python bytes object? Could you add a docstring to the generate_with_seed method just to make it clear?

Yup, the method docstring already has that incorporated -
   Generate a new key pair.

    Args:
        seed (bytes): 32-byte seed for deterministic generation.
    Returns:
        A tuple of (private_key, public_key) encoded in base58.

Okay, I will merge this PR, but I don't know how important this change is.
Do you think we should make another release of the cryptoconditions package because of it?

My guess is that if you passed something that was a str object (i.e. bytes encoded via base58) and not a bytes object, then there would be an exception.

Just noticed an exception being thrown, I have reverted the merge and will reopen this once its fixed.


refactor(parser): change faker methods (that were deprecated) to new version

Codecov Report

Merging #56 (8a6d9d4) into release (cf56561) will not change coverage.
The diff coverage is 100.00%.

@@           Coverage Diff            @@
##           release      #56   +/-   ##
========================================
  Coverage    91.62%   91.62%
========================================
  Files           18       18
  Lines          215      215
  Branches        24       24
========================================
  Hits           197      197
  Misses          16       16
  Partials         2        2

Impacted Files
Coverage Δ

.../parser/src/handlers/primitive-handler-abstract.ts
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


loadTemplate , afterInsert problem

loadTemplate with an array of JSON objects the afterInsert callback cannot set data and events to the current element: Example:
function afterInsert(el,data) {
el.click(function(){
console.log('THIS IS JUST CALLED FROM THE LAST TEMPLATE ELEMENT')
});
}
work arround:
$('#bla').loadTemplate('tpl.html', local_data[0], options);
$('#bla').loadTemplate('tpl.html', local_data[1], options);
$('#bla').loadTemplate('tpl.html', local_data[2], options);

I've just closed this issue as you didn't provide me with a clear example. Can you provide me with a jsfiddle example or a fully working code sample?


fix deprecated type definition.

Original answer triggered c:\conda\envs\bigdata\lib\site-packages\ipykernel_launcher.py:5: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.
New answer proposed per Numpy docs

Thanks !


python38Packages.vyper: 0.2.16 -> 0.3.0

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python38Packages.vyper is: "Pythonic Smart Contract Language for the EVM"
meta.homepage for python38Packages.vyper is: "https://github.com/vyperlang/vyper"
meta.changelog for python38Packages.vyper is: ""
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS

Warning: a test defined in passthru.tests did not pass

/nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0/bin/vyper passed the binary check.

/nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0/bin/vyper-json passed the binary check.

/nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0/bin/vyper-lll passed the binary check.

/nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0/bin/vyper-serve passed the binary check.

/nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0/bin/.vyper-wrapped passed the binary check.

/nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0/bin/.vyper-json-wrapped passed the binary check.

/nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0/bin/.vyper-lll-wrapped passed the binary check.

/nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0/bin/.vyper-serve-wrapped passed the binary check.

8 of 8 passed binary check by having a zero exit code.

8 of 8 passed binary check by having the new version present in output.

found 0.3.0 with grep in /nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0

found 0.3.0 in filename of file in /nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0

directory tree listing: https://gist.github.com/81842883f897173b3c205736a95197be

du listing: https://gist.github.com/5840d86e3bb546d65f35255dc0d7b435

Rebuild report (if merged into master) (click to expand)

12 total rebuild path(s)

3 package rebuild(s)

3 x86_64-linux rebuild(s)
3 i686-linux rebuild(s)
3 x86_64-darwin rebuild(s)
3 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
python38Packages.vyper
python39Packages.vyper
vyper

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python38Packages.vyper https://github.com/r-ryantm/nixpkgs/archive/e47dd11f4ae5c2d089cb32618e019eb67a5469ef.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0
ls -la /nix/store/c5sg30v7jg4rqrhd5g2c8an6s9q78n0h-python3.8-vyper-0.3.0/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

2 packages built:

python38Packages.vyper
vyper (python39Packages.vyper)

Maintainer pings
cc @siraben for testing.

https://nvd.nist.gov/vuln/detail/CVE-2021-41122


MH-12981 fix for local admin-ui develop finding main.css

@JulianKniephoff  This pull reverts "MH-12910: Put temporary grunt files into the target folder" commit 2e5278d2ad1d1d91733ebe9640a2d70c9627c4e0 and  "MH-12910: Fix location of CSS files in proxy middleware" 666ed688ea8e9c15d13d0560cb97564c37a03a81
MH-12910 ticket says usermin creates this library, but I was unable to discover which other underlying node connect, or supporting library, searches for the main.css within that base .tmp directory,  when it should be looking fot it in the options.staging designated path of target/grunt. Moving the .tmp back to the base directory, out of the target/grunt, resolves the issue of the main.css being missing during local testing. See steps to duplicate issue in MH-12981  (cross verified by @lkiesow and @gregorydlogan ).
I tested that the main.css is found in local testing and also when deployed from admin-ui jar.

@karendolan Now I'm somewhat confused: I've just had a look at this PR and testing revealed that this PR does break the Admin UI development environment.
Reproduction:

Build and start this PR
cd modules/admin-ui/
grunt proxy --proxy.host=http://localhost:8080 --proxy.username=opencast_system_account --proxy.password=CHANGE

Problem:
The webapp under localhost:9000 does not receive any data anymore from the backend.
But how is it supposed to "fix for local admin-ui develop" then?

@staubesv Thank you for that clues about the proxy test. I've been using the local and raw "grunt serve" with no proxy back. Running the local "grunt serve" is not able to find the CSS  when it is not in the base .tmp directory.
I will continue investigating with "grunt proxy".

@karendolan Oh... sorry, haven't checked grunt serve. That should, of course, work too.

@staubesv  The rogue ".tmp" I kept missing was in the /modules/admin-ui/lib/staticMiddleware.js. Changing that to match the new .tmp location everwhere else solved the "grunt serve" css issue. I had focused on the proxyMiddleware.js, thinking I was the driver for watched files. Now I know more about "grunt proxy". I'm force pushing the change in this pull to just change that one line in the staticMiddleware.js.
This CSS dir issue is not likely to be be the problem of getting data from the proxy. I wonder if the json reponse type was passed through in the header of the response, instead of being blanked out, if it would help the browser accept it.
When doing the "grunt proxy", I'm getting a lot of "XML Parsing Error: not well-formed
Location: http://localhost:9000/admin-ng/event/events.json?filter=status:EVENTS.EVENTS.STATUS.PROCESSED&limit=1"
But that link returns well formed JSON:
{
"total": 4,
"offset": 0,
"count": 1,
"limit": 1,
"results": [{ ....
Is this the same error you are seeing today with your "grunt proxy"?

@staubesv I tested the new change of just fixing the path in staticMiddleware with "grunt serve", "grunt proxy" and deployed admin-ui. All find the css :)
Also the "grunt proxy" is getting data from the proxy server. That XML parse error in the console logs was not why the data was not coming.

@karendolan Thanks! Sorry for not spotting this error when doing the review of @JulianKniephoff's pull requests...

is finally back from vacation
And sorry from me for causing this chaos, I guess? x)


bug: resource name is conflicting with folder and opening netrw

@mosheavni finally figured it out, when we have the same resource name in the view and there is a folder with the same name, we open netrw instead apparently 😅

Any way to reproduce? I have not stumbled upon this

create a folder named services, then open kubectl.nvim and go to services view should open netrw instead, maybe you have it disabled though (netrw that is)?

yeah, I couldn't reproduce without turning on netrw


[ISSUE] workspaceClient.Users.ListAll hangs if no StartIndex & TotalResults are returned

Observed in 0.26.1 that if I'm using the following fixture in test:
	userListIdUsernameFixture = qa.HTTPFixture{
		Method:   "GET",
		Resource: "/api/2.0/preview/scim/v2/Users?attributes=id%2CuserName&count=100&startIndex=1",
		Response: iam.ListUsersResponse{
			Resources: []iam.User{
				{
					Id:       "id",
					UserName<EMAIL_ADDRESS>				},
			},
		},
		ReuseRequest: true,
	}

then workspaceClient.Users.ListAll hangs
It was found in the context of https://github.com/databricks/terraform-provider-databricks/pull/2980

FYI: in the TF repo, I added https://github.com/databricks/terraform-provider-databricks/blob/master/qa/scim_fixtures.go to help set up fixtures more easily for TF.
Separately, in https://github.com/databricks/databricks-sdk-go/commit/b3cdc973d681e848158d2712a0dd18f3933f2e6c, we added support for higher-level mocking of the WorkspaceClient. Now you can just mock the SDK calls rather than the underlying requests on the network, which should make testing with the WorkspaceClient easier.


Remove branch pruning

Hmm, even with this branch I'm still getting the same "JUMPI  hiccups" with this example. Run as:
$MYTH -v5 a SymbolicArbitrage.sol --disable-dependency-pruning

Will soon stop at some JUMPI for ~10 seconds:
mythril.laser.ethereum.instructions [DEBUG]: Evaluating JUMPI at 1286

^^ now it's blazing fast :)


Transformer dev

This PR adds the Data dumps + Scripts for translating and dumping the inference order in the format required for the Android Backend.

Bumping this to the top to request the merge! User Study code is included in this branch as well.


ImportError: cannot import name 'Instance' from 'wasmer'

I'm totally new to wasmer and python but I need to use them anyway.
So I installed python-ext-wasm using "pip3 install wasmer" on macOs and CentOs
I'm using python 3.6 on both
when I try to run my code I get this error :
ImportError: cannot import name 'Instance' from 'wasmer'

Can you post here the code you are using so we can debug further?

This is the whole code :
`from wasmer import Instance
Get the Wasm module as bytes.
wasm_bytes = open('hash.wasm', 'rb').read()
Instantiate the Wasm module.
t = Instance(wasm_bytes)
stringToHash = 'abcd'
strLength = len(stringToHash)
pointer = t.b(strLength)
memory8 = instance.memory.uint8_view()
put to memory
step = 0
for char in stringToHash :
memory8[pointer + step] = ord(char)
step += 1
t.d(8, pointer, strLength)
memory32 = instance.memory.int32_view()
pointer2 = memory32[2]
len2 = memory32[3]
result = bytes(memory8[pointer2:pointer2+len2]).decode()
print(result)`
and this is the error I get :
Traceback (most recent call last):   File "wasmer.py", line 1, in <module>     from wasmer import Instance   File "/wasmer.py", line 1, in <module>     from wasmer import Instance ImportError: cannot import name 'Instance' from 'wasmer'

The problem is, that your file is called wasmer.py.
Since you are running:
from wasmer import Instance

and your file is called wasmer.py, python tries to import Instance from this particular file.
fix
Just rename your file wasmer.py (e.g. hash.py) and it should work.
This problem isn't related to the wasmer library, but is just normal python import confusion :sweat_smile:

Thank you so much,
As I mentioned earlier I'm new to python and I didn't know that.


fix: generated workflows include wrong path for reusable workflow

Description
When generating a publishable plugin, the generated workflows for the platform implementations are wrong.
Steps To Reproduce

Generate a publishable plugin
Open a generated workflow under .github/workflows/generated_plugin_<platform>.yaml
Panaworkflow will look like:

pana:
    uses: VeryGoodOpenSource/very_good_workflows/brick/__brick__/generated_plugin/.github/workflows/pana.yml@v1

Expected Behavior
When it should be:
pana:
    uses: VeryGoodOpenSource/very_good_workflows/.github/workflows/pana.yml@v1

The proposed solution breaks the generator


fix memory issue of tx remark

fix memory issue of tx remark
fix issue of deadlock detector

@sgaragagghu
Fixed one issue of deadlock detector. You can try it.

Isn't this PR a duplicate for https://github.com/XDagger/xdag/pull/333 ?


Stylized avatar experiments

We might try to get alternate avatar styles done, along the lines of https://blueasis.booth.pm/items/3086834.
This is a different style than vroid but the two seem generally compatible.

Will be open to commission soon, I think the style fits the rogue or engineer character the most, lets pick one to start with. Need to synthesize these ideas together from references to come up concept art. Other thread for character art: https://github.com/webaverse/app/issues/1346
Engineer

baggy pants

Rogue

Old timey clothes
Hair: messy, per both this avatar and pinterest examples

It is probably a sign of good characters that I disagree, and IMO the drop hunter fits best 👍.
I’m down for trying any/all of them though. Gj on the reference images.

I've dabbled in similar, but not exact styling in some older commission works. This stuff is a bit more borderlands-esque than outright toon.
https://www.artstation.com/artwork/0n8ZNe

It can be done with VRoid bodies and pretty much any content input for the most part, but it's pretty dependent on having a set design first, as it's effectively psuedo-handpainting.
I made a couple of custom filters for processing content in this manner, since there was a request for 'less-painterly' styled textures as well as the ones shown here.
Shader and texture formats are pretty key for this kind of content, but there is a happy medium between full painterly / handdrawn style and traditional PBR sets.

Octuplex is really good at the outline / cartoon style and can probably do that kind of touch up for anything we make.
For example (yes this is a 3d model / avatar) https://twitter.com/Octuplex/status/1359230496132243456

I believe they rely on (very well executed!) inverted hull technique for the outlines, but you'd need to confirm it (as it's a pretty large increase in polycount, effectively doubling it in most cases)
They are very good at the toon styling though, yes.