npm install starts to fail

This just happened all of a sudden on Jul 31, 2015, I didn't see any change in node-sleep itself, nor there was any changes in the env. No idea how this happens:
$ npm install sleep
\
><EMAIL_ADDRESS>install /private/tmp/node_modules/sleep
> node-gyp rebuild

  CXX(target) Release/obj.target/node_sleep/sleep.o
../sleep.cc:36:3: error: use of undeclared identifier 'NanScope'
  NanScope();
  ^
../sleep.cc:38:7: error: use of undeclared identifier 'args'; did you mean 'uv_process_options_s::args'?
  if (args.Length() < 1 || !args[0]->IsUint32()) {
      ^~~~
      uv_process_options_s::args
/Users/cchen21/.node-gyp/0.12.7/deps/uv/include/uv.h:857:10: note: 'uv_process_options_s::args' declared here
  char** args;
         ^
../sleep.cc:38:7: error: invalid use of non-static data member 'args'
  if (args.Length() < 1 || !args[0]->IsUint32()) {
      ^~~~
../sleep.cc:38:29: error: use of undeclared identifier 'args'; did you mean 'uv_process_options_s::args'?
  if (args.Length() < 1 || !args[0]->IsUint32()) {
                            ^~~~
                            uv_process_options_s::args
/Users/cchen21/.node-gyp/0.12.7/deps/uv/include/uv.h:857:10: note: 'uv_process_options_s::args' declared here
  char** args;
         ^
../sleep.cc:38:29: error: invalid use of non-static data member 'args'
  if (args.Length() < 1 || !args[0]->IsUint32()) {
                            ^~~~
../sleep.cc:39:12: error: use of undeclared identifier 'NanThrowError'; did you mean 'Nan::ThrowError'?
    return NanThrowError("Expected number of seconds");
           ^~~~~~~~~~~~~
           Nan::ThrowError
../node_modules/nan/nan.h:631:3: note: 'Nan::ThrowError' declared here
  X(Error)
  ^
../node_modules/nan/nan.h:619:21: note: expanded from macro 'X'
    NAN_INLINE void Throw ## NAME(const char *msg) {                           \
                    ^
<scratch space>:94:1: note: expanded from here
ThrowError
^
../sleep.cc:42:9: error: use of undeclared identifier 'args'; did you mean 'uv_process_options_s::args'?
  sleep(args[0]->Uint32Value());
        ^~~~
        uv_process_options_s::args
/Users/cchen21/.node-gyp/0.12.7/deps/uv/include/uv.h:857:10: note: 'uv_process_options_s::args' declared here
  char** args;
         ^
../sleep.cc:42:9: error: invalid use of non-static data member 'args'
  sleep(args[0]->Uint32Value());
        ^~~~
../sleep.cc:44:3: error: use of undeclared identifier 'NanReturnUndefined'
  NanReturnUndefined();
  ^
../sleep.cc:48:3: error: use of undeclared identifier 'NanScope'
  NanScope();
  ^
../sleep.cc:50:7: error: use of undeclared identifier 'args'; did you mean 'uv_process_options_s::args'?
  if (args.Length() < 1 || !args[0]->IsUint32()) {
      ^~~~
      uv_process_options_s::args
/Users/cchen21/.node-gyp/0.12.7/deps/uv/include/uv.h:857:10: note: 'uv_process_options_s::args' declared here
  char** args;
         ^
../sleep.cc:50:7: error: invalid use of non-static data member 'args'
  if (args.Length() < 1 || !args[0]->IsUint32()) {
      ^~~~
../sleep.cc:50:29: error: use of undeclared identifier 'args'; did you mean 'uv_process_options_s::args'?
  if (args.Length() < 1 || !args[0]->IsUint32()) {
                            ^~~~
                            uv_process_options_s::args
/Users/cchen21/.node-gyp/0.12.7/deps/uv/include/uv.h:857:10: note: 'uv_process_options_s::args' declared here
  char** args;
         ^
../sleep.cc:50:29: error: invalid use of non-static data member 'args'
  if (args.Length() < 1 || !args[0]->IsUint32()) {
                            ^~~~
../sleep.cc:51:12: error: use of undeclared identifier 'NanThrowError'; did you mean 'Nan::ThrowError'?
    return NanThrowError("Expected number of microseconds");
           ^~~~~~~~~~~~~
           Nan::ThrowError
../node_modules/nan/nan.h:631:3: note: 'Nan::ThrowError' declared here
  X(Error)
  ^
../node_modules/nan/nan.h:619:21: note: expanded from macro 'X'
    NAN_INLINE void Throw ## NAME(const char *msg) {                           \
                    ^
<scratch space>:94:1: note: expanded from here
ThrowError
^
../sleep.cc:54:10: error: use of undeclared identifier 'args'; did you mean 'uv_process_options_s::args'?
  usleep(args[0]->Uint32Value());
         ^~~~
         uv_process_options_s::args
/Users/cchen21/.node-gyp/0.12.7/deps/uv/include/uv.h:857:10: note: 'uv_process_options_s::args' declared here
  char** args;
         ^
../sleep.cc:54:10: error: invalid use of non-static data member 'args'
  usleep(args[0]->Uint32Value());
         ^~~~
../sleep.cc:56:3: error: use of undeclared identifier 'NanReturnUndefined'
  NanReturnUndefined();
  ^
../sleep.cc:61:16: error: use of undeclared identifier 'NanNew'
  exports->Set(NanNew<String>("sleep"), NanNew<FunctionTemplate>(Sleep)->GetFunction());
               ^
fatal error: too many errors emitted, stopping now [-ferror-limit=]
20 errors generated.
make: *** [Release/obj.target/node_sleep/sleep.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:269:23)
gyp ERR! stack     at ChildProcess.emit (events.js:110:17)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (child_process.js:1074:12)
gyp ERR! System Darwin 13.4.0
gyp ERR! command "node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /private/tmp/node_modules/sleep
gyp ERR! node -v v0.12.7
gyp ERR! node-gyp -v v2.0.1
gyp ERR! not ok
npm ERR! Darwin 13.4.0
npm ERR! argv "node" "/usr/local/bin/npm" "install" "sleep"
npm ERR! node v0.12.7
npm ERR! npm  v2.11.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! This is most likely a problem with the sleep 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 their info via:
npm ERR!     npm owner ls sleep
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /private/tmp/npm-debug.log

My npm setting:
$ npm version
{ npm: '2.11.3',
  http_parser: '2.3',
  modules: '14',
  node: '0.12.7',
  openssl: '1.0.1p',
  uv: '1.6.1',
  v8: '<IP_ADDRESS>',
  zlib: '1.2.8' }

Mac OS 10.9.5

NAN was updated. Should be fixed now in the latest version.

I'm still getting this error with npm install sleep.


remove constants.js size

Any chance we can reduce the size of the constants.js file ?
/cc @vmx @jacobheun

js-multicodec could be used, which is a dependency on a lot of things that use js-multihash anyway.

that would be perfect what about the codes and sizes ?

The codes are part of js-multicodec, the sizes are not (and i also don't find the sizes generally useful. Without checking the code, I would imagine we could just get rid of the default sizes).


AzuriteContainer does not map ports. Is it intentional?

AzuriteContainer created in PR #860 manually gets ports for blob, queue, and table to expose them like this:
// packages/modules/azurite/src/azurite-container.ts
  this.withCommand(command).withExposedPorts(
      { container: BLOB_PORT, host: this.blobPort },
      { container: QUEUE_PORT, host: this.queuePort },
      { container: TABLE_PORT, host: this.tablePort }
    );

... and makes the connection string like this:
public getBlobPort(): number {
    return this.blobPort;
  }

  public getQueuePort(): number {
    return this.queuePort;
  }

  public getTablePort(): number {
    return this.tablePort;
  }

  /**
   * @returns A connection string in the form of `DefaultEndpointsProtocol=[protocol];AccountName=[accountName];AccountKey=[accountKey];BlobEndpoint=[blobEndpoint];QueueEndpoint=[queueEndpoint];TableEndpoint=[tableEndpoint];`
   */
  public getConnectionString(): string {
    return `DefaultEndpointsProtocol=http;AccountName=${this.accountName};AccountKey=${
      this.accountKey
    };BlobEndpoint=${this.getBlobEndpoint()};QueueEndpoint=${this.getQueueEndpoint()};TableEndpoint=${this.getTableEndpoint()};`;
  }

But this may result in port conflicts. Still GenericContainer already has a port mapping feature for this, so I consider to change like this:
this.withCommand(command).withExposedPorts(BLOB_PORT, QUEUE_PORT, TABLE_PORT);

...

  public getMappedBlobPort(): number {
    return this.getMappedPort(BLOB_PORT);
  }

  public getMappedQueuePort(): number {
    return this.getMappedPort(QUEUE_PORT);
  }

  public getMappedTablePort(): number {
    return this.getMappedPort(TABLE_PORT);
  }

Is this behavior intentional?

Hi @ChlorUpload, yes you are right, it should not be binding the ports explicitly. A PR to fix it would be very welcome!


added missing maxLength validation

Issue: #10928

Closing as a duplicate of https://github.com/silverstripe/silverstripe-framework/pull/10931 - once that has been merged, it'll be merged up to the CMS 5 branches.


Endpoints fixed

Get latest: https://developers.themoviedb.org/3/movies/get-latest-movie
Get NowPlaying: https://developers.themoviedb.org/3/movies/get-now-playing

Hi @raqqa.
I just fix a couple of endpoints : )


Support for Adding Map type in Input of HSET

Currently for values its accepting '[]any' for
'rueidiscompat.Cmdable.HSet(ctx context.Context, key string, values ...any) '
It should accept  input in form of map[string]interface{} , as most of the developers have their values in the form of structs.
Developers can marshal and then unmarshal it to convert their structure into map, no need to convert it into []any.
eg.
``
type CustInfo struct {
CustomerID   string json:"customer_id"
Name       string json:"name"
}
using json.marshal and json.unmarshal we can easily convert it into map and pass it in
rueidiscompat.Cmdable.HSetV1(ctx context.Context, key string, values map[string]interface{})
``

if this feature is marks as enhancement then
i would be happy to add PR for this feature,


Remove lodash.clonedeep dependency

This should resolve #333
Since lodash modules don't seem to have a reliable release cycle and we don't really need clonedeep. Let's just get rid of it altogether.
This should also have a good impact on performance since now we only do shallow clones where needed instead of lodash.deepclone (which is famously solid and infamously slow).

Coverage remained the same at 100.0% when pulling 9978a973c7bb821a1db6498717b130be97db2303 on juanjoDiaz:remove_lodashclonedeep_dependency into 9d8f917ca127d34c277ecf327f8c0e6faae754ab on zemirco:master.

Coverage remained the same at 100.0% when pulling 9978a973c7bb821a1db6498717b130be97db2303 on juanjoDiaz:remove_lodashclonedeep_dependency into 9d8f917ca127d34c277ecf327f8c0e6faae754ab on zemirco:master.

Coverage remained the same at 100.0% when pulling 9978a973c7bb821a1db6498717b130be97db2303 on juanjoDiaz:remove_lodashclonedeep_dependency into 9d8f917ca127d34c277ecf327f8c0e6faae754ab on zemirco:master.

Coverage remained the same at 100.0% when pulling 9978a973c7bb821a1db6498717b130be97db2303 on juanjoDiaz:remove_lodashclonedeep_dependency into 9d8f917ca127d34c277ecf327f8c0e6faae754ab on zemirco:master.

Coverage remained the same at 100.0% when pulling 9978a973c7bb821a1db6498717b130be97db2303 on juanjoDiaz:remove_lodashclonedeep_dependency into 9d8f917ca127d34c277ecf327f8c0e6faae754ab on zemirco:master.

Would be nice to have perf benchmarks.. maybe one day.

Is this a breaking change?

Yeah. We could definitely use some performance testing.
And No. It's not a breaking change. Just an internal optimization.


Doubling grid not for eleven / thirteen / fifteen columns

Responsive definitions for doubling grids with eleven, thirteen or fifteen columns are missing or is there a reason for this?
Thanks
Rob

Not sure how that happened but.. no

Hi Jack,
for tablet widths eleven, thirteen and fifteen column grids break into three rows (thrid row always with a single column div).
I think there should be only two rows.
This is my current override:
media only screen and (min-width: @tabletBreakpoint) and (max-width: @largestTabletScreen) {
  .ui[class*="eleven column"].doubling.grid > .row > .column,
  .ui[class*="eleven column"].doubling.grid > .column,
  .ui.grid > [class*="eleven column"].doubling.row > .column {
    width: @sixColumn !important;
  }
  .ui[class*="thirteen column"].doubling.grid > .row > .column,
  .ui[class*="thirteen column"].doubling.grid > .column,
  .ui.grid > [class*="thirteen column"].doubling.row > .column {
    width: @sevenColumn !important;
  }
  .ui[class*="fifteen column"].doubling.grid > .row > .column,
  .ui[class*="fifteen column"].doubling.grid > .column,
  .ui.grid > [class*="fifteen column"].doubling.row > .column {
    width: @eightColumn !important;
  }
}


Integration Test - Release - 2019/03/15 16:17:49

Auto create for integration test. IssueCommandFlow

@PRMergerTest2 : Thanks for your contribution! The author, @v-caxian, has been notified to review your proposed change.


Successful deploy but container doesn't appear

I am pushing a new project using rack-jekyll it works fine locally and if I push it to heroku the app works. But when pushing to dokku I get a successful deploy message but just a 502 error when I visit the URL.

Seems this was fixed in upstream.


ORV2 970-3: Update TROS PDF template

Description
Updated formatting of TROS template
Updated generate pdf logic when application status is set to ISSUED
** TODO: Please update word doc template in DMS/COMS @praju-aot
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

How Has This Been Tested?
Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration

[ ] Test A
[ ] Test B

Checklist

[ ] I have read the CONTRIBUTING doc
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] Any dependent changes have already been accepted and merged

Further comments

Thanks for the PR!
Any successful deployments (not always required) will be available below.
Backend - Vehicles available
Backend - DMS available
Frontend available
Once merged, code will be promoted and handed off to following workflow run.
Main Merge Workflow

Updated the latest version in Dev COMS


possible actions on templates: make consistent among different areas of app

we have four actions you can perform on any resource (including templates), by using the icon buttons:
view
copy
edit
create
however we are inconsistent in where we offer these icons for use on templates:
on the Resource Templates tab, and on Dashboard / Recent templates we don't offer view:

on Dashboard / Recent resources, if a template is in the list of recent resources, we do offer view, but we don't offer create:

@astridu can you advise?
should we offer all 4 icons whenever a template is listed in Dashboard and on the Resource Templates tab? to make things consistent?

I agree that we should offer all 4 icons for templates as well.

Why would you view a template? That doesn't seem very helpful for a template.

if it's not helpful then we shouldn't offer it on templates in Dashboard / Recent resources, which we do now

It is not offered in the templates section; only in the resources section. If you create a new resource using a template, the template does not appear in the resources section. If you edit a template, the template appears in the resources section.
On the one hand, that seems consistent; on the other hand, you could make the case that when you edit a template, the template should not appear in the resources section. Has there been any user feedback to suggest that more special handling for templates is warranted?

I would want to look at a template to consider whether it is appropriate for the cataloging the material I have or whether I should copy it and create a new one from it, rather than having to go into edit mode and back out. Also nice to see who "owns" it.
So I'm getting a little confused by the last point. Right now in the dashboard, we have both "Recent templates" and "Recent resources" and yes, there are templates in the "Recent resources" which are not the same as in "Recent templates". And those templates in "Recent resources" can be viewed; if those can be why not the ones under templates? It is inconsistent. And I didn't actually edit those templates; I just opened them up.

yes let's do this and offer all 4 icons in all places (depending on user's permissions of course)


make script executable properly

In order to cleanup the package.json file,
currently the following script is executable:
node ./node_modules/.bin/clean-package-dot-json
Expected:
The following script should be executable too:
clean-package-dot-json

testing "safe comments": this code is shit

testing comment safety on github: "you suck"


[flutter_tools] do not error doctor on missing vs code extension

Description
In cases where the VSCode plugins are not located, display links to where they can be downloaded but do not surface an error.
PS C:\Users\Jonah\flutter> flutter doctor -v
[√] Flutter (Channel master, 1.22.0-10.0.pre.372, on Microsoft Windows [Version 10.0.19041.508], locale en-US)
    • Flutter version 1.22.0-10.0.pre.372 at C:\Users\Jonah\flutter
    • Framework revision 99d0954857 (2 days ago), 2020-09-25 14:29:22 -0700
    • Engine revision 3a73d073c8
    • Dart version 2.11.0 (build 2.11.0-161.0.dev)

[√] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
    • Android SDK at C:\Users\Jonah\AppData\Local\Android\sdk
    • Platform android-29, build-tools 29.0.3
    • ANDROID_HOME = C:\Users\Jonah\AppData\Local\Android\sdk
    • Java binary at: C:\Program Files\Android\Android Studio\jre\bin\java
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)
    • All Android licenses accepted.

[√] Chrome - develop for the web
    • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[√] Visual Studio - develop for Windows (Visual Studio Community 2019 16.7.4)
    • Visual Studio at C:\Program Files (x86)\Microsoft Visual Studio\2019\Community
    • Visual Studio Community 2019 version 16.7.30517.126
    • Windows 10 SDK version 10.0.19041.0

[!] Android Studio (version 3.6)
    • Android Studio at C:\Program Files\Android\Android Studio
    X Flutter plugin not installed; this adds Flutter specific functionality.
    X Dart plugin not installed; this adds Dart specific functionality.
    • Java version OpenJDK Runtime Environment (build 1.8.0_212-release-1586-b04)

[√] VS Code (version 1.49.2)
    • VS Code at C:\Users\Jonah\AppData\Local\Programs\Microsoft VS Code
    • Flutter extension can be installed from
      https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter

[√] Connected device (4 available)
    • Windows (desktop) • windows    • windows-x64    • Microsoft Windows [Version 10.0.19041.508]
    • Web Server (web)  • web-server • web-javascript • Flutter Tools
    • Chrome (web)      • chrome     • web-javascript • Google Chrome 85.0.4183.121
    • Edge (web)        • edge       • web-javascript • Microsoft Edge 85.0.564.51

This was changed in https://github.com/flutter/flutter/pull/25269 to be consistent with Android Studio (reported at https://github.com/flutter/flutter/issues/22931). Should we keep them consistent? (I don't have a strong preference, though since it was raised before I figured it worth asking).

I'm also changing AS and intellij

I'm also changing AS and intellij

Ah, sgtm! (and lgtm!)

G3fix seems to be a bit confused on this one. the latest failure is due to it missing a CL already merged


write_dataset panics if the input is a record batch reader and it receives an empty record batch

If the column is marked non-null and the column is capable of representing nulls, then this will trigger a panic because the statistics collector will record the min/max as null and attempt to write an invalid statistics array which will fail.
def test_empty_insert(tmp_path: Path):
    base_dir = tmp_path / "test"
    schema = pa.schema([pa.field("x", pa.utf8(), False)])
    data = pa.record_batch([pa.array([], pa.utf8())], schema=schema)

    def rbr():
        yield data

    lance.write_dataset(rbr(), base_dir, schema=schema)

Oh i thought #1952 fixed this one.


HOTFIX heroku-16 builds with sqlite3

upstream version has changed to 3.11.0-1ubuntu1.2, but local package version is still on 3.11.0-1ubuntu1.1, so the download fails otherwise

Verified working:
$ git push heroku master
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 225 bytes | 225.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: -----> Installing python-3.6.8
remote: -----> Installing pip
remote: -----> Installing SQLite3
remote:  !     Push rejected, failed to compile Python app.
remote:
remote:  !     Push failed
remote: Verifying deploy...
remote:
remote: !	Push rejected to young-ridge-54422.
remote:
To https://git.heroku.com/young-ridge-54422.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/young-ridge-54422.git'
$ heroku buildpacks:set https://github.com/heroku/heroku-buildpack-python.git#hotfix-sqlite3-heroku-16
Buildpack set. Next release on young-ridge-54422 will use https://github.com/heroku/heroku-buildpack-python.git#hotfix-sqlite3-heroku-16.
Run git push heroku master to create a new release using this buildpack.
$ git push heroku master
Enumerating objects: 3, done.
Counting objects: 100% (3/3), done.
Writing objects: 100% (3/3), 225 bytes | 225.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote:
remote: -----> Python app detected
remote: -----> Installing python-3.6.8
remote: -----> Installing pip
remote: -----> Installing SQLite3
remote: -----> Installing requirements with pip
remote:        Collecting pysqlite (from -r /tmp/build_6e93c0582aa08dc657e2d66021424c61/requirements.txt (line 1))
…

thanks :)


move foodcritic+rubocop+chefspec to their own matrix sections

and stop double-testing PRs.

@tas50 @iennae update to the "template" cookbook.


Build option

Hello,
Thanks a lot for this module, I like it a lot.
I thought it could be helpful to add a build option to allow people to use heatpack to actually, well, build the project.
The pull request allows to use a -b flag that runs webpack and generate the project under the dist directory.
To achieve that, I monkey patched the config dirtily and created a new index just for a character file which I'm not particularly proud of ;)
So the code is far from perfect, your feedback is more than welcome.
If you think this is a good idea we might want to consider adding a second config for production.
What do you think? Couldn't this be helpful?

First and foremost, thanks for the Pull Request!
I agree it could be helpful, particularly once you want to show somebody else what you've been working on, but it takes heatpack beyond its intended scope as a command for hot reloading without having to set up your own config or dev dependencies.
That "I'm ready to share this" point is usually where I first set up all the standard stuff a project needs - including a build - but I don't think the heatpack config makes a good basis for taking that next step so I'd rather it not do that.
I've added a new section to the README to explain why there's no build option, with pointers to good references for creating your own build configs.
Thanks,
Jonny.

Fair enough. Thanks for the explanation


Log Curve Info not returning min max for metadata query only

When there is a metadata only query (no logData) does not return min max index. This actually needs to come from another set of api's
https://base-url/democore/channelreader/v4/channels/timeboundary
and
https://base-url/democore/channelreader/v4/channels/depthboundary respectively

Fixed.Will deploy after Demo Done.

Pending further Min/Max Data review/  New ETA is 6/17 update by 3pm @sukhendumukherjee

DEV/Test teams will collaborate on this item


unsupported animation target path weights

@kcoley
raise Exception('Unsupported animation target path! {}'.format(target_path))
Exception: Unsupported animation target path! weights

You can download this model from here. buster_drone glTF autoconverted format
To get this animation to build I removed the paths referring to weights in the glTF ascii file. However, the usda animation is distorted.

Looks like this is an issue with morph targets not being implemented in this tool.  I created an issue to track this feature request: https://github.com/kcoley/gltf2usd/issues/17

Great. Btw, I managed to get a simple transform animation created in Cheetah3d export to fbx file type and using the fbx2Gltf command tool build glTF file... which successfully converts to a usda file... animation also works as expected in Xcode beta6.
However, with another animation file  using the same fbx conversion process the animation has mesh with scaling problems, the model is slightly more complicated but still a transform animation. I’m will try and reproduce the scaling issue and pinpoint what’s causing it.

I am going to try to work on this, since I very much need these for one of my projects. Do you have any pointers for docs/methods to traverse? Or maybe a USD model with morph targets?

@ox If you have some time, that would be great.  Here are the docs on USD skeletons and blend shapes: https://graphics.pixar.com/usd/docs/api/usd_skel_page_front.html
And here are the glTF docs on Morph Targets:
https://github.com/KhronosGroup/glTF/tree/master/specification/2.0#morph-targets
@wave-electron referenced a model with morph targets in this issue, and I believe your carrot model also has them.
Here is a simple glTF sample model which also has morph targets and may be good to start with since it is simpler: https://github.com/KhronosGroup/glTF-Sample-Models/tree/master/2.0/AnimatedMorphCube

@kcoley @ox  Apple also has some sample python scripts for building usda files as part of their USDPython standalone library v 18.09.  I have a live usdz example of skinnedMeshAnimation with weights.
skinnedMeshAnimation
skinnedMeshAnimation.py.txt
Another Apple sample usda file
soccerBall.usda.txt

Reading the specs more I've found that there are two different kinds of weights in glTF: weights for morph targets and weights for joints. Weights for morph targets how much each BlendShapes affects vertices position, whereas weights for joints are the just how much each joint transformation affects the vertex at that point (WEIGHTS_0 in glTF). I think USD and glTF are very similar in how they do skinning though it seems glTF has stronger BlendShape support (USD doesn't support normal or tangent blends). This also makes me think #18 is a duplicate of this issue.
So first I would define a SkelAnimation for each Mesh (glTF Meshes can have multiple morph targets they blend between) with blendShapes. The tokens for the blendShapes would be each of the primitive's targets' accessor's names:
def SkelAnimation "skel-anim-a-mesh" {
  uniform token[] blendShapes = ["%(accessor[primitive.targets[idx].output].name)", ...]
  float[] blendShapeWeights = [0, ...]
  ...
}

Then for each Mesh to define BlendShapes using the vertices from the POSITION accessor (since USD doesn't support tangent or normal blends):
def Mesh "some-mesh" {
  def BlendShape "%(accessor[primitive.targets[idx].output].name)" {
    uniform vector3f[] offsets = <accessor[primitive.targets[idx].output].data>
  }
  ...

  uniform token[] skel:blendShapes = ["%(accessor[primitive.targets[idx].output].name)", ...]
  rel skel:blendShapeTargets = [<%(accessor[primitive.targets[idx].output].name)>, ...]
  ...
}

Could I define the following in the SkelAnimation to animate BlendShape weights per each target's input timestamp?
blendShapeWeights.timeSamples = {
  %(target.input.timestamp): [%(target.output[weightIdx]), %(target.output[weightIdx+1)],
  ...
}

Does USD just let you define .timeSamples for any property to let you animate it?
Does any of this sound right?

@ox

This also makes me think #18 is a duplicate of this issue.

Yes, this would be a duplicate of #18 .  And glTF does provide more options in terms of representing the blend shape data so some intermittent steps may need to be done during export to USD.

Could I define the following in the SkelAnimation to animate BlendShape weights per each target's input timestamp?

Yes, that should work theoretically.

Does USD just let you define .timeSamples for any property to let you animate it?

Yes, USD lets you animate any primvar, or primitive attribute property.  You can even introduce new variables and animate them, though they will probably be ignored by USDZ in terms of working in ARKit

@kcoley Could you elaborate more about what intermittent steps might need to be done? The thing that comes to mind is re-calculating normals since they are not blendable, but I might be wrong.

So after a bit of fiddling I got far enough where I embed the Mesh in a SkelRoot, define a SkelAnimation on it, make BlendShapes on the Mesh and link everything up: gist. I think the next thing I need to do is map the output of the targets to the blendShape they affect.

Hi @ox .  Looks great! I'll check out the branch this weekend.

Ok, so after a bit more work I managed to:

correctly align blendshape names so they match in the SkelAnimation-defined names and those targeted in each Mesh's blendShapes token uniform
correctly managed to fetch multiple blend shape weights for each keyframe by passing in the ratio of outputs to input frames

@ox does the usda animate on your end?

@kcoley It should but for some reason the timeCodes are wrong. It's not even rendering a preview for the model, but I think that might be the timecodes

It doesn't seem to be just timecode related. Any kind of blendShape stuff seems to break the iOS renderer.


Map constructor accepts arrays of 2-tuples, but not Immutable equivalent.

I found this surprising:
> Immutable.Map([[1,2]])
Map { 1: 2 }
> Immutable.Map(Immutable.fromJS([[1,2]]))
Map { undefined: undefined }

It particular, it's the inside tuples that it needs to be plain arrays:
> list
List [ List [ 1, 2 ], List [ 3, 4 ] ]
> Immutable.Map(list.map(x => x.toArray()))
Map { 1: 2, 3: 4 }
> Immutable.Map(list.toArray())
Map { undefined: undefined }

A bug, or a misunderstanding on my part? What is the preferred way to form a map from an immutable list of 2-tuples? Thanks!

This is a current limitation of the library. Lists aren't consumed as tuples. I agree with you that this should be possible though, so I'll leave this task open until I can investigate.

:thumbsup:

This was fixed in the v3.7.0 release


feat: feature flag operation

@bimalgrg519, the calendar doesn't show if you do the following steps.
1- Click on New Operation
2- Click on the Kill Switch tab
3- Click on Event Rate
4- Click on Enable tab
5- Click on the Schedule
Can you take a look?

@cre8ivejp  resolved.

@cre8ivejp  I have fixed following issues as per our last discussion.

Display the current event rate as 0% until the minimum counts reached.
Add Total Count Events in the UI.
Add a tootltip in the current event rate info icon.
Make the graph according to the threshold percentage.

@bimalgrg519, can you round the percentage?
8%, 16%, 24%, ...
Also, please update the field name percentage on the create page to Threshold.

@bimalgrg519, can you fix this?
When I click to edit an event rate, the radio button focuses on the wrong button. The focus should be on the event rate.

@cre8ivejp  Above issues has been resolved.

@bimalgrg519, please fix the translations on the form.
Conditions -> 条件
Threshold -> スレッショルド
Also, the data format on the left side should be the same as on the right for scheduled operations. Use the created info.

@bimalgrg519, can you change to list 11 points when you create the percentage graph?
I want you to divide it by 10 but not include the zero in the calculation. So it should have 11 points until the threshold.
E.g.
0-5-10-15-20-25-30-35-40-45-50

Also, please these translations.
Enable -> 有効
Kill Switch -> キルスイッチ
Schedule -> スケジュール
Event Rate -> イベントレート
Start date -> 開始日時

@bimalgrg519, please keep the original primary button color.
The one you used is for the new design.

@cre8ivejp Above four issues has been resolved. Please have a look.

@bimalgrg519, did you push the changes?

@bimalgrg519, did you push the changes?

Sorry. Please take a look now.

@bimalgrg519, when the event rate is zero in the completed tab, it shows as "0%", but on the active tab, it only shows "0".
Can you add the percentage?

@bimalgrg519, when the event rate is zero in the completed tab, it shows as "0%", but on the active tab, it only shows "0". Can you add the percentage?

@cre8ivejp  Percentage added.

@cre8ivejp  Translations added.

@masaaania  Changes have been added.


"Generate Release Notes V2.21.3" configuration bug

VSTS Extension you are using
Generate Release Notes V2.21.3
Where are you running it?
Microsoft Visual Studio Team Foundation Server (on premise)
Version 15.117.26714.0
Version of Extension/Task
Its is an older version on premise. We cannot upgrade at the moment for licence cost reason so if the problem is solved in future version it's ok, it's not a big issue.
Expected behaviour and actual behaviour
When using the extension i expected to see input box to specify maxItem (workitem and changeset as mentionned in your spec). But nothing is visible.

Steps to reproduce the problem
Install Extension
Create a Release
Add Task "Generate Release Notes" to the Release
Trying to configure MaxWorkItem/MaxChangeset

I can't repeat this issue, and I am only using standard fields in the the task definition so there should be no reason why the text field for the two values (which both default to 50) should not be shown.
The task was tested on TFS 2017 so it should not be an issue.mI have also retested on TFS 2018
You could try removing and re-adding the extension as I have seen caching issues in the past

I removed and re-added with the same symptom. I even removed the "crossplatfrom version" just in case.
Maybe in the TFS 2015 version, the type "integer" is not understood in your config
      "name": "maxWi",
      "type": "integer",
      "label": "Maximum Work Items to return",
      "defaultValue": "50",

I don't know which language is used behind the scene, maybe "Int16" would have work ;)
Anyway, as the default 50 number seems to be sufficient by now, you can close this issue... or keep it opened for other people comments. Up to you.
Thanks for your good work.

OK, thanks for the update. I don't propose to go back to TFS 2015 support (extensions where very new then).
Hope you get budget to upgrade to TFS 2018 or VSTS soon.

My comment above is wrong the version 15.117.26714.0 is for TFS 2017 Update 2 RTM (and not 2015)
https://blogs.msdn.microsoft.com/tfssetup/2013/11/21/what-version-of-team-foundation-server-do-i-have/
Sorry for that mistake.

Still not much I can do, sounds like a local issue as I cannot repeat the problem

No pb, it's fine. I'll investigate with my team


python311Packages.pytest-httpx: 0.27.0 -> 0.30.0

Diff: https://github.com/Colin-b/pytest_httpx/compare/refs/tags/v0.27.0...v0.30.0
Changelog: https://github.com/Colin-b/pytest_httpx/blob/v0.30.0/CHANGELOG.md
Description of changes

Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
24.05 Release Notes (or backporting 23.05 and 23.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 290797 run on x86_64-linux 1

6 packages failed to build:

odoo
odoo.dist
odoo15
odoo15.dist
python311Packages.sunpy
python311Packages.sunpy.dist

135 packages built:

certbot-full
frigate
home-assistant-component-tests.airthings_ble
home-assistant-component-tests.aranet
home-assistant-component-tests.bluemaestro
home-assistant-component-tests.bluetooth_adapters
home-assistant-component-tests.bluetooth_le_tracker
home-assistant-component-tests.bthome
home-assistant-component-tests.denonavr
home-assistant-component-tests.devolo_home_network
home-assistant-component-tests.discovergy
home-assistant-component-tests.dormakaba_dkey
home-assistant-component-tests.eufylife_ble
home-assistant-component-tests.fjaraskupan
home-assistant-component-tests.gardena_bluetooth
home-assistant-component-tests.glances
home-assistant-component-tests.govee_ble
home-assistant-component-tests.homekit_controller
home-assistant-component-tests.ibeacon
home-assistant-component-tests.inkbird
home-assistant-component-tests.kegtron
home-assistant-component-tests.keymitt_ble
home-assistant-component-tests.ld2410_ble
home-assistant-component-tests.led_ble
home-assistant-component-tests.luftdaten
home-assistant-component-tests.moat
home-assistant-component-tests.mopeka
home-assistant-component-tests.onvif
home-assistant-component-tests.oralb
home-assistant-component-tests.private_ble_device
home-assistant-component-tests.qingping
home-assistant-component-tests.rapt_ble
home-assistant-component-tests.rmvtransport
home-assistant-component-tests.ruuvi_gateway
home-assistant-component-tests.ruuvitag_ble
home-assistant-component-tests.sensirion_ble
home-assistant-component-tests.sensorpro
home-assistant-component-tests.sensorpush
home-assistant-component-tests.snooz
home-assistant-component-tests.switchbot
home-assistant-component-tests.thermobeacon
home-assistant-component-tests.thermopro
home-assistant-component-tests.tilt_ble
home-assistant-component-tests.totalconnect
home-assistant-component-tests.xiaomi_ble
home-assistant-component-tests.yalexs_ble
lexicon (python311Packages.dns-lexicon)
lexicon.dist (python311Packages.dns-lexicon.dist)
llm (python311Packages.llm)
llm.dist (python311Packages.llm.dist)
paperless-ngx
python311Packages.aiocurrencylayer
python311Packages.aiocurrencylayer.dist
python311Packages.aioruuvigateway
python311Packages.aioruuvigateway.dist
python311Packages.certbot-dns-ovh
python311Packages.certbot-dns-ovh.dist
python311Packages.denonavr
python311Packages.denonavr.dist
python311Packages.devolo-plc-api
python311Packages.devolo-plc-api.dist
python311Packages.elmax
python311Packages.elmax.dist
python311Packages.glances-api
python311Packages.glances-api.dist
python311Packages.httpx-auth
python311Packages.httpx-auth.dist
python311Packages.iceportal
python311Packages.iceportal.dist
python311Packages.intellifire4py
python311Packages.intellifire4py.dist
python311Packages.luftdaten
python311Packages.luftdaten.dist
python311Packages.netdata
python311Packages.netdata.dist
python311Packages.notifications-android-tv
python311Packages.notifications-android-tv.dist
python311Packages.onvif-zeep
python311Packages.onvif-zeep-async
python311Packages.onvif-zeep-async.dist
python311Packages.onvif-zeep.dist
python311Packages.pydiscovergy
python311Packages.pydiscovergy.dist
python311Packages.pyrmvtransport
python311Packages.pyrmvtransport.dist
python311Packages.pytest-httpx
python311Packages.pytest-httpx.dist
python311Packages.simple-salesforce
python311Packages.simple-salesforce.dist
python311Packages.softlayer
python311Packages.softlayer.dist
python311Packages.total-connect-client
python311Packages.total-connect-client.dist
python311Packages.zeep
python311Packages.zeep.dist
python312Packages.aiocurrencylayer
python312Packages.aiocurrencylayer.dist
python312Packages.aioruuvigateway
python312Packages.aioruuvigateway.dist
python312Packages.denonavr
python312Packages.denonavr.dist
python312Packages.devolo-plc-api
python312Packages.devolo-plc-api.dist
python312Packages.elmax
python312Packages.elmax.dist
python312Packages.glances-api
python312Packages.glances-api.dist
python312Packages.httpx-auth
python312Packages.httpx-auth.dist
python312Packages.iceportal
python312Packages.iceportal.dist
python312Packages.intellifire4py
python312Packages.intellifire4py.dist
python312Packages.luftdaten
python312Packages.luftdaten.dist
python312Packages.netdata
python312Packages.netdata.dist
python312Packages.notifications-android-tv
python312Packages.notifications-android-tv.dist
python312Packages.onvif-zeep
python312Packages.onvif-zeep-async
python312Packages.onvif-zeep-async.dist
python312Packages.onvif-zeep.dist
python312Packages.pydiscovergy
python312Packages.pydiscovergy.dist
python312Packages.pyrmvtransport
python312Packages.pyrmvtransport.dist
python312Packages.pytest-httpx
python312Packages.pytest-httpx.dist
python312Packages.simple-salesforce
python312Packages.simple-salesforce.dist
python312Packages.total-connect-client
python312Packages.total-connect-client.dist
python312Packages.zeep
python312Packages.zeep.dist

sunpy is marked as broken and odoodepends on qtwebkitwhich is marked as insecure.


Airtable API may not always return fields in the same order

Since fields are returned as nested JSON this is in line with how the JSON spec works.
BUT... the YAML serialization does care about order. So if Airtable's API randomly returns fields in a different order it will produce different YAML, which means if it's being kept in a git repo you'll get a pointless commit - e.g. this one: https://github.com/natbat/rockybeaches/commit/96acfae66b89606e40e1d54fc4059e9744e010a4

Fix is to change sort_keys to True here: https://github.com/simonw/airtable-export/blob/d6113f630182fa5b8f8bd328aa77f4b4033aab0d/airtable_export/cli.py#L42

JSON export in #2 will need to do this too.


Allow multiple runs

Geant4 allows multiple runs with different generator settings by having multiple /run/beamOn commands and changing generator settings between them. This is useful if e.g. you want to simulate some events at one source position followed by a some events at another position, etc., without needing to execute WCSim once for each position. You can just set the mac file to do them sequentially.
But this doesn't work in WCSim because the EndOfRunAction recreates (overwrites) the output root file, so only the final run gets saved.
To fix this, the StartOfRunAction can check the run number and either (re)create the output file for the first run, or open it to append for subsequent runs. Also, when writing each event, the tree itself is filled rather than filling individual branches, because when filling branches it was then required to specify manually the number of events in the tree. It's better to just fill the tree so the number of events is automatically correct, rather than tracking it through multiple runs and specifying it manually.
Tested with a macro file ending with
/gps/direction -1 0 0
/run/beamOn 2
/gps/direction 1 0 0
/run/beamOn 3

Checked that the output had five events in total, the first two events simulated tracks with direction (-1, 0, 0) and the final three simulated tracks with directions (1, 0, 0).

Thanks Tom
I've updated it to fill the options tree for each run, and to track which events are in which run using the already existing (but never properly implemented, until now) run number in the event header. This run number corresponds to the entry in the options tree for a given event, as well as simply specifying which /run/beamOn command produced the event.
I added the suggested documentation, with additional documentation about the options tree entries and run number in the event header.

Thanks @nickwp I'll merge this on green


cigien: Watch exnp.com

cigien requests the watch of the watch_keyword exnp\.com. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

exnp\.com has been seen in 3 true positives, 0 false positives, and 0 NAAs.

exnp\.com has been seen in 3 true positives, 0 false positives, and 0 NAAs.

Approved by Jeff Schaller in Charcoal HQ

Approved by Jeff Schaller in Charcoal HQ


xlength and zlength check

We have constructors:
p = CGaussian(3, 2, Dense(2, 3))
where we do not check consistency of the arguments of xlength and mapping.
Current constructors allowed me to define:
dec_dist = CGaussian{T,UnitVar}(nx, nz, f)
with incompatible f. Surprisingly it was possible to train it! It behaved weird only when calling loglikelihood.
I would like to have at least some consistency checks, or automatic reading of xlength and zlength.
The Variance type can be specified manually. Now it is guessed from the network, I think it should be the other way around.

They are already checked if you just call CGaussian(nx,nz,f) without any parametric types. The overloaded constructor will infer the correct varinace type

That is what I would prefer to change. I want to specify what variance structure of the Gaussian I want. I do not want to infer it from the size of the mapping.
Think about generalizations. If I have CMixture, I want to define what parameters are shared across components using switches. If the mappings are not compatible with my choice, I want an error message.
As it is now, I define mapping and some heuristics will tell me what type of distribution is defines.

Ok I see your point, sorry for the misunderstanding.
It would be possible to implement checks in a similar way as the variance type is inferred right now, no problem.
However, now that I am working with convolutions of n-dimensional time series in the mapping I have some  issues with that because the input size is not inferrable through the network. maybe we just have to leave this responsibility up to the user?
I have also not made up my mind on how to handle n-dimensional input timeseries in general. It would be nice to have an additional slength (state/observation length), but maybe there is a more general way of doing this?

if we have xsize/zsize (#43) it will be easier to do the checks, but there still is the problem that we have to check if the mapping is on the GPU somehow. I have not come up with another way than checking for CuArray, but that means that we will depend on CuArrays.
I think it would be easier if we would just implement a manual function check_sizes(model, x) that performs the check manually...

xlength/zlength will be removed all together in #36


Parse error

Hi,
Trying to use the plugin. I get this when adding it to my project:
res://addons/repl/repl_env.gd:339 - Parse Error: Identifier "GodotPhysicsServer3D" not declared in the current scope.
res://addons/repl/repl_env.gd:339 - Parse Error: Identifier "GodotPhysicsServer3D" not declared in the current scope.
res://addons/repl/repl_parser.gd:-1 - Compile Error:
res://addons/repl/control.gd:-1 - Compile Error:
modules/gdscript/gdscript.cpp:2726 - Failed to load script "res://addons/repl/control.gd" with error "Compilation failed". (User)
res://addons/repl/control.gd:7 - Invalid call. Nonexistent function 'new' in base 'GDScript'.
Running on Godot Engine v4.2.2.stable.mono.official
And installing it via the AssetLib on 4th July 2024

Hey, thanks for letting me know.
I'm guessing you don't have some Physics 3D classes loaded.
I found a way to dynamically load classes from the base environment into the REPL environment. So, this should go away after the next release (just submitted to the asset lib).
Let me know if it resolves the issue for you.

It is working, thanks!


Deleting entry in position in RAYX-UI crashes the viewer

Describe the bug
View title
To Reproduce
Delete all numbers in any position (x,y,z) entry
Expected behavior
No change, until enter is pressed.

Fixed in a340a1b5


final touches to main sass

@devinmarieb The Sass for the main webapp is pretty locked in and Im working on the media query now.  Let me know what you think!

can't wait to check it out!

i like the visual cue that the user is selected to sort. and nice scrollbar!


Spark 1.3 and saveToPhoenix

Upgrade to Spark 1.3. Update SchemaRDD to DataFrame API
Implement write() on PhoenixRecordWritable
Add a 'saveToPhoenix' RDD helper in PhoenixRDDFunctions
Remove PIG dependency, add some exclusions to prevent overwriting Spark deps
Add sbt-maven-plugin so we can use 'sbt console'
Add shims to allow directly saving java.util.Date and org.joda.time.DateTime as java.sql.Date
Fix ugly PDataType lookup table, we can actually use .instanceOf directly
Bump to 0.0.4-SNAPSHOT

I've made a fair number of changes here in order to support my internal requirements, the most striking of which is Spark 1.3.
We're upgrading our platform across the board to Spark 1.3 and Phoenix 4.3.0, and I want to move off of using the Pig integration to directly using phoenix-spark, or something based on it.
If there's anything here you don't want, or would prefer this split up into smaller commits, let me know and I'd be happy to help out. It might make sense to have a Spark 1.2 and a Spark 1.3 branch, for instance.

This would make a good new module in phoenix. Have you considered sending a patch our way?

I think it's an awesome idea, if you guys aren't opposed to Scala in your repo.  Spark also introduced a new spark-packages repo, although I don't think that's mutually exclusive(https://databricks.com/blog/2014/12/22/announcing-spark-packages.html)
One of the challenges with having Spark integration is the versions and APIs keep changing, although I think with 1.3 that will start to cool off a bit.
Ultimately it's Robert's call what he wants to do with this repository. A patch candidate up to Phoenix has my vote, and I don't mind spearheading that with Robert's approval.


[Question] How to install pre requisite programs on windows?

how does one install these prerequisite on windows os natively
g++
make
libpango-1.0-0
libpangocairo-1.0-0
im assuming that python-dev and python3-pip (pip3) is already installed when one has python already setup. if not can anyone tell me how to install

Hey @JunkyardCat installing under Windows is possible, but trickier, as *nix systems offer a much richer set of command line tools.
I would strongly suggest you install either WSL or MinGW and then follow the installation instructions as per normal.
Otherwise, you'll have to run the individual commands which are contained in the makefile, and ensure that any required system-level binaries or libraries are installed - the setup process will give an error message if a particular requirement is not met.


make update-codegen.sh runnable on Mac

What type of PR is this?

/kind bug
What this PR does / why we need it:
uname -o isn't supported on Mac. Here is the output of man uname:
UNAME(1)                                                           General Commands Manual                                                          UNAME(1)

NAME
     uname – Print operating system name

SYNOPSIS
     uname [-amnprsv]

DESCRIPTION
     The uname utility writes symbols representing one or more system characteristics to the standard output.

     The following options are available:

     -a      Behave as though all of the options -mnrsv were specified.

     -m      print the machine hardware name.

     -n      print the nodename (the nodename may be a name that the system is known by to a communications network).

     -p      print the machine processor architecture name.

     -r      print the operating system release.

     -s      print the operating system name.

     -v      print the operating system version.

     If no options are specified, uname prints the operating system name as if the -s option had been specified.

SEE ALSO
     hostname(1), machine(1), sw_vers(1), uname(3)

STANDARDS
     The uname utility conforms to IEEE Std 1003.2-1992 (“POSIX.2”).  The -p option is an extension to the standard.

macOS 12.6
November 9, 1998
macOS 12.6

Also fix a passthrough bug when the script is running on Unsupported OS.
Which issue(s) this PR fixes:

Fixes #
Does this PR introduce a user-facing change?:

NONE

SGTM
/approve

/ok-to-test

Thanks @spacewander!
/lgtm


ENORESTARGET No tag found that was able to satisfy 1.0.0

Error occurs when I update the bower package.
bower sticky#1.0.0 ENORESTARGET No tag found that was able to satisfy 1.0.0

any update on this? getting the same problem

Try updating bower


net: lwm2m: update internal API select_writer()

As per review of PR #5893, this is a follow-up patch to update
select_writer() API to match the behavior of select_reader() API.
Quote from OMA-TS-LightweightM2M-V1_0_1-20170704-A. 8.2.5
"An Object Instance or Resource is Read by sending a CoAP GET to the
corresponding path. The response includes the value in the
corresponding Plain Text, Opaque, TLV or JSON format according to
the specified Content-Format (see section 6.4).The request MAY
specify an Accept option containing the preferred Content-Format
to receive. When the specified Content-Format is not supported by
the LwM2M Client, the request MUST be rejected."
Therefore, we do not attempt to assign a content-format when the
requested one is not supported. Instead, we return an error code.
Signed-off-by: Robert Chou<EMAIL_ADDRESS>

Codecov Report

Merging #5970 into master will increase coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #5970      +/-   ##
==========================================
+ Coverage   43.77%   43.77%   +<.01%
==========================================
  Files         485      485
  Lines       54660    54660
  Branches    10690    10690
==========================================
+ Hits        23926    23930       +4
+ Misses      30594    30590       -4
  Partials      140      140

Impacted Files
Coverage Δ

samples/philosophers/src/main.c
100% <0%> (+1.56%)
:arrow_up:

tests/kernel/obj_tracing/src/philosopher.c
88.88% <0%> (+16.66%)
:arrow_up:

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 54d7207...c3e02c4. Read the comment docs.

@jukkar please help to review the PR. Thanks.


Can't install with Refile 0.6.0

I noticed Refile was tagged with version 0.6.0 today. This gem has a dependency of '~> 0.50' and therefore won't install with it. Can we safely bump that dependency?

Or relax the dependency to "refile", "~> 0.5" like refile-mini_magick?

I was planning to release them simultanesously, but I ran into a problem, so it'll have to wait until tomorrow.

Good :crescent_moon: and see you tomorrow then :)

Good morning! New gem is released.

thanks @jnicklas!!!


clear is missing in QueryResult type definition

Describe the bug
When calling useQuery in a TypeScript project, clear is not defined as a valid key of the returned object.
To Reproduce

Visit https://codesandbox.io/s/youthful-kilby-1ktsq?file=/src/App.tsx
See TypeScript error: Property 'clear' does not exist on type 'QueryResult<unknown, Error>'. ts(2339)

Expected behavior
clear should be part of the type definition for QueryResult.
Additional context
There might be other keys that are currently missing in the type definitions.

:tada: This issue has been resolved in version 2.4.12 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Failing test for filtered table

It looks like the _fast_combine_chunks needs some kind of additional logic. I noticed this behavior failing in ADAM ETL after updating quivr in our skymapper pipeline.

That's embarassing. See #52. I'll cut a 0.6.6 release for this.


MySQL: document type limitation

Need to have a doc page to document data connectors limitation on types.

Close by: https://github.com/spiceai/docs/pull/420


Update prereqs.rst

I have proposed some explination of the commands.
We are typing in the commands but we don't know the pros and cons.
If we write pros and cons with important, rather all commands it will be quite helpful as the support of HLF is quite less and I have seen people quitting it because of the same very reason.
Signed-off-by: Ali Akbar<EMAIL_ADDRESS>

Type of change

Bug fix
New feature
Improvement (improvement to code, performance, etc)
Test update
Documentation update

Description

Additional details

Related issues

Thank you for the input. Pull Requests are for actual changes to the repository. It appears rather than making changes, you are discussing what should be done. In this case an Issue would be more appropriate. I'll close this PR but please do open an Issue so that the proper resolution can be discussed.


blueprint reader: support implicit matset by detecting ho volfrac fields

Description
Extends support high order volume fractions detection to a new case for the blueprint plugin.
Injects a matset into the blueprint index when fields named volume_fraction_001 --> volume_fraction_00Z are detected.
Then exist HO logic from @BradWhitlock kicks into gear during fetch.
Type of change

[ ] Bug fix~~
[X] New feature~~
[ ] Documentation update~~
[ ] Other~~

How Has This Been Tested?
Tested on a large test data set on LC.
Working on getting a smaller data set for our test suite.

Reminders:

Please follow the style guidelines of this project.
Please perform a self-review of your code before submitting a PR and asking others to review it.
Please assign reviewers (see VisIt's PR procedures for more information).

Checklist:

[x] I have commented my code where applicable.~~
[ ] I have updated the release notes.~~
[ ] I have made corresponding changes to the documentation.~~
[x] I have added debugging support to my changes.~~
[ ] I have added tests that prove my fix is effective or that my feature works.~~
[ ] I have confirmed new and existing unit tests pass locally with my changes.~~
[ ] I have added new baselines for any new tests to the repo.~~
[x] I have NOT made any changes to protocol or public interfaces in an RC branch.~~

Yes, I will add an entry to the release notes.


Inbox Redesign

This comes from the #2177 thread.
Just thoughts on improving the inbox.
Related Issues:

[ ] Updated icons #2177
[ ] Possible removal or replacement of speaker icon reason here also works well with #2482
[ ] Githubs Issue Dashboard feature #2413 which aids in #1265, #2065, #2272
[ ] Displaying the author #1885
[ ] Grouping repos in the inbox allowing for additional actions such as read all for a specfic repo etc #2411

We should try to think about #620, this is where we redesigned away from complexity.
In the past Ryan has thrown a few design out to the twitterverse to see what people liked. I think that makes sense here as well.
@kocheck will hopefully mock up a few designs. If anyone has thoughts or suggestions comment away!

Just a quick update from #2413 to keep things up to date here.
Ryan suggested using the navigation bar drop down that we see throughout the app in the inbox and when you click it your presented with a context menu where you can select different inbox modes.
Modes being:

Master list
Notifications
Assigned
Mentioned
etc

A new request would go out with each reload of the inbox since we wouldn’t be doing intense filtering in-app (GitHub’s api allows for a filter parameter)
@rnystrom currently drop down opens action sheet, context menu would be different from the norm.
Do we mind? Do we want to switch all action sheets to context menu (as maybe a later goal)?
Sent with GitHawk

Menu would give us a ton more options w/ the UI (icons, selection indicator, section headers, etc)

Open to considering large titles for inbox too

Design should also consider how issue #2473 would affect this screen as well 👍

Just make sure you’re on latest TF as some of the OP has changed :)

Nice!
Sent with GitHawk

Reading through all the additional issues and taking notes to make some soft design requirements. I have a question for whomever it may concern. ✌
Reading through the issues I have an idea to make the inbox more flexible for different workflows. How do you folks feel about allowing the user to choose what mode should be default in the inbox?
So for me, I like to have a repo overview. It looks like some people like to see what they are assigned and what they are subscribed to.
Does that make any sense?
Sent with GitHawk

Makes sense to me @kocheck


how to disabled ReactiveDropdownSearch and ReactiveDateTimePicker

Hi I love using reactive forms widgets specially ReactiveDropdownSearch and ReactiveDateTimePicker .
I have an app where in some cases i need to disable   ReactiveDropdownSearch and ReactiveDateTimePicker in my form so that the user cannot click and pick a value.  however, I am not able to find out how to do it.  is there an attribute like  disable: true that i can use in these two widgets so that they become disabled (gray out)  and nothing happens when user click on them?
thanks
ER

Hi
Check the FormControl
It has bool attr for this purposes

https://github.com/joanpablo/reactive_forms#how-enabledisable-a-widget

@rodriger06 any feedback?

Closing due to the missing response
Feel free to reopen


Add support for nuget package generation

Fixes #2
This PR expands support for nuget package generation including common metadata such as projectURL, package license and package tags. A README.md file has been included in the runtime identifier folder to explain how to correctly build the package.
At the moment, assemblies in the runtimes folder ~need to be resolved manually by calling SetLibraryPath or using the deps.json file when publishing a .NET Core app. Nevertheless t~ are resolved automatically by both .NET Core and .NET Framework according to the relevant runtime identifier, as long as the package architecture-specific folders are correctly declared. This package follows the ~foreseeable~ standards for platform-specific native dependencies using runtime identifiers going forward from .NET 5.0 as documented in RID Catalog and in the section on architecture-specific folders.

Hi. I tried to test this and I failed. I may have done it wrong, though. Here were my steps:

clone and build a fresh lsl.dll (x64/Release)
clone your fork of this repo and checkout the issue-2 branch
copy my fresh lsl.dll into the 'runtimes' folder
build liblsl (the csharp one)
pack liblsl
using the nuget package manager, I made a new package source from the pack target directory <path_to_issue-2>\liblsl-Csharp\bin\Release---this is where my freshly packed lsl_csharp.2.0.0.nupkg is
install lsl_csharp using the nuget package manager
see little upside down yield sign warning icons on the project Dependencies tree
in visual studio, set SendData as the startup project
build and run
read System.DLLNotFoundException message that lsl is not found

It seems like I am missing something (like a call to SetDllPath or some .json nonsense).
I also tried giving lsl.dll the copy always property. This copies it into a folder called runtimes in the bin/netstandard2.0 folder but this does not help.
Then I tried adding lsl.dll to the liblsl project and giving it 'copy always'. Now the nupkg works, but I still get the yellow warning tags on my dependencies, which is bad.

Finally, just looking ahead a bit, I would say that once this whole process is fixed up, we need to do some adjustment to the package names and other meta-data. 'lsl_csharp' is probably not the best name for the package. Obviously it is .NET if it is on NuGet. I think just 'LSL' is correct. I also think that due to the contributions of others (especially @tstenner and also yourself) that listing Christian Kothe as the sole author is not appropriate anymore. Then I think it would be good to CI this thing and upload it to nuget.org automatically every time we need to update it.

@dmedine thanks for giving it a try! I would be curious to hear more about the warnings you got when installing the package, do you have any error message text you could share?
Regarding native binary resolution, there is indeed not a good unified story yet for how they should be handled.
For the "old" .NET framework, what me and several others have used in the past is to include .props and .targets script files in the build folder to automatically copy binary dependencies to the output directly. Dependencies themselves would be stored in the build\native folder. This worked really well with NuGet and didn't require to change anything on the p/invoke bindings layer.
However, there was no convention for identifying native platforms besides the native folder and it didn't work very well with separating library from application layer (i.e. you want to keep libraries as platform agnostic as platform and push the platform specific resolution to applications). The current official approach to address this is to use reference assemblies in .NET Core / .NET 5.0.
In this new world the ref folder stores platform agnostic assemblies which are used exclusively for build purposes (e.g. libraries) and the runtimes folder keeps the platform specific implementation including native dependencies. At runtime dotnet/ASP.NET figure out the current host plaform and load a matching implementation assembly from the runtimes folder.
The story is complicated outside ASP.NET land however as there is no host that can automatically load up the dependencies. This has led to confusion from library authors which end up hacking different ways to do the runtime resolution. Some of them use LoadLibrary and search for the native dependencies in 20 different possible locations, others expect dependencies to magically be placed in specific subdirectories from the executable folder and include build scripts to copy files there.
I personally quite dislike these options as it makes it really easy to end up with different incompatible strategies for doing native dependency loading (some of them even incompatible with different underlying OSes) which compounds the DLL hell problem further.
My current inclination then is to keep things as simple as possible, using all of the agreed upon standards while avoiding any premature decisions on things which are not standard. The p/invoke level already uses the underlying library resolution mechanism of the host OS, so no need to reinvent that wheel and try to reimplement complicated search strategies. Of course, we need a way to make sure the native dependencies included in the package end up in at least one of the places which gets scanned.
Currently I know how to do this with build scripts for .NET framework but really need to study the story better for .NET Core.
This PR was meant as a way to start this conversation for liblsl which I will need to find a solution for in the short/medium-term. .NET 6.0 is also around the corner with more insights on the p/invoke story.
I will investigate a bit further and report back more details in this thread or the original issue. I totally agree with your thoughts regarding package name, but kept it to avoid changing the existing project conventions right away.

Regarding copyright its a complex story. You are totally correct regarding contributions, but tracking these things can get messy. As a rule of thumb I assume that if the original author picked the MIT license then their intention is to keep the legal struggles to a minimum and simply provide an umbrella for contributions. The other extreme is GNU and hybrid model is Apache or a CLA (contributor license agreement). We can have a contributors file and change the copyright to "and contributors" but maybe I would raise a new specific issue for this?

We can have a contributors file and change the copyright to "and contributors" but maybe I would raise a new specific issue for this?

Hmm. I hadn't thought that there would be legal ramifications to extend the authors list. I just wanted to acknowledge some of the more recent contributions. I don't think anyone is going to cry if they don't see their name on the package, though ;-).
In any case, the license should also be rolled into the package... but let's deal with the cart before the horse.

@dmedine thanks for giving it a try! I would be curious to hear more about the warnings you got when installing the package, do you have any error message text you could share?

No messages, just the little warning badges

Sounds like Microsoft has not dealt with this very well. This has been my experience with other projects that rely on native code in C-sharp as well---even ones published published by Microsoft!
It is possible, of course, to insert xml inside the .csproj file that organizes all the dependencies properly (e.g. https://github.com/microsoft/onnxruntime/blob/master/csharp/sample/Microsoft.ML.OnnxRuntime.InferenceSample/Microsoft.ML.OnnxRuntime.InferenceSample.csproj), although Visual Studio doesn't seem to have any features that let you do this apart from by hand. This doesn't help much, though, since there is no way to inject these kinds of instructions into a client application .csproj file from a NuGet install.
Then again, this stuff is for developers. No one would ever expect a C++ developer not to have to provide include and linker directives when using building against 3rd party library. I want it to be as 'easy' pip, but maybe it just isn't. That onnxruntime library I pointed out above, for example, is on NuGet, but you still have to find and copy the underlying native dll for it to work in your code.

Actually, you can include MSBuild snippets in a NuGet package which will be included as if they are part of the final build project using the .props and .targets files (.props gets added at the beginning of the csproj file, and the .targets snippets get added at the end).
So in theory you could do an automatic deployment script which is correctly executed at build time. However, this is the old way of deploying a build in .NET framework, which doesn't seem to be the way that the new .NET Core / ASP.NET Core operate, where its the runtime, rather than the build, which is responsible for locating these dependencies (unless you are building an AoT project).
I'll experiment a bit more and update this PR accordingly.

Thanks for tackling this problem :-)
Due to the current situation I don't have a PC with all the .Net SDKs and Visual Studio at hand, but I'll give my two cents anyway:
CI builds are trivial, I've already added a commit to build liblsl-Csharp and the examples. The hard problem is 1) putting the native library somewhere 2) loading the correct library at runtime, and 3) work across .Net versions.
I'm certainly missing something, but I'm currently leaning towards not including the native library in the NuGet package.
NuGet packages are zip-files with a control file, so we can create them alongside the regular liblsl-builds and users will then have to depend on liblsl_csharp (or whatever better name you find) and e.g. liblsl.win.x86_64.

We can have a contributors file and change the copyright to "and contributors" but maybe I would raise a new specific issue for this?

From my understanding that's perfectly fine, but I'd be thankful if you could open a separate issue.

Regarding copyright its a complex story.

I guess the LGPL license would make it a lot more simple: everyone's free to use liblsl_csharp as long as they provide the source code for liblsl_csharp upon request. Contributions are derivative works, so they are automatically under the LGPL.
With the MIT license, I'd assume that contributors add their name to the license file / authors tag in the project file if they regarded their contributions as substantial or just overlook it otherwise. To be sure, we should ask previous contributors.

Sounds like Microsoft has not dealt with this very well. This has been my experience with other projects that rely on native code in C-sharp as well---even ones published published by Microsoft!

You wouldn't have this problem if you didn't stray from the Right Path, i.e. pure C# or the occasional Windows-only DLL :wink:

This PR was meant as a way to start this conversation for liblsl which I will need to find a solution for in the short/medium-term. .NET 6.0 is also around the corner with more insights on the p/invoke story.

It's a good start, and if we were to merge your PR and publish NuGet packages without the native library included it'd be better than the status quo and with new all-batteries-included releases we would only improve the situation.

Thanks for your feedback. Diving deeper I am happy to say I can now give concrete answers to all of the above and if you test drive the last commit following the folder structure outlined in the README file it should work out of the box.

putting the native library somewhere

You have to lay out the native dependencies exactly like so:
\runtimes
    \linux-x64
        \native
            liblsl.so
            liblsl.so.1.14.0
    \osx-x64
        \native
            liblsl.dylib
            liblsl.1.14.0.dylib
    \win-x64
        \native
            lsl.dll
    \win-x86
        \native
            lsl.dll

Documentation is extremely hard to find, but it exists
Basically the thing that kept tripping me is the extra native folder which has to come under the architecture-specific runtime identifier. This NuGet issue on packing platform specific native assemblies was extremely informative.

loading the correct library at runtime

It turns out the compiler will copy the dependencies to the right place and resolve them automatically if the above layout is followed.
On .NET Core the runtime knows how to resolve dependencies straight from the runtimes folder, so everything just works cross-platform (!)
On .NET Framework a specific architecture has to be specified using the RuntimeIdentifier element, like so:
<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net472</TargetFramework>
    <RuntimeIdentifier>win-x64</RuntimeIdentifier>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="lsl_csharp" Version="2.0.0" />
  </ItemGroup>

</Project>

This will make the compiler copy specifically the 64-bit native binary to the project. For completion, this is also possible for .NET Core.

work across .Net versions

It works across both .NET Core and .NET Framework without changing any code 🥳
Regarding license, I would say in this case sticking with MIT is much easier, especially with a single-file project where any derived works can simply place the copy of the license in LSL.cs. Also it follows naturally from the license for liblsl itself.

I guess the LGPL license would make it a lot more simple: everyone's free to use liblsl_csharp as long as they provide the source code for liblsl_csharp upon request. Contributions are derivative works, so they are automatically under the LGPL.

Regarding license, I would say in this case sticking with MIT is much easier, especially with a single-file project where any derived works can simply place the copy of the license in LSL.cs. Also it follows naturally from the license for liblsl itself.

For the record I am very, very, very opposed to changing the license from MIT to LGPL. I can't think any scenario in which a commercial software producer would be willing to use an open source library if it was licensed under LGPL. I think it is also a potential legal vulnerability to switch the license since so many people are already using this library. Many of them are in research, so it is unlikely to bite us (or, more specifically, Christian), but better safe than sorry.
I am in between computers at the moment and the new one (which is where I am set up to test this right now) is at home.

Actually, you can include MSBuild snippets in a NuGet package which will be included as if they are part of the final build project using the .props and .targets files (.props gets added at the beginning of the csproj file, and the .targets snippets get added at the end).

That is very interesting! I was looking for some clues about this yesterday and couldn't find much. Can you point me to some examples/docs about how to do this? I keep finding hints on MSDN, but we all know how spotty those pages are.

@dmedine of course, I use this technique all the time! The only requirement is to include the .props and .targets file in the build folder of the NuGet package with relevant subdirectory depending on your target platform (e.g. net472, netstandard2.0, etc).
Documentation is here: https://docs.microsoft.com/en-us/nuget/create-packages/creating-a-package#include-msbuild-props-and-targets-in-a-package

Relevant documentation is here: https://docs.microsoft.com/en-us/nuget/create-packages/creating-a-package#include-msbuild-props-and-targets-in-a-package

Hiding in plain sight.

Nope.
Still doesn't work.
I put the native .dll in the correct folder, I copied the .props and .targets files from obj to the correct target directory for lsl_csharp, and I added the RunTimeIdentifier tag into SendData.csproj. But when I run the build, it still doesn't have access to lsl.dll and throws the System.DllNotFoundException as soon as the code tries to use it. Here is a screenshot of my setup. Maybe you can see something I've missed

Hmm, it looks like in this example you still have a ProjectReference to the original project. Can you try removing that and adding just the package reference?
Also in this case you don't need to add any .props or .targets files, the package should already have everything that is necessary.
If it still doesn't work, I can package a working example in a zip file to see if you can reproduce a successful build.

Ah yes, that seems to have done the trick!
I would propose the following

approve and merge this PR

open a new issue to discuss the following:

update the README in the repository to reflect the new 'correct' way of handling the lsl.dll/.so/.dylib dependency

get CI/CD running to handle building all the needed NuGet packages and pushing them to nuget.org

replace the ../../liblsl.csproj references with references to the online nuget packages

also include instructions for building and installing the nuget package locally in the top level README (or some other document)

Great work :+1:

It turns out the compiler will copy the dependencies to the right place and resolve them automatically if the above layout is followed.

The compiler, nuget or MSBuild? As long as it works I mostly don't care, but when it doesn't it'd be good to know which tool to blame.

On .NET Framework each build can only support a specific architecture which can be specified using the RuntimeIdentifier element

.NET Framework is Windows-only (from a practical perspective) and Unity doesn't use nuget packages, so I don't this this is a big deal.

I can't think any scenario in which a commercial software producer would be willing to use an open source library if it was licensed under LGPL

I can think of at least one: they don't link against a static library and have someone who will sent out the source code for this specific library on request. The Qt guys would like everyone to think that commercial usage without source disclosure isn't allowed, but that's one of the major selling (pun intended) points of the LGPL compared to the regular GPL.
Well, back to topic:
Do I understand it correctly that one nuget package has to contain the native libraries for all target platforms? It it is so, I'd rather have the C# wrapper depend on a separate package with the binaries so it's easier to add platforms (e.g. android and all the arm family members) without changing the wrapper package.

I can think of at least one: they don't link against a static library and have someone who will sent out the source code for this specific library on request. The Qt guys would like everyone to think that commercial usage without source disclosure isn't allowed, but that's one of the major selling (pun intended) points of the LGPL compared to the regular GPL.

Indeed this is what LGPL is meant for; and, you are right there are circumstances where it makes sense. But, in my experience, vendors are loath to relying on open source producers doing this for them. The nice thing about MIT is that you can simply set it and forget it. Otherwise, vendors will prefer to pay a premium for garaunteed stability and support. There are exceptions. FFTW is notable and there are probably others.

The compiler, nuget or MSBuild? As long as it works I mostly don't care, but when it doesn't it'd be good to know which tool to blame.

I believe the answer to this is MSBuild. It is then our task to make the nuget package glom-on-able enough for MSBuild to be able to get it right. Please correct me if I am wrong.

Do I understand it correctly that one nuget package has to contain the native libraries for all target platforms? It it is so, I'd rather have the C# wrapper depend on a separate package with the binaries so it's easier to add platforms (e.g. android and all the arm family members) without changing the wrapper package.

I am not clear on this point either. I am not sure, though, if it is right to have 2 packages or simply add support for new targets piecemeal. 2 packages seems hard for the client, but bumping a versions just for a new target support seems wrong to me. Maybe there is another strategy for this in dotnet land that I don't know about---but I kind of doubt it :/

But, in my experience, vendors are loath to relying on open source producers doing this for them.

Sony has a page where they put the source code for all the libraries they are using and from what I've understood it'd be enough to push the "fork" button once and link to the forked repository. But you're right that any licensing requirements are hard to sell in corporate environments.

I am not clear on this point either. I am not sure, though, if it is right to have 2 packages or simply add support for new targets piecemeal. 2 packages seems hard for the client, but bumping a versions just for a new target support seems wrong to me.

Other package managers (apt, conda, rpm, …) offer a way to say "Package A depends on foobar" and one of several packages providing "foobar" can be used to resolve the dependency. Other package managers allow dependencies like "Package A depends on PackageB>=1.2 | PackageC>=1.4". As far as I can see, Nuget doesn't allow this.
Still, "liblsl_wrapper x.y" could depend on "liblsl_native x.y" and additions to the native package could then be pushed as "liblsl_native x.y.2". Question for the nuget experts: is it sufficient to refresh the nuget packages so the updates to transient dependencies are pulled?
One thing I'd like to see is a way to tell "I want to use liblsl_wrapper, but I have my own lsl.dll/.so/.dylib". Is there an attribute (e.g. <PackageReference Include="liblsl_csharp" Version="1.2" IgnoreDependencies="absolutely"/>) to ignore dependencies? I guess in this package the reference could be conditional <PackageReference Include="liblsl_native" Condition="'$(liblsl_skip_native)' == 'true'"/>) and the including project could set liblsl_skip_native, but does this work with nuget?

One thing I'd like to see is a way to tell "I want to use liblsl_wrapper, but I have my own lsl.dll/.so/.dylib". Is there an attribute (e.g. ) to ignore dependencies? I guess in this package the reference could be conditional ) and the including project could set liblsl_skip_native, but does this work with nuget?

That is actually an excellent point that I hadn't considered. However, I think the answer is that people who want to link against some custom/non-standard lsl.dll/so/dylib are going to have to roll their own. I think that it is reasonable to expect people that want to do such a thing don't need NuGet---especially since we have pretty clear build instructions.

Other package managers allow dependencies like "Package A depends on PackageB>=1.2 | PackageC>=1.4". As far as I can see, Nuget doesn't allow this

That, as they say, is the rub. I fear we are still no closer to resolving this. Actually, I have been using Microsoft's onnxruntime  library for some projects and you can get the C# wrapper on NuGet no problem, but your code will not run until you right-click on the project, change the extension to 'all .', etc. just as we suggest with adding lsl.dll to a Visual Studio project. On the other hand, that is a pretty Linux-y development project---even though it is from Microsoft---so what do they know?
One idea occurred to me and that is to issue one just with the standard Windows/Linux/Mac shared libs and then for Android or other more exotic platforms have a LSL-Android/whatever package. I believe there is some precedent for that on NuGet.

If we were to somehow solve the "add a reference to liblsl-wrapper but ignore the liblsl-native dependency"-problem, the wrapper could depend on a native package with the most common libraries and users on exotic platforms could just depend on liblsl-wrapper-without-native-libs and liblsl-native-android-arm8.

@dmedine @tstenner I believe you can do this already at package import time when you specify which assets to include or exclude from each package (see here).
For example, to exclude the built-in native dependencies, it is enough to do the following:
  <ItemGroup>
    <PackageReference Include="lsl_csharp" Version="2.0.0">
      <ExcludeAssets>native</ExcludeAssets>
    </PackageReference>
  </ItemGroup>

I believe you can do this already at package import time when you specify which assets to include or exclude

That would solve the problem with exotic targets, but those users would still download several megabytes of irrelevant binaries. I guess we can just release a batteries-included version of the wrapper and then later remove the libraries and depend on a separate liblsl-native package.
Regarding the versioning, I have already suggested something in a different PR:

On the other hand, I want to avoid compatibility lists where wrapper XY 2.1.4-2.1.8 supports liblsl 1.14.1-1.14.5 and so on. As Chad noted, we don't have an 'official' release so we can't break anything officially released, but that's something that needs a solution not just in this case but also for future releases.

My quick and dirty proposal: liblsl is currently at 1.14.0, so we could version the wrapper like X.1.14.Y, where X gets incremented for breaking wrapper changes and Y for non-breaking wrapper changes. 1.14 corresponds to the minimum supported liblsl version, so it conforms to semantic versioning, allows breaking changes in wrapper (like this one) and it's more or less plainly visible which liblsl version is needed, even with something like <IP_ADDRESS>. Again, just a proposal and I'd be happy to get your input on it.

@tstenner I like the suggestion regarding versioning, it is useful to be able to map the wrapper version directly to the base library version
I agree it would not be a problem to have two packages, one with the common native targets, and another one without. I would probably start with the package with batteries-included, since advanced users can still just copy LSL.cs to their project anyway.
Regarding project name, is there a conclusion? To avoid name clashes I like to use the .NET suffix to indicate the wrapper (I prefer it to csharp, since technically you are able to use it with VB or managed C++), here are some suggestions:

liblsl.net
Lsl.Net
LSL.Net

The middle one keeps acronym capitalization following .NET convention. The first and last ones break this, but they have enough of their own justification to be picked too.

LSL.Net

This one :+1:

Hello everyone!
I recently wrote a C# wrapper for liblsl and plan to submit some PRs to liblsl-csharp.
Currently, SharpLSL has implemented packaging for liblsl native libraries and supports .NET Framework and .NET 6.0+. You can check it out here: https://github.com/myd7349/SharpLSL/tree/main/Source/SharpLSL.Natives .
I'm thinking that once this PR is merged, I might be able to further improve the NuGet packaging based on it.


Taylor - Signup Form Component

What type of PR is this? (check all applicable)

[ ] Feature
[ ] Refactor
[ ] Bug Fix
[ ] Optimization
[ ] Documentation Update
[x] Other (please specify here: Signup Form Component)

Description of what this Pull Request does

The Signup Form component should accept the users name/email/password after hitting the "SIGN UP" button
The Signup Form component will clear after each submission
The Signup Form is validated
The Signup Form component will push users to Firebase database

Related Tickets & Documents

Closes  https://github.com/AritDeveloperCircle/findyourpeople/issues/58
Related Issues: https://github.com/AritDeveloperCircle/findyourpeople/issues/31

QA Instructions, Screenshots, Recordings

Added/updated tests?

[ ] Yes
[ ] Not Yet, and here is why: explain here
[x] I need help with tests
[ ] No, and here is why: explain here

Not sure if the images used are meant for this type of app...
Maybe it can be reviewed for a more fitting use case.
Overall ok.

I was just using it for a placeholder image.

@msarit I'm still having issues with Github. Can I delete this PR/create a new branch for this component? I've tried many things and recreating this PR seems like the best option.

@msarit I'm still having issues with Github. Can I delete this PR/create a new branch for this component? I've tried many things and recreating this PR seems like the best option.

@TaylorDJones11 Alright Taylor, go for it!


[$250] IOU - User can enter a number with few leading zeros like 0000.12 in money request field

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

Action Performed:

Open App
Click the FAB button and select Request Money
Enter a number with a few leading zeros, like 000000.12 or 0000012.12

Expected Result:
The user cannot enter a number with a few leading zeros, like 0000.12
Actual Result:
User can enter a number with few leading zeros, like 0000.12 and this number will be saved when user returns to this screen.
Workaround:
Unknown
Platform:

Where is this issue occurring?

Web
iOS
Android
Desktop App
Mobile Web

Version Number: 1.1.98-0
Reproducible in staging?: Y
Reproducible in production?: Y
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:

https://user-images.githubusercontent.com/43996225/189175076-3044c87d-8ef3-4af0-a22a-bd9bce46ac25.mp4
Expensify/Expensify Issue URL:
Issue reported by: Applause internal team
Slack conversation:
View all open jobs on GitHub

Proposal

In that case, whereby the user cannot add leading zeros we should disable the save button to restrict saving those values

Changes
isDisabled={!this.state.amount.length || parseFloat(this.state.amount) < 1}
https://github.com/Expensify/App/blob/c9b41bff8b728073db85f38782b591a0fd4a9772/src/pages/iou/steps/IOUAmountPage.js#L276-L284
Results

Proposal
We should add REGEX to check the entered value on IOUAmountPage and also give message or error message if entered value doesn't match REGEX.

Let's make this external

Job post: https://www.upwork.com/jobs/~01d42e47c2501ce865

Proposal
I will solve the issue by using  javascript functions that will replace zeroes with null so if you keep entering zeroes the function will replace the value with null ,hence, not allowing user to enter leading zeroes.

@parasharrajat I have gone through the contribution guideline  and edited my proposal.If I am missing something again kindly guide.

@parasharrajat i have come from upwork and it says that the proposal should not include the code

Proposal :
Using Regex  /^0+(?!.|$)/ in striptCommaFromAmount function :
/**
     * Strip comma from the amount
     *
     * @param {String} amount
     * @returns {String}
     */
    stripCommaFromAmount(amount) {
+        return amount.replace(/^0+(?!\.|$)/, '');
    }

with adjustment cursor position :

getNewSelection(oldSelection, prevLength, newLength) {
+        if (oldSelection.start < newLength && oldSelection.end < newLength) {
+            return { start: oldSelection.start + 1, end: oldSelection.end + 1 };
+       } else {
+           return { end: newLength, start: newLength };
+       }
    }

updateAmountNumberPad(key) {
        // Backspace button is pressed
        if (key === '<' || key === 'Backspace') {
            if (this.state.amount.length > 0) {
                this.setState((prevState) => {
+                    const selectionStart =  prevState.selection.start - 1;
                    const amount = `${prevState.amount.substring(0, selectionStart)}${prevState.amount.substring(prevState.selection.end)}`;
                    if (!this.validateAmount(amount)) {
                        return prevState;
                    }
+                    return { amount, selection: {start: selectionStart, end: selectionStart} };
                });
            }
            return;
        }

        this.setState((prevState) => {
            const amount = this.addLeadingZero(`${prevState.amount.substring(0, prevState.selection.start)}${key}${prevState.amount.substring(prevState.selection.end)}`);
+            const formattedAmount = this.stripCommaFromAmount(amount)
+            if (!this.validateAmount(formattedAmount)) {
                return prevState;
            }
+            const selection = this.getNewSelection(prevState.selection, prevState.amount.length, formattedAmount.length)
+            return { amount: formattedAmount, selection };
        });
    }

updateAmount(text) {
        this.setState((prevState) => {
+ const amount = this.stripCommaFromAmount(this.addLeadingZero(this.replaceAllDigits(text, this.props.fromLocaleDigit)));
            return this.validateAmount(amount)
+                ? { amount: amount }
                : prevState;
        });
    }

<TextInputWithCurrencySymbol
                        formattedAmount={formattedAmount}
                        onChangeAmount={this.updateAmount}
                        onCurrencyButtonPress={this.navigateToCurrencySelectionPage}
                        placeholder={this.props.numberFormat(0)}
                        preferredLocale={this.props.preferredLocale}
                        ref={el => this.textInput = el}
                        selectedCurrencyCode={this.props.iou.selectedCurrencyCode || CONST.CURRENCY.USD}
                        selection={this.state.selection}
                        onSelectionChange={(e) => {
+                           if (e.nativeEvent.selection.start <= formattedAmount.length && e.nativeEvent.selection.end <= formattedAmount.length) {
+                                this.setState({ selection: e.nativeEvent.selection });
+                            } else {
+                               this.setState({ selection: { end: formattedAmount.length, start: formattedAmount.length } });
                            }
                        }}
                    />

Result :
https://user-images.githubusercontent.com/30913369/190551824-bad7e63a-4de7-4b0c-be2c-1292ec132a7b.mp4

@parasharrajat how about my proposal?

yeah, I guess so.

closing


Impact

https://www.figma.com/design/6yFZ706ebyXpjG4VULay2E/EarthFi?node-id=89-1504&t=8jfO3KbS5NOKKsOJ-4

Desktop view done.
To be reopened for other screens


Use subtree again to allow publishing the crate

cargo package is not currently working because cargo package ignores subfolders with Cargo.toml in them. We can't work around that with submodules since they don't allow making local changes (and I couldn't get it to work in conjunction with sparse-checkout).
This reverts to using subtree (which in practice makes this PR include the entire zcash tree, so it looks much bigger than it is).
We were using subtree (exactly to solve this issue) but we had reverted to submodule because subtree behaves strangely if you use squash-and-merge. For this reason, please do not squash-and-merge this PR (though if that ends up happening it's easy to fix, and it's now documented in the README).
I also did not use cargo release for this PR because I only noticed later that we were supposed to use it. So I manually made the changes. I'm not sure if we want to keep using it from now on.

OK, GitHub won't allow us to rebase-and-merge because subtree creates merge commits which are not allowed in that strategy. So I'll just squash-and-merge and we can sort this out later. I'll create a ticket for that soon

https://github.com/ZcashFoundation/zcash_script/issues/35


Remove maven instructions

while they'd be relevant for java users in general, pretty much nobody uses maven for android dev anymore.

Looks good to me. Sorry, I missed this when you first posted it. Please resolve the conflict and we can merge.


logstash 2.3.1

Please add too 2.2.4 (Y)

Done :+1:

Seems 2.2.4 is not yet published?

Is there anyway we can re-run the travis? I'm pretty sure it'll pass this time! 🙏

LGTM


Egg Drop Problem [GSSoC - 2021]

I would like to add the egg drop problem under dp in C++
Please assign it to me, thanks.

I would like to work on this issue in python
Please assign it to me, I'm GSSOC21 participant, thanks

i like to contribute to this project ...my code will be in java with proper comments and test cases

I am GSSOC'21 participant and l would like to work on this problem and would make sure to implement a neat and clean code ,and make it easy to understand using comments.

Hey, I am Kanchan Jeswani, a GSSOC'21 participant.
I am a Competitive Programmer and C++ enthusiastic.
I would love to solve this problem using CPP with well-explained code and along with its time and space complexity.
Please assign me this issue.
Hope to hear from you.
Discord username  kanchan19#3152
@anubhavitis @dheerajkotwani @tarun26091999 @todi-2000 @geekquad @plazzy99 @rudrakshi99

I would like to add the egg drop problem under dp in C++
Please assign it to me, thanks.

Can go ahead and implement in C++

I would like to add the egg drop problem in java . Please assign it to me.

Can go ahead and implement in Java

I would like to work on this issue in python
Please assign it to me, I'm GSSOC21 participant, thanks

Can go ahead and implement in Python

@shreyanspoddar Can you take a look!