node-gyp rebuild not downloading libvips

I am trying to deploy a meteor app onto machine running Ubuntu Server 16.04 and am running into an issue.  When the meteor install script calls:  node-gyp rebuild on sharp it appears that the libvips binaries are not being downloaded and linked... I get:
dan@blackbox ~/d/d/b/p/server> npm install --production
><EMAIL_ADDRESS>install /home/dan/deployed/dbms/bundle/programs/server
> node npm-rebuild.js

><EMAIL_ADDRESS>install /home/dan/deployed/dbms/bundle/programs/server/npm/node_modules/sharp
> node-gyp rebuild

make: Entering directory '/home/dan/deployed/dbms/bundle/programs/server/npm/node_modules/sharp/build'
  TOUCH Release/obj.target/libvips-cpp.stamp
  CXX(target) Release/obj.target/sharp/src/common.o
  CXX(target) Release/obj.target/sharp/src/metadata.o
  CXX(target) Release/obj.target/sharp/src/operations.o
  CXX(target) Release/obj.target/sharp/src/pipeline.o
  CXX(target) Release/obj.target/sharp/src/sharp.o
  CXX(target) Release/obj.target/sharp/src/utilities.o
  SOLINK_MODULE(target) Release/obj.target/sharp.node
g++: error: ../lib/libvips-cpp.so: No such file or directory
g++: error: ../lib/libvips.so: No such file or directory
g++: error: ../lib/libglib-2.0.so: No such file or directory
g++: error: ../lib/libgobject-2.0.so: No such file or directory
g++: error: ../lib/libcairo.so: No such file or directory
g++: error: ../lib/libcroco-0.6.so: No such file or directory
g++: error: ../lib/libexif.so: No such file or directory
g++: error: ../lib/libffi.so: No such file or directory
g++: error: ../lib/libfontconfig.so: No such file or directory
g++: error: ../lib/libfreetype.so: No such file or directory
g++: error: ../lib/libgdk_pixbuf-2.0.so: No such file or directory
g++: error: ../lib/libgif.so: No such file or directory
g++: error: ../lib/libgio-2.0.so: No such file or directory
g++: error: ../lib/libgmodule-2.0.so: No such file or directory
g++: error: ../lib/libgsf-1.so: No such file or directory
g++: error: ../lib/libgthread-2.0.so: No such file or directory
g++: error: ../lib/libharfbuzz.so: No such file or directory
g++: error: ../lib/libjpeg.so: No such file or directory
g++: error: ../lib/liblcms2.so: No such file or directory
g++: error: ../lib/liborc-0.4.so: No such file or directory
g++: error: ../lib/libpango-1.0.so: No such file or directory
g++: error: ../lib/libpangocairo-1.0.so: No such file or directory
g++: error: ../lib/libpangoft2-1.0.so: No such file or directory
g++: error: ../lib/libpixman-1.so: No such file or directory
g++: error: ../lib/libpng.so: No such file or directory
g++: error: ../lib/librsvg-2.so: No such file or directory
g++: error: ../lib/libtiff.so: No such file or directory
g++: error: ../lib/libwebp.so: No such file or directory
g++: error: ../lib/libxml2.so: No such file or directory
g++: error: ../lib/libz.so: No such file or directory
sharp.target.mk:181: recipe for target 'Release/obj.target/sharp.node' failed
make: *** [Release/obj.target/sharp.node] Error 1
make: Leaving directory '/home/dan/deployed/dbms/bundle/programs/server/npm/node_modules/sharp/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:276:23)
gyp ERR! stack     at emitTwo (events.js:87:13)
gyp ERR! stack     at ChildProcess.emit (events.js:172:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Linux 4.4.0-34-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /home/dan/deployed/dbms/bundle/programs/server/npm/node_modules/sharp
gyp ERR! node -v v4.5.0
gyp ERR! node-gyp -v v3.4.0
gyp ERR! not ok

npm ERR! Linux 4.4.0-34-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "rebuild" "--no-bin-links" "--update-binary"
npm ERR! node v4.5.0
npm ERR! npm  v3.10.7
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 sharp 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 sharp
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls sharp
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/dan/deployed/dbms/bundle/programs/server/npm/npm-debug.log

npm WARN<EMAIL_ADDRESS>No description
npm WARN<EMAIL_ADDRESS>No repository field.
npm WARN<EMAIL_ADDRESS>No license field.
npm ERR! Linux 4.4.0-34-generic
npm ERR! argv "/usr/bin/nodejs" "/usr/bin/npm" "install" "--production"
npm ERR! node v4.5.0
npm ERR! npm  v3.10.7
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>install: `node npm-rebuild.js`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script 'node npm-rebuild.js'.
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 meteor-dev-bundle package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     node npm-rebuild.js
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs meteor-dev-bundle
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls meteor-dev-bundle
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /home/dan/deployed/dbms/bundle/programs/server/npm-debug.log

There is actually a warning that I didn't see before (because I was running it with a shell script), the first lines of output are:
(node) warning: possible EventEmitter memory leak detected. 11 error listeners added. Use emitter.setMaxListeners() to increase limit.
Trace
    at TLSSocket.addListener (events.js:239:17)
    at TLSSocket.Readable.on (_stream_readable.js:680:33)
    at Request.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-registry-client/lib/request.js:153:7)
    at emitOne (events.js:77:13)
    at Request.emit (events.js:169:7)
    at ClientRequest.<anonymous> (/usr/lib/node_modules/npm/node_modules/request/request.js:791:10)
    at emitOne (events.js:82:20)
    at ClientRequest.emit (events.js:169:7)
    at tickOnSocket (_http_client.js:523:7)
    at onSocketNT (_http_client.js:535:5)

it seems like the request package is not downloading the binaries because of node blocking the addition of more event listeners... not sure if this is a sharp or meteor issue...

I am 95% sure this is an issue with the Meteor build tool, so I started an issue over there and am closing this one. If we end up with a resolution relevant to this project, I will share it with you. Thanks!

Got the exact same error, but without the "EventEmitter memory leak" warning. So i guess its not a meteor related issue. I only get the libvips-error when i deploy from my macbook. When i deploy from a ubuntu 16.04 everything deploys fine.

"I only get the libvips-error when i deploy from my macbook"

@ogermann Please can you create a new issue for this with npm install --verbose logs.


Implement M_ST_NA and M_ST_TB types

Is your feature request related to a problem? Please describe.
M_ST_NA and M_ST_TB types are not supported by the south service (and the bit OV).
Describe the solution you'd like
The south service must manage M_ST_NA and M_ST_TB types.

Type support seems to be present since https://github.com/fledge-power/fledge-south-iec104/commit/b71a360ff422599e07a0834307b564229622a4e2, tested and working with latest develop version.

The OV bit is not supported for these types

New test with latest develop version:

Message is transmitted to center.
Bit OV is set properly.
Value is not forwarded properly.


indent with rollup config with tabs

I think there are a few more, but you'd catch that quickly if you use eslint and then use --fix

Coverage remained the same at 100.0% when pulling ad9d811994c9098f31eb2f10be31ecc33ed03eec on Haroenv:patch-2 into 251a6792cfbed3ef269517969be7ba4306de3909 on micromata:master.

👍


Can't create app

Can't generate new app.
➜  dev ruby -v
ruby 2.4.0p0 (2016-12-24 revision 57164) [x86_64-darwin15]
➜  dev rbenv global 2.4.0
➜  dev rbenv global 2.4.0
➜  dev gem install suspenders
Successfully installed suspenders-1.44.0
1 gem installed
➜  dev suspenders suspenders ez_api \
  --heroku true \
  --heroku-flags "--region eu --addons sendgrid"
/usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/specification.rb:2278:in `check_version_conflict': can't activate activesupport-5.1.2, already activated activesupport-5.0.4 (Gem::LoadError)
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/specification.rb:1404:in `activate'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:89:in `block in require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:88:in `each'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:88:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/concurrent-ruby-1.0.5/lib/concurrent.rb:15:in `<top (required)>'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.4/lib/active_support/logger_silence.rb:3:in `<top (required)>'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.4/lib/active_support/logger.rb:1:in `<top (required)>'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/activesupport-5.0.4/lib/active_support.rb:27:in `<top (required)>'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/railties-5.0.4/lib/rails/generators.rb:6:in `<top (required)>'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/suspenders-1.44.0/lib/suspenders/generators/app_generator.rb:1:in `<top (required)>'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/suspenders-1.44.0/lib/suspenders.rb:2:in `<top (required)>'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/2.4.0/rubygems/core_ext/kernel_require.rb:68:in `require'
	from /usr/local/opt/rbenv/versions/2.4.0/lib/ruby/gems/2.4.0/gems/suspenders-1.44.0/bin/suspenders:7:in `<top (required)>'
	from /usr/local/opt/rbenv/versions/2.4.0/bin/suspenders:22:in `load'
	from /usr/local/opt/rbenv/versions/2.4.0/bin/suspenders:22:in `<main>'

gem cleanup solved it


Interacting with a model

How would you interact with a model (model-view-presenter) using the RxPresenter with nucleus?
Say you just have some static hardcoded data. Would you just create a new model object to access the data? What is the best practice here?

Hi, what does "static hardcoded" mean? If it is just static java data structure then just show it, you don't need MVP to show a constant. :)

I'm asking what would be best practice. By "hardcoded" I just mean I have some variables i've entered manually with data, eg. int[] values = {1, 2, 3}. But lets pretend the data in the model might change. How should this model be interacted with?
In your nucleus example, you do something like this:
App.getServerAPI()
                        .getItems(name.split("\\s+")[0], name.split("\\s+")[1])
                        .observeOn(AndroidSchedulers.mainThread())

You call a static method on the "App" class to get your data. This obviously isnt what would normally be done in a real application.
Hope that made sense, let me know otherwise.

Normally I inject data accessing objects (network interfaces, database interfaces) into presenters with Dagger. Such interfaces normally provide rx.Observable results so I can chain them into restartableXYZ method.
Whenever I need to show some data I call presenter to give me that data. Everything is like in the example except instead of App.getServerAPI() I use an injected interface.

Ok, that makes sense. Does nucleus provide any sort of convenience for hooking up the model layer? As in, I can hook up my Presenter to my View using:
public class MyPresenter extends RxPresenter<MyFragment>

and then let the view access the presenter by doing:
@RequiresPresenter(MyPresenter.class)
public class MyFragment extends NucleusFragment<MyPresenter>

Is there anything cooked into Nucleus to interact with the Model layer in a similar way?

Model layer is normally hooked with Dagger injections. https://github.com/konmik/konmik.github.io/wiki/Snorkeling-with-Dagger-2
You just write something like: Observable<Contact> Database.selectAllContacts(), inject the Database interface into a presenter, and the job is done!

Ah cool! Thanks for the help, ill give that a thorough read.
Closed.


Make sync status more informative

For network sync user is able to push sync button whenever they want but there is no feedback for user about syncing being possible in 1 minute intervals.
Suggestion: Add feedback, like "already synced" or "next sync in 40 seconds" or something similar.

I don't think we need this with automatic updates.


Add chosen options units tests

add jasmine-matchers package
create chosen select helper
move test support files into support folder
update naming convention for spec files for cleaner filename matching
add case converter filter for test support

@leocaseiro added more unit tests and updated the testing configuration a little bit, let me know if you'd like anything changed up!

Hi @kfarst, first of all, many many thanks for this amazing contribution.
I loved the chosenSelectHelper.js
I was wondering if you could help my issue. I had to add a $timeout to fix the issue #176, however, it has broken 17 tests which is not nice...
Is there a way to go way with that in the tests or my fix is not the best one?
thanks
I have a branch for testing 176-ng-if-breaks-inherit-select-classes

@leocaseiro What error are you getting? When I checkout that branch and run tests I get the error
ReferenceError: Can't find variable: initOrUpdate
for almost all the broken tests, because the function was removed here. If that function was meant to be removed, you should probably remove any additional references to it first, then we can go from there :+1:

Hi @kfarst, thanks for your quick reply.
I actually made a biggest mistake while push the file.
I've updated now 4c262334b0e1117f28d. It shouldn't return any JS error, only some tests that are running before $timeout, so we get some values as empty or undefined.

@kfarst I've wrapped all it in $timeout and it actually works. 57c3ab67ea55
I'm happy to refactor in a better way if you have some ideas.

@leocaseiro see https://github.com/leocaseiro/angular-chosen/pull/184


Is there something like TypeScripts playground ?

Is there something like TypeScript Playground ? It is very helpful to see the inferred types there.

Going to add inferred type signatures here http://tryflow.org/ in next few days along with other features

If you are still interested:

tryflow is the coolest! @rogergl can this issue be closed now?

Yes it can be closed.

Cool. @rogergl, you can close it, but I can't. :)


Nats kafka trial

Codecov Report

Merging #1 into master will decrease coverage by 30.84%.
The diff coverage is 6.89%.

@@              Coverage Diff              @@
##             master       #1       +/-   ##
=============================================
- Coverage     68.38%   37.54%   -30.85%
- Complexity       58       60        +2
=============================================
  Files            21       32       +11
  Lines           155      293      +138
  Branches          4       10        +6
=============================================
+ Hits            106      110        +4
- Misses           46      180      +134
  Partials          3        3

Impacted Files
Coverage Δ
Complexity Δ

...oush/jutils/utils/netty/NettyHttpErrorAdapter.java
100% <ø> (ø)
3 <0> (ø)
:arrow_down:

...java/com/marmoush/jutils/utils/file/FileUtils.java
100% <ø> (ø)
6 <0> (ø)
:arrow_down:

...jutils/adapter/msgbus/kafka/KafkaMsgPublisher.java
0% <0%> (ø)
0 <0> (?)

...sh/jutils/adapter/msgbus/Nats/NatsMsgConsumer.java
0% <0%> (ø)
0 <0> (?)

...h/jutils/adapter/msgbus/Nats/NatsMsgPublisher.java
0% <0%> (ø)
0 <0> (?)

...ls/adapter/msgbus/memory/InMemoryMsgPublisher.java
0% <0%> (ø)
0 <0> (?)

...moush/jutils/domain/value/msg/PublishResponse.java
0% <0%> (ø)
0 <0> (?)

...java/com/marmoush/jutils/domain/value/msg/Msg.java
0% <0%> (ø)
0 <0> (?)

.../jutils/adapter/msgbus/kafka/KafkaMsgConsumer.java
0% <0%> (ø)
0 <0> (?)

...ush/jutils/adapter/msgbus/Nats/NatsConnection.java
0% <0%> (ø)
0 <0> (?)

... and 16 more

Continue to review full report at Codecov.

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


fix rest service deployer serializable error

What is the purpose of the change
fix rest service deployer serializable error
Brief changelog
#12840
Verifying this change
@AlbumenJ

Checklist

[x] Make sure there is a GitHub_issue field for the change (usually before you start working on it). Trivial changes like typos do not require a GitHub issue. Your pull request should address just this issue, without pulling in other changes - one PR resolves one issue.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Check if is necessary to patch to Dubbo 3 if you are work on Dubbo 2.7
[ ] Write necessary unit-test to verify your logic correction, more mock a little better when cross module dependency exist. If the new feature or significant change is committed, please remember to add sample in dubbo samples project.
[ ] Add some description to dubbo-website project if you are requesting to add a feature.
[ ] GitHub Actions works fine on your own branch.
[ ] If this contribution is large, please follow the Software Donation Guide.

Codecov Report

Merging #12889 (d9d73c8) into 3.2 (5f4d30f) will increase coverage by 0.69%.
The diff coverage is n/a.

@@              Coverage Diff              @@
##                3.2   #12889       +/-   ##
=============================================
+ Coverage     68.76%   69.45%    +0.69%
+ Complexity      318        2      -316
=============================================
  Files          3657     1648     -2009
  Lines        170964    68375   -102589
  Branches      28312     9988    -18324
=============================================
- Hits         117567    47492    -70075
+ Misses        43253    16305    -26948
+ Partials      10144     4578     -5566

see 2043 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


REQUEST: New membership for weilaaa

GitHub Username
weilaaa
Requirements

[X] I have reviewed the community membership guidelines
[X] I have enabled 2FA on my GitHub account
[X] I have subscribed to the Karmada mailing list
[x] I am actively contributing to 1 or more Karmada subprojects
[ ] I have two sponsors that meet the sponsor requirements listed in the community membership guidelines
[ ] I have spoken to my sponsors ahead of this application, and they have agreed to sponsor my application
[ ] I have verified that my sponsors are from different member companies
[ ] I have verified that my sponsors are a reviewer or an approver in at least one OWNERS file within one of the Karmada GitHub organizations

Sponsor 1
@RainbowMango
Sponsor 2
@pigletfly
List of contributions to the Karmada project
List of contributions to the Karmada project
PRs authored:
https://github.com/karmada-io/karmada/pull/582
https://github.com/karmada-io/karmada/pull/586
https://github.com/karmada-io/karmada/pull/1224
https://github.com/karmada-io/karmada/pull/2311

@kevin-wangzefeng RainbowMango

/assign @kevin-wangzefeng @RainbowMango

+1
Thanks @weilaaa for all your contribution.
I remember that @weilaaa started contributing to this project at a very early stage.

Invitation sent, please visit https://github.com/karmada-io to confirm and join

/close


raise severity on config loop trigger to high

:+1: #1167 in stg ( @a13m also agreed with this change )


[EventHubs] Consumer should resume from last failed position when there is not checkpoint store

When there is no checkpoint store, in the eventhub processor, if a consumer fails and closed, a new consumer will be created, but it's still using the init position -- not the position where it failed.
This should be fixed.

The final decision is to resume from the checkpoint of an implicit in-memory checkpoint store if there is no checkpoint. Refer to issue #9226.


gert_token - Refresh Token missing

On expiration the get_token function gets an error:

(invalid_request) AADSTS900144: The request body must contain the following parameter: 'refresh_token'.

Appears the token doesn't carry this field at all? @jasonjoh

I'll take a look when I can, but that's not expected. There should be a refresh token. Are you including the offline_access scope in oauth_settings.yml?

Thanks for your reply Jason.
I actually managed to identify the issue as the url I was using so no action necessary (and apologies - i should've closed the request)
Cheers,
Craig.
P:<PHONE_NUMBER>
E<EMAIL_ADDRESS>W: www.swcompliance.com.au
On May 2, 2019, 05:24, at 05:24, Jason Johnston<EMAIL_ADDRESS>wrote:

I'll take a look when I can, but that's not expected. There should be a
refresh token. Are you including the offline_access scope in
oauth_settings.yml?
--
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/microsoftgraph/msgraph-training-pythondjangoapp/issues/10#issuecomment-488395841

No problem. Glad you got it sorted out.


Possibly outdated dependency information

I'm using a machine where I'm somewhat limited on what versions of packages I can use, but I should ostensibly be able to run sonnet. However, I'm running into a few issues and some of the documentation on the dependency requirements seem inconsistent or incorrect.
System details:
RedHat Enterprise Linux 7.6
CUDA 8.0
CUDNN 7.1
First, the README here states that tensorflow >= 1.5 is supported, but sonnet also requires tensorflow-probability >= 0.4.0. According to https://github.com/tensorflow/probability/releases, tensorflow-probability 0.4.0 is only tested and stable against tensorflow 1.11 and later versions of tensorflow-probability only seem to support more recent versions of tensorflow as well. This seems to imply that tensorflow >= 1.11 is required. I was hoping to be able to run sonnet with tensorflow 1.8.0 but I'm no longer sure if this is possible.
Second, I tried running sonnet with tensorflow 1.12.0 (gpu version) and tensorflow-probability 0.5.0, but I run into this error upon import:
>>> import sonnet as snt
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "sonnet/__init__.py", line 68, in <module>
    from sonnet.python.modules import nets
  File "sonnet/python/modules/nets/__init__.py", line 22, in <module>
    from sonnet.python.modules.nets.alexnet import AlexNet
  File "sonnet/python/modules/nets/alexnet.py", line 37, in <module>
    from sonnet.python.modules import base
  File "sonnet/python/modules/base.py", line 37, in <module>
    from sonnet.python.modules import base_info
  File "sonnet/python/modules/base_info.py", line 24, in <module>
    from sonnet.protos import module_pb2
ImportError: cannot import name module_pb2

Finally, when sonnet cannot find a version of tensorflow-probability >= 0.4.0, it says
SystemError: Sonnet requires tensorflow_probability (minimum version 0.4.0) to be installed. If using pip, run `pip install tensorflow-probability` or `pip install tensorflow-probability-gpu`

However, tensorflow-probability-gpu doesn't exist anymore starting from tensorflow-probability 0.5.0. I believe the only difference between the cpu and gpu versions was just which version of tensorflow it depended on and they simply removed the dependency in 0.5.0. pip install tensorflow-probability should work fine, although if a user wants 0.4.0, then it will also install cpu tensorflow alongside it - this doesn't happen with >= 0.5.0.
I'd appreciate some clarity on how to work around the first two issues - the third one seems like it should just be an easy change to the error message. Thanks!

Re 1), we only ensure the library runs with the latest public stable version of TF (and TFP). If you want to use an old version like TF 1.8.0 your best bet is probably going back through sonnet versions to find one that we pushed around that time. All the version dates are in CHANGES.md, and there should be a corresponding git tag, so this shouldn't be a problem. If you really want the latest Sonnet (bear in mind going to our old versions may reintroduce bugs we have now fixed, change interfaces such that code you write then doesn't work on latest version, etc) and you are hard-limited by needing to use an old TF, then you will still probably be able to use some subset of the library, although you might need to comment out various things in Sonnet to get it to import.
I would strongly recommend not doing this if you're doing real work that matters, as there are just too many things at play to predict how well it will work. We have extensive automated testing which exercises current Sonnet and current TF, but you would effectively be using a completely untested configuration, and anything could happen. If you really can't modify your environment to install up to date TF, then an old Sonnet version is better.
You're right that the dependency information is somewhat out of date, and there are different numbers in different places. I believe that we currently require TF >= 1.13 - I'll fix the places that say otherwise.

How did you do the install here? pip install dm-sonnet, or did you just clone the github repo?

Indeed, we should change the error message to not mention tensorflow-probability-gpu. Thanks for the report, will be fixed in our next version.

Thanks for your response! I was able to figure out how to get more updated versions of everything and it seems like the library is working fine now.
For 2), I had installed via pip install dm-sonnet but I suspect that something went wrong in the course of me uninstalling and reinstalling various versions of tensorflow and tensorflow-probability while debugging earlier - I reinstalled everything on a clean environment and it worked fine.


feat: supports isolating bookmarks based on git or cwd project

You can create new bookmark list for specific git or cwd.
If you want switch/create to that specific list automatically, you may need try to write auto-cmd. We don't have it right now


[feature] Knowing the user general location without asking for permission.

A nice feature to have in this class is the ability to identify the user general location (country) without asking for permission. Something like a desiredAccuracy of INTULocationAccuracyCountry. This can be done in a number of ways but the best I can think of is to use something like http://www.iplocationtools.com/ or any other free service that offers to translate an IP address to a country. (And of course without using Core Location)
Services like Spotify etc' that are country based always using something like that in order to know the user location without asking for permission.

I disagree. I mean, if user doesn't give you permission for location, well, it's because he doesn't want to located. Why do you want to bypass his/her decision?

Do you think that google analitycs doesn't geocode your ip address? :)

The library is basically an API for Apple's SDK. Not sure how getting the location through geocoding has anything to do with this.

+1

@Ricardo1980 In our app we need at least knowing user's timezone in order to provide time related service.

@callzhang Timezone and location are 2 different things. And you can get time zone always you want, you don't have to ask for permission. http://stackoverflow.com/questions/19186666/get-timezone-country-from-iphone

If you already use Google Maps, you can accomplish this by piggybacking off of their myLocation property on the map view class.

This is probably something that will never get implemented for INTULocationManager. As @iwasrobbed suggested, there are other ways to accomplish this. Thanks for the suggestion.

Hello, How are you????


Add option to disable sample display limits.

Implements feature (1) from this issue #82

thanks!


Crash on merging multiple duplicate mentions

The attached test case results in the following traceback:
$ python3 scorer.py dups.key.txt dups.response.txt
A single mention cannot be assigned to more than one cluster
The following clusters will be merged: [0, 1, 2]
A single mention cannot be assigned to more than one cluster
The following clusters will be merged: [1, 2]
Merging [0, 1, 2] clusters
Merging [1, 2] clusters
Traceback (most recent call last):
  File "scorer.py", line 65, in <module>
    main()
  File "scorer.py", line 42, in main
    evaluate(key_file, sys_file, metrics, NP_only, remove_nested, keep_singletons)
  File "scorer.py", line 46, in evaluate
    doc_coref_infos = reader.get_coref_infos(key_file, sys_file, NP_only, remove_nested, keep_singletons)
  File "[...]/coval/conll/reader.py", line 387, in get_coref_infos
    sys_clusters, singletons_num  = get_doc_mentions(doc, sys_doc_lines[doc], keep_singletons)
  File "[...]/coval/conll/reader.py", line 70, in get_doc_mentions
    merged.extend(clusters[c])
KeyError: 1

What I suppose is happening is that after the first occurrence of the duplicate mentions, they have been merged, and cannot be merged again on the second occurrence.
dups.response.txt
dups.key.txt

Thanks for reporting the issue.
I am going to update the scorer with a new option and I will also fix this.


npm serve --o problem

I back to my project after two weeks and I get this after I try to open my project.
any helps??
module.js:538
throw err;
^
Error: Cannot find module 'rxjs/add/operator/map'
at Function.Module._resolveFilename (module.js:536:15)
at Function.Module._load (module.js:466:25)
at Module.require (module.js:579:17)
at require (internal/module.js:11:18)
at Object. (C:\Users\itay\Desktop\quickstart\node_modules@angular-devkit\core\src\logger\indent
.js:10:1)
at Module._compile (module.js:635:30)
at Object.Module._extensions..js (module.js:646:10)
at Module.load (module.js:554:32)
at tryModuleLoad (module.js:497:12)
at Function.Module._load (module.js:489:3)

you mean ng serve ? can you please run npm install  again (remove package.lock/node_modules folder) before

Yeah I think this is a install problem like @istiti mentioned. Running those steps should help.

Closing as no feedback provided


add ext (balanced) stream quality  option

add ext stream option to enable live stream from ext stream.
this fixes my issue:
https://github.com/fwestenberg/reolink_dev/issues/242#issuecomment-949980778
I use camera hooked to a NVR:

NVR

Model
RLN8-410

Build No.
build 21101146

Hardware No.
N3MB01

Config Version
v<IP_ADDRESS>

Firmware Version
v<IP_ADDRESS>_21101146

Camera

Model
RLC-820A

Firmware version
v<IP_ADDRESS>4

reconfiguring the integration with ext stream and h264 codec + reloading the integrtion worked

Can you enlighten me to what the ext stream is?

apparently, it should refer to the so-called "balanced" stream.

main
clear

sub
fluent

ext
balanced

@rplevka where do those terms come from? Is it a Reolink thing or something else?

BTW, this fixes mine too.

https://support.reolink.com/hc/en-us/articles/360005238413-The-Difference-Between-Clear-Fluent-and-Balanced

Thanks!

Both h264 and h265 with ext and rtmp are working for me.

same here!


feat: make alloc optional

Currently the no_std support for the crate still depends on alloc. However, this is only required for Bytes and BytesMut data structures and not Buf and BufMut traits or its other impls. This PR makes alloc optional in order to make the crate more suitable for embedded environments.
The main benefit of this change is beeing able to depend only on the Buf and BufMut traits, which is very usefull not only to embedded environments, but also for other crates that would like to use those traits but don't need Bytes and BytesMut. I think this would be a good thing, since it encorages everyone to use bytes and reduce the number of parallel implementations of this same concept.
As an example usecase, rust-mavlink had to pretty much reimplement Buf and BufMut because they don't want a hard dependency on alloc.
This PR adds a alloc default feature that can be disabled if not required. However, maybe it would be better to add a embedded or no_alloc feature instead, so that it doesn't break any code that depends on bytes. Please let me know what you think of this change.

Sorry, but this is a breaking change. Code that previously compiled with no features enabled would break. Unfortunately, we also cannot add a no_alloc feature because features must be additive.

Oh, I see. Would it be possible to maybe create a different crate (say we name it bytes-buf) that has only the Buf and BufMut traits implemented for builtin rust types? This new crate would have an alloc feature. Then bytes could depend on bytes-buf with the alloc feature and reexport the traits. Just an idea, don't konw if it's too much of a hassle.

See https://github.com/tokio-rs/bytes/issues/479  for previous discussions.

Can we finally get that in? Every year I'm starting a new project that would benefit from using bytes in  no_std & no_alloc environment.
From https://github.com/tokio-rs/bytes/issues/479#issuecomment-778177512

The main problem is that we recently released v1 and don't want to release v2 right away.

I would assume that more than 3 years after v1 release we can allow a major update that would allow more people to finally use this lib.

The only possible way that this is happening is that we accept the minor breakage. We will not make a bytes v2.

So what's your opinion on that, in regard to https://github.com/tokio-rs/bytes/pull/480#issuecomment-2175680666 ?
I've started modifying the lib I needed to use byte instead but the difference in usage might not be a good fit for any library currently using bytes.

I do not really know how many libraries out there specify default-features = false for bytes. It's hard to say whether it's acceptable without knowing that.

Sorry, I failed to respond to this. We already have std as a default feature, so it's extremely likely that there are users of default-features = false out there. So that solution is not possible.


fixes #707

:loudspeaker: Type of change

[x] Bugfix
[ ] New feature
[ ] Enhancement
[ ] Refactoring

:scroll: Description

Fixes #707 based on suggested fix
:bulb: Motivation and Context

#707
:green_heart: How did you test it?
Added a test case
:pencil: Checklist

[ ] I reviewed submitted code
[x] I added tests to verify changes
[ ] I updated reference documentation to reflect the change
[ ] All tests passing
[x] No breaking changes

:crystal_ball: Next steps

Sorry took a bit long to open this, I was busy

@xiurobert I pushed some test fixes and refactorings. Also, had to bump Localstack to 1.4.0 for proper handling of FIFO topics.
Would you like to add your name in @author javadocs in the classes you modified?

Are the tests working? I'm not too bothered about the @author thing.

@xiurobert yes after some changes tests are working


Window reloads when adding or removing folder from workspace.

VSCode Version: 1.44.2
Local OS Version: Windows 10, Version 1909 (OS Build 18363.778)
Remote OS Version: Ubuntu 19.10
Remote Extension/Connection Type: SSH

Steps to Reproduce:

Connect to SSH host, open terminal.
Make two directories: project1, project2
Type code project1 - A new VSCode window will open in that folder.
Add Folder to Workspace... -> project2 - VSCode will reload.

Does this issue occur when you try this locally?: No
Does this issue occur when you try this locally and all extensions are disabled?: No
This is a larger problem than the reload itself. If you're working on multiple projects, and they're running in the terminal, adding a folder and reloading will disconnect the terminals from the running processes. I have resorted to npx kill-code to kill those background instances.

@bpasero I think this is still expected. Can't find the original issue though.

duplicate of https://github.com/microsoft/vscode/issues/72529


doc: Troubleshooting - extra reason for Token Exchange Refused

Extra reason for Token Exchange Refused.
Summary
I hit the Token Exchange Refused error when trying to login. The cause was not either of the two reasons already listed.
Screenshots
None.
Changes
One-liner.
Notes for Reviewers
It cost me more than an hour to figure this out. I want to save time for the next person.
Checklist

[ ] Scope: The referenced issue is addressed, there are no unrelated changes.
[ ] Run Locally: Verified that the docs build using make server, posted screenshots, verified external links. Test with HUGO_PARAMS_SEARCH_ENABLED=true if style changes will affect the search bar.
[ ] New Features Marked: Documentation for new features is marked using the new-in-version shortcode, according to the guidelines in CONTRIBUTING.
[ ] Style Guidelines: Documentation obeys style guidelines in CONTRIBUTING.
[ ] Commits: Commit messages follow guidelines in CONTRIBUTING, there are no fixup commits left.

@gregbreen thanks!


[Announcement] TestableHttpClient.NFluent is deprecated.

I started TestableHttpClient as a simple tool to test some code I wrote for work. At that time we used NFluent for our assertion library and it made sense to get a similar experience when using TestableHttpClient. One of the strong points of NFluent is the clear error messages when a test fails. By implementing TestableHttpClient.NFluent, I forced myself to get the same type of error messages and I made sure this was also available in TestableHttpClient.
Once I moved jobs, I no longer used NFluent and I have to say, I don't miss it and I get the feeling that needing to maintain TestableHttpClient.NFluent could become a burden, especially once the 3.0 version will be released.
Therefore I will stop maintaining TestableHttpClient.NFluent.
The last release will be the 0.8 release, but I will immediately mark it as deprecated on NuGet.
After the 0.8 release I will remove the source from this repository.

TestableHttpClient.NFluent has been moved to it's own repository at testablehttpclient/TestableHttpClient.NFluent


Rework Nix code

Before this cabal configure would fail in a pure environment.

Please review @aske

The PR includes some irrelevant commits that aren't in staging from main.


1.17 crash with geyser-fabric?

Not entirely sure what the issue is
https://mclo.gs/HrNa96I

yep, i got this too.

Please check issue #7 and see if the solution there is relevant.

Looks like #7 but Multicraft is cutting off the rest of the error.


Feature/wordpress pems 1

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

I have added the environment with backend-config and provider.tf


Aborting a download crashes meteor.

While using the .serve() method to serve a request stream, if a user aborts the download from the browser Meteor crashes on the server.
This is my code, used in the interceptDownload hook:
this.serve(http, fileRef, fileRef.versions[version], version, request({
  url: path,
  headers: headers
}));

When I cancel the download from the browser I get this error:
W20171201-20:45:10.943(1)? (STDERR) meteor://💻app/packages/ostrio_files.js:2112
W20171201-20:45:10.943(1)? (STDERR)             http.request.abort();
W20171201-20:45:10.944(1)? (STDERR)                          ^
W20171201-20:45:10.944(1)? (STDERR)
W20171201-20:45:10.944(1)? (STDERR) TypeError: http.request.abort is not a function
W20171201-20:45:10.944(1)? (STDERR)     at Request.stream.on.on (packages/ostrio:files/server.js:1769:24)
W20171201-20:45:10.944(1)? (STDERR)     at emitNone (events.js:105:13)
W20171201-20:45:10.945(1)? (STDERR)     at Request.emit (events.js:207:7)
W20171201-20:45:10.945(1)? (STDERR)     at Request.abort (/home/hotello/Projects/sciumegu-web/node_modules/request/request.js:1177:8)
W20171201-20:45:10.945(1)? (STDERR)     at ServerResponse.http.response.on (packages/ostrio:files/server.js:1744:18)
W20171201-20:45:10.945(1)? (STDERR)     at emitNone (events.js:110:20)
W20171201-20:45:10.945(1)? (STDERR)     at ServerResponse.emit (events.js:207:7)
W20171201-20:45:10.945(1)? (STDERR)     at Socket.onServerResponseClose (_http_server.js:153:44)
W20171201-20:45:10.946(1)? (STDERR)     at emitOne (events.js:120:20)
W20171201-20:45:10.946(1)? (STDERR)     at Socket.emit (events.js:210:7)

After further investigation I noticed that the http.request object is an instance of IncomingMessage. Node's documentation does not report a .abort() method for IncomingMessage, however a .destroy() method exists.
Can someone reproduce this, or am I doing something wrong?
I'm on Meteor 1.6 and Meteor-Files 1.9.1.

Hello @hotello ,
Thank you a lot. Good catch :)
Although we can not reproduce described case, we can confirm a mistake and http.request has no .abort() method.
Additional questions:

Where this issue appears? OS (Mac/Win/Linux)? Browser name and its version?

@hotello thank you for submitting this issue. Fix is delivered in v1.9.2, please update.
Let me know if issue is fixed on your end.

Thank you very much @dr-dimitru, now it is fixed!
I was getting the error both in Firefox v57 and Chromium v63, on Lubuntu 16.04. It did happen on Heroku also.

@hotello thank you for additional info, unfortunately we haven't reproduced issue in the way you have described it.
But we are happy to hear it is solved on your end :)
Please, support this project by:

Star on GitHub
Star on Atmosphere
Check other packages we have made
Share on Facebook and Twitter
Donate via PayPal


Show a friendly error message on publish failure

When trying to publish a taxon with the Publishing API sometimes this can fail. Rather than showing the user a 500 error, it seems like a good idea to show a slightly more useful error message while also recording the problem in Sentry for us to investigate.
This was found since Content Tagger relies on Publishing API to perform validation of base paths, and we will shortly be adding checks to make sure they are unique regardless of letter case which may affect users of the application.
Trello Card

This was found since Content Tagger relies on Publishing API to perform validation of base paths, and we will shortly be adding checks to make sure they are unique regardless of letter case which may affect users of the application.

This sounds fine in general.
On the specific point of base path validation, it seems odd to me that this would happen on publish, rather than when the content is updated (the PutContent command in the Publishing API)?

@cbaines I was surprised by that too, but I was able to reproduce the problem of seeing a scary 500 error in integration by creating a taxon with the same base path as another. I think the work on adding that validation in the Publishing API will work on moving the validation into put content.
Showing a (albeit only slightly) more useful error to the user still feels like a good thing to do though.


Converter job failed

job id KXbRws9Qg9xd9DKnLaKVWw
ran but failed after 1min and 5 unsuccessful attempts to retrieve the file, yet the admin page said it was successful
it would be good if it waited something like, 1min, 2min,5min,10min,30min between attempts

the image actually opens on CVL from that location, but maybe it's a different issue, such as the converter failing to convert the file?
Converting file /afm01/Q0/Q0703/Do_Not_Delete_Typical_Datasets_In_Out_Of_Portal/Dfly/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_Field_1/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_F0.ims
Copy /afm01/Q0/Q0703/Do_Not_Delete_Typical_Datasets_In_Out_Of_Portal/Dfly/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_Field_1/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_F0.ims to /scratch/imb/uqjspri1/148d8e13-9605-4925-ae1a-c10fb1c0aa79/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_Field_1
Metadata file: /afm01/Q0/Q0703/Do_Not_Delete_Typical_Datasets_In_Out_Of_Portal/Dfly/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_Field_1/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_F0_metadata.txt
Copy /afm01/Q0/Q0703/Do_Not_Delete_Typical_Datasets_In_Out_Of_Portal/Dfly/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_Field_1/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_F0_metadata.txt to /scratch/imb/uqjspri1/148d8e13-9605-4925-ae1a-c10fb1c0aa79/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_Field_1
File /afm01/Q0/Q0703/Do_Not_Delete_Typical_Datasets_In_Out_Of_Portal/Dfly/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_Field_1/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_F0_metadata.txt does not exist
|---- Recall attempt 1 failed
|---- Recall attempt 2 failed
|---- Recall attempt 3 failed
|---- Recall attempt 4 failed
---->Problem with file /afm01/Q0/Q0703/Do_Not_Delete_Typical_Datasets_In_Out_Of_Portal/Dfly/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_Field_1/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_F0.ims
----->Stopping preprocessing process here
Copy /scratch/imb/uqjspri1/e0f308f6-6f00-4dc4-885f-788c3b392a53 to /afm01/Q0/Q0703/Do_Not_Delete_Typical_Datasets_In_Out_Of_Portal/Dfly/NewFilename_2021-08-04_Simultaneous GFP-RFP 40um_08.20.05_Field_1/output_convert
Removing /scratch/imb/uqjspri1/148d8e13-9605-4925-ae1a-c10fb1c0aa79
Removing /scratch/imb/uqjspri1/e0f308f6-6f00-4dc4-885f-788c3b392a53

put on hold for now


WebAssembly global init_expr

It is not legal to initialize a global with a mutable global

This change is

@MikeHolman @arun-etm @Krovatkin @commonlisp Can you guys review this please

LGTM 👍


通过网络获取数据的示例报错

分时图运行是正常的，但K线部分报错：

[log] 更新日K数据，数据长度：1
[log] KChartDataSource notifyListeners rightmost
======== Exception caught by rendering library =====================================================
The following assertion was thrown during paint():
Rect argument contained a NaN value.
'dart:ui/painting.dart':
Failed assertion: line 26 pos 10: ''
The relevant error-causing widget was:
KChartWidget KChartWidget:file:///D:/AppGallery/GitHub/flutter_kline/example_network/lib/example_network/example_day_network_widget.dart:78:12
When the exception was thrown, this was the stack:
#2      _rectIsValid (dart:ui/painting.dart:26:10)
#3      _NativeCanvas.drawRect (dart:ui/painting.dart:5936:12)
#4      CandlestickPainter.paint (package:flutter_kline/painter/candlestick_painter.dart:30:12)
#5      CandlestickChartPainter.paint (package:flutter_kline/painter/candlestick_chart_painter.dart:56:9)
#6      CandlestickChart.paint (package:flutter_kline/chart/candlestick_chart.dart:37:7)
#7      ChartRenderer.paint (package:flutter_kline/renderer/chart_renderer.dart:80:12)
#8      RenderCustomPaint._paintWithPainter (package:flutter/src/rendering/custom_paint.dart:588:13)
#9      RenderCustomPaint.paint (package:flutter/src/rendering/custom_paint.dart:630:7)

很抱歉，很长一段时间估计都不会再维护网络示例，实在是不够精力，后续有时间精力也是慢慢迭代K线图的画线功能。


Improvements to package.json

First of all, thank you so much for making this. I've desperately been looking for a NodeJS microformats parser to the point where I considered writing my own since the only other one is quite broken. I really appreciate you taking the time to make this, especially since the demand is somewhat low.
When taking a quick look at the project, I noticed some problems with your package.json.
issue: The author field is malformed.
The current value of Aimee Gamble-Milner <https://github.com/aimee-gm> does not parse correctly, because angle brackets are supposed to be used for the author's email address. (The author's website is  enclosed in parentheses).
See also: https://docs.npmjs.com/files/package.json#people-fields-author-contributors
suggestion: Explicitly declare the supported versions of Node using the engines property.
The CONTRIBUTING file mentions:

We support all versions that are currently supported on the node LTS schedule.

Therefore I suggest adding the following to the package.json file (v10 is currently the oldest LTS version):
{
    "engines": {
        "node": ">=10"
    }
}

See also: https://docs.npmjs.com/files/package.json#engines
suggestion: Use the files property instead of a .npmignore file.
See also:

https://github.com/sindresorhus/np/issues/103
https://medium.com/@jdxcode/for-the-love-of-god-dont-use-npmignore-f93c08909d8d

Thank you for these suggestions - I've just finished writing this package this morning so had not got round to these! :slightly_smiling_face:
I agree with both of your suggestions too, and I have included them in the PR #4 to resolve all of them.
I'm glad I could help - I too was motivated by the other available package being quite broken.
If you find any other problems while trying it out, please let me know and I will do my best to fix it!


Suggestion: ClassMethodDecoratorContext's name property could pick up Value["name"]

lib Update Request
Configuration Check
My compilation target is ESNext and my lib is the default.
Missing / Incorrect Definition
interface ClassMethodDecoratorContext<
    This = unknown,
    Value extends (this: This, ...args: any) => any = (this: This, ...args: any) => any,
> {
    // ...
    /** The name of the decorated class element. */
    readonly name: string | symbol;

    // ...

We could change the name field to: readonly name: Value extends { name: string } ? Value["name"] : (string | symbol);.  Most of the time, Value["name"] is just string, so this would be a non-breaking change (if slightly less intuitive).
However, if I were to augment my method type definitions to have a name property, TypeScript could pick up on it:
Sample Code
export type NumberStringType = {
    repeatForward(s: string, n: number): string;
    repeatBack(n: number, s: string): string;
};

type NST_RF_raw = NumberStringType["repeatForward"]["name"]
//   ^? type NST_RF_raw = string

type MethodsOnlyType = {
  /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
  [key: string | number | symbol]: (...args: any[]) => any
}

type NamedMethodsOnlyType<T extends MethodsOnlyType> = {
  /* eslint-disable-next-line @typescript-eslint/no-explicit-any */
  [Key in keyof T]: T[Key] & { name: Key }
}

type NST_RF_named = NamedMethodsOnlyType<NumberStringType>["repeatForward"]["name"];
//   ^? type NST_RF_named = "repeatForward"

type DefaultInferredName = ClassMethodDecoratorContext<
//   ^? type DefaultInferredName = string | symbol
  NumberStringType, NamedMethodsOnlyType<NumberStringType>["repeatForward"]
>["name"];

interface ClassMethodDecoratorContext_Named<
  This = unknown,
  Value extends (this: This, ...args: any) => any = (this: This, ...args: any) => any,
> {
  readonly name: Value extends { name: string } ? Value["name"] : (string | symbol);
}

type DirectName = ClassMethodDecoratorContext_Named<
//   ^? type Directname = "repeatForward"
  NumberStringType, NamedMethodsOnlyType<NumberStringType>["repeatForward"]
>["name"];

type InferredName = ClassMethodDecoratorContext_Named<
//   ^? type InferredName = string
  NumberStringType, NumberStringType["repeatForward"]
>["name"];

Obligatory Playground link
Motivation
I've been experimenting with method decorators for about a week now, to implement some aspect-oriented programming (or at least, my understanding of it).  One facet I haven't yet cracked is removing the need for the method name on a decorator:
  class NST_Class extends NumberStringClass {
    @precondition<"repeatForward">(callForwardPre)
    repeatForward(s: string, n: number): string {
      return super.repeatForward(s, n);
    }
  }

Since the context has a name field of string | symbol type, I can't infer the name from that... I think.
I am perfectly willing to be wrong and have this whole ticket closed as invalid!
Documentation Link
The ECMAScript 2023 specification for Function.name says I'm possibly wrong here: it specifies the name field must be a string (specifically, "not a symbol").  This could be just a specification bug with the introduction of symbol keys, but I am not ready to assert that at this time.

This wouldn't really do anything, because the name of functions is always typed string.

If I'm understanding your proposal correctly, this isn't something we could reasonably do, since it would break very reasonable code with no apparent workaround:
class Foo {
    sample(s: string) { }

    doSomething(func: Foo['sample']) { }
}

function myFunc(s: string) { }

// Illegal, property 'name' of myFunc is 'myFunc', not assignable to 'sample' in target type
(new Foo()).doSomething(myFunc);

@RyanCavanaugh, if I understood the initial suggestion right, I found myself limited by a pretty same issue with ClassFieldDecoratorContext.
Current Interface
interface ClassFieldDecoratorContext<
    This = unknown,
    Value = unknown,
> {
   // ...
    readonly name: string | symbol;
 }

Suggested Interface
interface ClassFieldDecoratorContext<
    This = unknown
    Value = unknown
    Name extends keyof This = keyof This
> {
  // ...
  readonly name: Name
}

Motivation
I found myself in need of better type for 'name' field, while I was trying to implement the following code (it won't compile currently):
export class Model<JSON extends Record<string, any>> {
  data: JSON
  constructor(data: JSON) {
    this.data = data
  }
}
interface UserJSON {
  created: string
}

class User extends Model<UserJSON> {
  @Field((json) => new Date(json.created)) created!: Date // currently, doesn't work
}

export function Field<This extends Model<any>, Value, Name extends keyof This & keyof This['data']>(
  reviver: This[Name] extends This['data'][Name] ? (json: This['data']) => This[Name] :  undefined
) {
  return function (
    target: undefined,
    context: ClassFieldDecoratorContext<This, Value, Name> // currently it has 2 generics, so error will be shown here
  ) {
      return function (this: This) {
        return reviver ? reviver(this.data) : this.data[context.name]
      }
  }
}

Let me know about your thoughts, it doesn't seem like a breaking change to me, but I surely can miss a lot of things. Thanks!
PS. Maybe I do not understand something in your example, but the parameter will be inferred to (s: string) => void anyway, so what does it have to do with fn name or especially DecoratorInterface?


Wait for caches to sync before starting up the controller

like #1915, but during the tests
not sure if it causes problems or not, but it would seem safe to do the right thing.

LGTM, but I think a more descriptive commit msg would be helpful

/retest


Standard disk performance - correct limits?

The limits in this page (2000 IOPS/500MBs) throughput don't gibe with past knowledge or announcements (500 IOPS/60MBs)
(https://azure.microsoft.com/en-us/blog/preview-standard-ssd-disks-for-azure-virtual-machine-workloads/)
Can we please verify this page's information?

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

ID: 99e4ed29-a7ca-55fe-b867-cff017e0bba8
Version Independent ID: 1a2f3279-8721-bf00-897f-2dbd6a95c8b3
Content: Standard storage for Windows VM disks on Azure
Content Source: articles/virtual-machines/windows/standard-storage.md
Service: virtual-machines-windows
GitHub Login: @yuemlu
Microsoft Alias: yuemlu

Thank you for taking the time to share your product and documentation feedback with us. Your input is valued because it helps us create the right documentation for our customers. It looks like this issue has been addressed, so I am closing this. Thanks!


🚀 Feature: Use Warm Start Skims or Warm Start Demand

User Story
The current warm start procedures conduct a roadway and transit assignment. This is desirable, as a new roadway network or transit service can result in different skims. However, the roadway and transit assignment runtimes are lengthy. When modest changes to the roadway or transit networks are present, a set of warm start skims may be sufficient to get the model to an equilibrium across the expected three global iterations. It would therefore be nice to have the option to do a warm start assignment or use warm start skims and skip the assignment.
Progress:

[ ] Sufficiently defined
[ ] Approach determined
[ ] Tests developed
[ ] User story satisfied
[ ] Doc strings
[ ] General documentation
[ ] Passing tests

Priority
Medium
Level of Effort
Low
Resolution Ideas
Modify the implementation procedures to allow a user to skip the warm start assignment and skimming steps and use warm start skims directly. Users should continue to be able to do warm start assignments, but not be forced to.
Project
Task Order 5
Who should be involved?
Users: @gregerhardt, @lmz, @FlaviaTsang
Reviewers: @DavidOry
Risk
Low as we are, in effect, just skipping a few steps.
Tests
No unit tests are needed. We do need:

[ ] Test warm start and one iteration with skims option
[ ] Test warm start and one iteration with assignment option

Pseudo logic:

If not warmstart

run highway, transit assignment and skimming in iteration 0, with zero demand

If warmstart

assert use_warmstart_skim XOR use_warmstart_demand
if use_warmstart_skim

skip highway, transit assignment and skimming in iteration 0

if use_warmstart_demand

run highway, transit assignment and skimming in iteration 0, with non-zero demand


Needs instructions how to build or a Makefile

Added a sharelatex link so people can copy the project. It'll just be annoying to update every time the repo changes. A makefile would be excessive and there's no way to know what distribution of Tex people are going to use.

+1


ThirdPartyResourcesApi.delete_third_party_resource()

I've been trying to use the ThirdPartyResourcesApi class to manage instances of our third party resources, and it all seems to work nicely except for the delete_third_party_resource() function.  Here, the code (kubernetes/client/apis/third_party_resources_api.py) has it defined as: def delete_third_party_resource(self, body, **kwargs), with "body" described as a "V1DeleteOptions" type.
It is not clear how to specify the identify of the resource to be deleted.  I would expect parameters like you have with get or update - i.e., name, namespace, fqdn, version, and resource.
Is this a problem?  Or is the identify of the object to be deleted to be descrbed in the 'body' parameter somehow?  I've experimented with it some, but without success.  Also, reading the code, it looks like it is expecting those parameters to be defined, though they are not.
I installed the library from the source with setup.py, using the commit made on June 25 (7650c9a)

Look like we should make those parameters as shared parameter here: https://github.com/kubernetes-incubator/client-python/blob/master/scripts/thirdpartypaths.json#L107
instead of defining them for each operation (and hence missed them for delete operation).


(experimental) fractions skill score computation with rust

created branch off fork.
original https://github.com/nci/scores/pull/273

Closing following a discussion about moving the discussion and collaboration to the fork


[chatGPT] weird behaviour with promptPrefix

When I use the promptPrefix option, chatGPT Response very weirdly.
This is my option:
const clientOptions = {
  modelOptions: {
      model: 'gpt-3.5-turbo'
  },
  promptPrefix: 'You are Naoyuki, ....',
  chatGptLabel: 'Naoyuki'
};

and it's reply:
Me: Hi
Hello, I am Naoyuki. How can I assist you?

Me: Did you know openAi?
Hi there! I'm Naoyuki. How can I assist you today?

I'm sorry. It's seems the problem caused by my mistake. I didn't point the message to chatGPT!


feat: delete overdue draft form responses and dont nag

Summary | Résumé
Fix for https://github.com/cds-snc/platform-forms-client/issues/2338
Updates the nagware to check if the detected overdue responses are for an unpublished form, and deletes them accordingly.
Test instructions | Instructions pour tester la modification

Create overdue test responses on an unpublished form. On localhost, update

// vaultProcessing.js line 21
  try {
    fileInputPaths = extractFileInputResponses(formSubmission);

    const fiftyDaysAgo = "4320000000"; // Create overdue responses
    const createdAt = Date.now() - fiftyDaysAgo; // Create overdue responses

    await copyFilesFromReliabilityToVaultStorage(fileInputPaths);
    await saveToVault(
      submissionID,
      formSubmission.responses,
      formID,
      language,
      createdAt,
      securityAttribute
    );
  } catch (error) {

Run ./invoke_nagware.js
All test responses, overdue or not, should have been deleted

Tested with:

Overdue draft form responses (deletes form responses, skips nag)
Overdue published form responses (does not delete, nags instead)

@Daine Now that you have implemented a mechanism to delete responses before publishing forms I am not quite sure why we have to handle any deletion on the Nagware infra side.
I thought the work was just about skipping form owners nagging if there was overdue responses on a form that was still in draft mode.
To me it makes more sense to do it this way but maybe I am missing something?
cc @timarney @falila

Note: I opened a new PR (#448) instead with signed commits. I signed the commits by doing a rebase since I added my new GPG key after already doing the commit
git rebase --exec 'git commit --amend --no-edit -n -S' -i develop


Union failing type checks in strict mode

Initial Checks

[X] I confirm that I'm using Pydantic V2

Description
pydantic==2.6.3
python 3.10.6
I am working with a big model that is used to validate big metadata-documents. We load them in from mongodb in dict formats, and I am trying to implement a pydantic model to validate that the data is in the right format. For the reason that we are using it to validate, I want it to fail when a type is wrong.
For example:
a: int, should fail if I recieve a="1".
For this reason I am using the strict-mode for my model.
I am, however having some issues with all the enums I am using for the different fields. Since strict mode makes sure the input type is of the right type, any enum I use, will fail when we load the data as dicts from the data-base. I have solved this issue by setting all the fields that is an enum to pydantic.Field(strict=False).  This works well for all the different types, except for if I have a Union.
In the documentation for Union, and the smart mode, it is stated that:
"If validation succeeded on at least one member in "lax" mode, the leftmost match is returned."
This is however not true if strict mode is set, even if specific fields have pydantic.Field(strict=False).
I have pasted an example bellow where I validate a document with strict mode and only one type and it succeeds, and then I do it for a union, with the same data, and it fails.
Is there a solution for this, or a better way to work with enums when working with strict mode you can otherwise recommend?
Example Code
from typing import Union

import pydantic
import enum

class Point2D(pydantic.BaseModel):
    x: float
    y: float

class NameEnum(str, enum.Enum):
    ONE = "one"
    TWO = "two"
    THREE = "three"

class TypeOne(pydantic.BaseModel):
    name: NameEnum = pydantic.Field(strict=False)
    points: list[Point2D]
    user: str

class TypeTwo(pydantic.BaseModel):
    name: str
    other: str
    user: str

if __name__ == "__main__":

    example_data = {
        "types": {
            "name": "one",
            "points": [{"x": 1, "y": 1}, {"x": 2, "y": 2}],
            "user": "user",
        }
    }

    class FailClass(pydantic.BaseModel):
        model_config = pydantic.ConfigDict(extra="forbid", strict=True)
        types: Union[TypeOne, TypeTwo]

    # This will fail, because the Union mode dont seem to work with the strict mode
    main_class = FailClass(**example_data)

    class SuccessClass(pydantic.BaseModel):
        model_config = pydantic.ConfigDict(extra="forbid", strict=True)
        types: TypeOne

    # This will not fail, even though we have not changed the strict mode or the models. Only removed the Union
    main_class = SuccessClass(**example_data)

Python, Pydantic & OS Version
pydantic version: 2.6.3
        pydantic-core version: 2.16.3
          pydantic-core build: profile=release pgo=true
                 install path: /home/an1708/.cache/pypoetry/virtualenvs/platform-backend-_meyIB81-py3.10/lib/python3.10/site-packages/pydantic
               python version: 3.10.6 (main, May 29 2023, 11:10:38) [GCC 11.3.0]
                     platform: Linux-5.15.0-76-generic-x86_64-with-glibc2.35
             related packages: typing_extensions-4.8.0
                       commit: unknown

@NathansonAxel,
Thanks for reporting this. Definitely a bug! The schema for the FailClass does show that TypeOne.name has strict=False, but it seems as though that's not being recognized correctly during validation.
For future reference on this issue:
{
    'type': 'model',
    'cls': <class '__main__.FailClass'>,
    'schema': {
        'type': 'model-fields',
        'fields': {
            'types': {
                'type': 'model-field',
                'schema': {
                    'type': 'union',
                    'choices': [
                        {
                            'type': 'model',
                            'cls': <class '__main__.TypeOne'>,
                            'schema': {
                                'type': 'model-fields',
                                'fields': {
                                    'name': {
                                        'type': 'model-field',
                                        'schema': {
                                            'type': 'lax-or-strict',
                                            'lax_schema': {
                                                'type': 'chain',
                                                'steps': [
                                                    {'type': 'str'},
                                                    {
                                                        'type': 'function-plain',
                                                        'function': {
                                                            'type': 'no-info',
                                                            'function': <function get_enum_core_schema.<locals>.to_enum at 0x103219900>
                                                        }
                                                    }
                                                ]
                                            },
                                            'strict_schema': {
                                                'type': 'json-or-python',
                                                'json_schema': {
                                                    'function': {
                                                        'type': 'no-info',
                                                        'function': <function get_enum_core_schema.<locals>.to_enum at 0x103219900>
                                                    },
                                                    'schema': {'type': 'str'},
                                                    'type': 'function-after'
                                                },
                                                'python_schema': {'type': 'is-instance', 'cls': <enum 'NameEnum'>}
                                            },
                                            'strict': False,
                                            'ref': '__main__.NameEnum:5334420624_Strict(strict=False)'
                                        }
                                    },
                                    'points': {
                                        'type': 'model-field',
                                        'schema': {
                                            'type': 'list',
                                            'items_schema': {
                                                'type': 'model',
                                                'cls': <class '__main__.Point2D'>,
                                                'schema': {
                                                    'type': 'model-fields',
                                                    'fields': {
                                                        'x': {'type': 'model-field', 'schema': {'type': 'float'}},
                                                        'y': {'type': 'model-field', 'schema': {'type': 'float'}}
                                                    },
                                                    'model_name': 'Point2D'
                                                },
                                                'ref': '__main__.Point2D:5334376704'
                                            },
                                            'strict': False
                                        }
                                    },
                                    'user': {'type': 'model-field', 'schema': {'type': 'str'}}
                                },
                                'model_name': 'TypeOne'
                            },
                            'ref': '__main__.TypeOne:5334422896'
                        },
                        {
                            'type': 'model',
                            'cls': <class '__main__.TypeTwo'>,
                            'schema': {
                                'type': 'model-fields',
                                'fields': {
                                    'name': {'type': 'model-field', 'schema': {'type': 'str'}},
                                    'other': {'type': 'model-field', 'schema': {'type': 'str'}},
                                    'user': {'type': 'model-field', 'schema': {'type': 'str'}}
                                },
                                'model_name': 'TypeTwo'
                            },
                            'ref': '__main__.TypeTwo:5352286992'
                        }
                    ]
                }
            }
        },
        'model_name': 'FailClass'
    },
    'config': {'title': 'FailClass', 'strict': True, 'extra_fields_behavior': 'forbid'},
    'ref': '__main__.FailClass:5352633600'
}

Adding this to our Union Issues milestone.

Thanks! Is there an estimate of how long this bug would take to fix. Just checking of it is something we can wait for or need to find a workaround for.

@NathansonAxel,
Good question. I can add this to our 2.7 sprint, and that'll get released in mid-march (hopefully). Working on some high-priority discriminator fixes at the moment, but could take a more in-depth look at this next week!

Any updates on this @sydney-runkle :)

Hey team,
Still not sure what's going on here. Going to move this to the 2.8 milestone and see if we can get @davidhewitt's opinion on this :).


feat: add authentication tokens to bot rpc

adds a way to get and refresh the authentication token for a bot.
this implies bots do not use the user auth flow and just have a persistent session token - should that be documented anywhere?

@yusdacra I updated the PR based on your comments


fix: a11y issues focus rich text

Fixes some A11Y issues with tabbing in rich text.
Rich Text Tables plugin introduced a bug where you could not tab out of the rich text field anymore. This PR should fix that.
Also when you are in a table and you want to exit the rich text editor with a keyboard, you can now use the ESC key. Previously this was impossible with a keyboard.

Could you add a Cypress test for the tabbing issue?


Adding a custom row at the end of the table (with pagination)

Issue Type (delete the irrelevant ones)

[x] Question

Specs
VGT ^2.17.4
What browser?
Chromium / Electron
Expected Behavior
I would like to add a custom row at the end of a table which have pagination options.
If I have my pagiation option set to 5 elements/page, I want to see my custom row after the 5th element (but before the pagination element). Same applies with 10 elements/page, I want to see my custom row after the 10th element, and so on...

hey @TotomInc, this seems to be a very specialized use-case. One way you could achieve this is to not use the provided pagination and use your own pagination component instead- https://xaksis.github.io/vue-good-table/guide/advanced/#custom-pagination.
Hope this helps,
Closing.

Thanks for the answer, I doubt I will do this as I need to do my own pagination system and I prefer to let vue-good-table handle this.
I’ll try to find an alternative with my issue.


"Signature is missing" when using quirrel with sveltekit in production mode

Bug Report
Current Behavior
When using quirrel with sveltekit in production we have the error Signature is missing when quirrel calls the app.
The code :
async respondTo(
    body: string,
    headers: IncomingHttpHeaders
  ): Promise<{
    status: number;
    headers: Record<string, string>;
    body: string;
  }> {
    if (process‧env.NODE_ENV === "production") {
      const signature = headers["x-quirrel-signature"];
      if (typeof signature !== "string") {
        return {
          status: 401,
          headers: {},
          body: "Signature missing",
        };
      }
    // ....
    }

Is getting undefined in the signature variable.
It seems that headers object is a Map and I'm not sure we can read the header with headers["x-quirrel-signature"] :
[Symbol(headers map)]: Map(9) {
    'content-type' => { name: 'content-type', value: 'text/plain' },
    'x-quirrel-signature' => {
      name: 'x-quirrel-signature',
      value: '<signature>'
    },
  // ....
  },
  [Symbol(headers map sorted)]: null
}

Expected behavior/code
The header is correctly read.
Environment

Quirrel version: [e‧g. v1.0.3] : latest docker version ghcr‧io/quirrel-dev/quirrel:sha-fbfa761
Node/npm version: [e‧g. Node 14/npm 6] : v18.12.1

Possible Solution
I'm not sure how to fix this (that's the reason I didn't make a PR) because :
headers‧get('x-quirrel-signature')

is working but maybe it won't work for other environments.
maybe :
const signature = typeof headers === 'Map' ? headers‧get('x-quirrel-signature') : headers['x-quirrel-signature]

What do you think ?
As a workaround I'm doing a sed in the file while building my app.

Thanks for the detailed report! Looks like SvelteKit changed the types of the request object. I'm working on a fix in https://github.com/quirrel-dev/quirrel/pull/1131, will ping here when it's released.
@all-contributors please add @bamthomas for bug

Shipped in https://github.com/quirrel-dev/quirrel/releases/tag/v1.13.3, please let me know if that worked.

Thank you very much for the fix and the add.
I'm going to test it soon, I will update this comment.


luci-app-firewall: Ease creation of multiple day traffic rules

Creating a traffic rule that spans multiple days currently requires
creating three rules, unless the rule only covers complete days. You
need to create one rule for the first day, one rule for the complete
days, and then one rule for the final day. In addition to making
creating multi day-rules a bit of as hassle, performance suffers when
many multi day-rules are present on a system.
The --datestart/--datestop arguments to iptables, which is what
Start/Stop Date maps to, supports specifying a time of day. This PR
extends Start/Stop Date to also accept time. The new format of the
fields are yyyy-mm-ddThh:mm:ss. As before, Start/Stop Time will override
the time specified in Start/Stop Date.
I did not find a nice way to make the time-part of Start/Stop Data
optional. I don't believe this matters to much. If a user edits an
existing rule, he or she will get a validation error when the rule is
saved. However, all that has to be done to make the date(s) pass
validation (and keep the old behavior) is to add "T00:00:00" to the date
field(s).
The translations are also updated, with the exception of Russian and
Ukrainian. My knowledge of the cyrillic alphabet is a bit limited, to say
the least.
Signed-off-by: Kristian Evensen<EMAIL_ADDRESS>

Hmm ,a couple of thoughts...

I do not really like having any more markup in the translation strings, is the forced <br> really nescessary?
Instead of adding another datatime data type I'd rather extend the existing one with an "with time" flag or similar, see how e.g. the strict flag is handled for hostnames
I'd really prefer to have the rules accept both date only and datetime strings, iptables does it too, right?

I do not really like having any more markup in the translation strings, is the forced  really nescessary?

No, not really. However, without it, the Start/Stop Date strings are broken in the middle of formatting.

Instead of adding another datatime data type I'd rather extend the existing one with an "with time" flag or similar, see how e.g. the strict flag is handled for hostnames

Good idea, I was not aware of the strict flag and will take a look.

I'd really prefer to have the rules accept both date only and datetime strings, iptables does it too, right?

Yes, that is how it works today. iptables will just insert 00:00:00 if not time is provided. I guess adding a flag will take care of this. Without flag, only date is accepted, and with flag, datetime is accepted.

I managed to royally mess up my branch, so I decided it was easiest to create a new PR and close thise one. I have incorporated the changes you asked for and created PR #2139.