"No such file or directory" error when filename contains non-ASCII character

OS: Windows 10
Visual Studio 2017 (15.9.24)
We noticed a change in behavior when upgrading netcdf, with file names that contain non-ascii characters. The following sample fails with a "Error: No such file or directory" when using netcdf-c 4.8.1. It works on netcdf-c 4.7.0. (Note: We also used some different build options between these builds, but both built towards hdf5 1.10.5).
#include <netcdf>
#include <stdlib.h>
#include <stdio.h>
#include <netcdf.h>

#define FILE_NAME "C:/Users/X/Documents/fooÅ.nc"
#define ERRCODE 2
#define ERR(e) {printf("Error: %s\n", nc_strerror(e)); exit(ERRCODE);}

int main()
{
	std::cout << "Start\n";
	int ncid;
	int retval;

	if ((retval = nc_open(FILE_NAME, NC_NOWRITE, &ncid)))
		ERR(retval);

	if ((retval = nc_close(ncid)))
		ERR(retval);

	printf("*** SUCCESS reading example file %s!\n", FILE_NAME);
	return 0;
}

Is this a known issue?

@DennisHeimbigner could this be related to the msys pathing work?

Windows cross UTF8 is known to be tricky because Microsoft refuses to bite the bullet
and get rid of the windows default encoding CP-1252.
Let me try out your test program and see what is going on.

As near as I can tell, in the above code, the 'Å' character is CP-1252, not UTF-8.
There is probably a way to get the visual studio compiler to treat the input file as utf-8,
but I do not know what it is off-hand.

@DennisHeimbigner I checked the encoding closer using the following change to the sample, and yes, it is stored as CP-1252. The Å character is stored as 197 (dec) = 0xC5, matching https://en.wikipedia.org/wiki/Windows-1252.  This works with netcdf-c 4.7.0, but not 4.8.1.
We observed this in a GUI  application where we use Qt, we use qUrl.toLocalFile().toLocal8Bit() to produce this string. This has worked for us fine on both Linux and Ubuntu, but with our upgrade of netcdf  it stopped working on Windows (it still works fine on Ubuntu).
#include <netcdf>
#include <stdlib.h>
#include <stdio.h>
#include <netcdf.h>

#define FILE_NAME "C:/Users/Stian/Documents/TestExport/fooÅ.nc"

#define ERRCODE 2
#define ERR(e) {printf("Error: %s\n", nc_strerror(e)); exit(ERRCODE);}

int main()
{
	int ncid;
	int retval;

	auto data = std::string{ FILE_NAME };
	for (std::size_t i = 0; i < data.size(); i++) {
		std::cout << " " << data[i] << " " << (int)((unsigned char)data[i]) << std::endl;
	}

	if ((retval = nc_open(FILE_NAME, NC_NOWRITE, &ncid)))
		ERR(retval);

	if ((retval = nc_close(ncid)))
		ERR(retval);

	printf("*** SUCCESS reading example file %s!\n", FILE_NAME);
	return 0;
}

Are you in  a position to change the 'qUrl.toLocalFile().toLocal8Bit()'
to produce utf8 and try that; perhaps their exists a '.toUTF8' or similar?

I ran across a note that says that as of windows 10 build 1903, that the 8 bit functions
can handle utf-8 (assuming the locale is set to .UTF-8.

Hi @DennisHeimbigner
I think you are referring to https://docs.microsoft.com/en-us/windows/apps/design/globalizing/use-utf8-code-page.
I have tested modifying the reproducer above, by encoding the Å character in UTF-8 ("\xc3" "\x85"), and enabling the Windows setting "Beta: Use Unicode UTF-8 for worldwide language support", following https://stackoverflow.com/questions/57131654/using-utf-8-encoding-chcp-65001-in-command-prompt-windows-powershell-window/57134096#57134096. Code below.
Then the file can be correctly opened. (Without this Beta setting enabled the file can not be opened, it gives "HDF error".)
On Windows when using the 8-bit (const char*) file functions then the encoding is expected to be matching the local encoding on Windows, which will vary by region (unless that Beta setting above is set).  It is mentioned in https://docs.microsoft.com/en-us/windows/apps/design/globalizing/use-utf8-code-page, in "-A vs. -W APIs". So I think there is a regression in netcdf where it no longer works with the locale encoding on Windows, unless the locale is changed to UTF-8 using this beta setting. This worked as expected in netcdf-c 4.7.0 but seems to be broken in 4.8.1.
#include <netcdf>
#include <stdlib.h>
#include <stdio.h>
#include <netcdf.h>

#define ERRCODE 2
#define ERR(e) {printf("Error: %s\n", nc_strerror(e)); exit(ERRCODE);}

int main()
{
	std::cout << "Start\n";
	int ncid;
	int retval;

	auto str = "C:/Users/Stian/Documents/TestExport/foo" "\xc3" "\x85"  ".zdf";
	auto data = std::string{ str };
	for (std::size_t i = 0; i < data.size(); i++) {
		std::cout << " " << " " << (int)((unsigned char)data[i]) << std::endl;
	}

	if ((retval = nc_open(data.c_str(), NC_NOWRITE, &ncid)))
		ERR(retval);

	if ((retval = nc_close(ncid)))
		ERR(retval);

	printf("*** SUCCESS reading example file %s!\n", data.c_str());
	return 0;
}

I have begun a discussion about this here:

https://github.com/Unidata/netcdf-c/discussions/2220


Fix issue 9

Close https://github.com/Open-CMSIS-Pack/cpackget/issues/9
This PR adds:

xml header <?xml version="1.0" encoding="UTF-8"?>, and
proper local URL prefix in local_repository.pidx: file://localhost/

All checks are green. I'm merging this and making a new release soon


TrackPlayer.seekTo(100) Doesn't Change Position When Outside TrackPlayer.getPosition()

I've included two code snippets below and hopefully it is a user error I'm seeing. Essentially if I run seekTo then play it doesn't seek as expected. If I wrap it in a getPosition it seeks as expected. My first thought was maybe the TrackPlayer isn't started but realized this is run in a promise chain based off setupPlayer. Is there a reason this is happening?
Example 1 (Working) - Seeks correctly then begins to play:
TrackPlayer.setupPlayer().then(() => {

  TrackPlayer.updateOptions({
    capabilities: [
      TrackPlayer.CAPABILITY_PLAY,
      TrackPlayer.CAPABILITY_PAUSE
    ]
  });

  return TrackPlayer.add(tracks);
}).then(success => {

  console.warn('Seeking to 100');

  // Load last position
  TrackPlayer.getPosition().then(position => {
    console.warn('Before seek position: ' + position)

    TrackPlayer.seekTo(100);
  });

  console.warn('Post seek')

  // Begin playback if argument is true
  if(startPlayback === true) {
    dispatch(play());
  }
}

Example 2 (Not Working) - Fails to seek and begins from the beginning of the first track:
TrackPlayer.setupPlayer().then(() => {

  TrackPlayer.updateOptions({
    capabilities: [
      TrackPlayer.CAPABILITY_PLAY,
      TrackPlayer.CAPABILITY_PAUSE
    ]
  });

  return TrackPlayer.add(tracks);
}).then(success => {

  console.warn('Seeking to 100');

  // Load last position
  TrackPlayer.getPosition().then(position => {
    console.warn('Before seek position: ' + position)
  });

  TrackPlayer.seekTo(100);
  console.warn('Post seek')

  // Begin playback if argument is true
  if(startPlayback === true) {
    dispatch(play());
  }
}

UPDATE: After further testing I've found the two flows below show it must be playing in order to seek. However the documentation states that in order to seek the player must be loaded. But from what I can tell it is loaded. Is this intended behavior? Is is possible to seek before actually beginning playback?
This flow works.
setupPlayer -> add -> play -> seekTo
This flow doesn't .
setupPlayer -> add -> seekTo -> play

Android, iOS or UWP?

iOS

Yep I am seeing the same issue, additionally no events are triggered so TrackPlayer.Component doesn't update. Any Ideas out there to solve this one?

This should be solved in v1.0.0. the calls are now async so please use await I believe you're just running these too fast sequentially.

Yes I noticed that play was not returning a promise and thus not waiting

Hmmm, just hitting this one. Anyone fixed this yet.


Can't switch accounts

I've created a bunch of new accounts but it doesn't switch to them automatically and it doesn't give me the option to switch from the menu either

No this isnt working @andresgalante at some point we actually removed this option on purpose.
I cannot find the issue but we had this functionality and removed it it still hasnt been added back.

Hey @timstackblock , this is actually the expected behavior. When you create a new wallet, you only have one account. If you only have one account, you can't switch accounts, you can only create a new account. The root cause of this issue is that when you clicked "create new account", you couldn't then switch to your new accounts. Now, you can successfully "create a new account", and then switch accounts.
Moving back to QA - lmk if you think the "create an account" issue is still present.

I currently cannot switch between my accounts. When I create a new account I get a message that says the account was created successfully but I do not get the option to switch. Please see the video link here http://somup.com/creX0bb1Q9

@timstackblock are you using the extension from this PR? https://github.com/blockstack/stacks-wallet-web/pull/1053 -> https://github.com/blockstack/stacks-wallet-web/actions/runs/644353231

Yeah, the video looks like the previous version. In the fixed version, the "Done" button has a spinner while the account is created.


GoSublime error: MarGo build failed

Output:
| GoSublime error: MarGo build failed
|                > This is possibly a bug or miss-configuration of your environment.
|                > For more help, please file an issue with the following build output
|                > at: https://github.com/DisposaBoy/GoSublime/issues/new
|                > or alternatively, you may send an email to<EMAIL_ADDRESS>|                >
|                >
|                > cmd: `['', 'build', '-v', '-x', '-o', 'gosublime.margo_r16.01.09-1_go1.5.3.exe', 'gosubli.me/margo']`
|                > stdout: ``
|                > stderr: ``
|                > exception: `Cannot find command `go``
|   install state: busy
| sublime.version: 3103
| sublime.channel: stable
|       about.ann: a16.01.09-1
|   about.version: r16.01.09-1
|         version: r16.01.09-1
|        platform: linux-x64
|            ~bin: ~/.config/sublime-text-3/Packages/User/GoSublime/linux-x64/bin
|       margo.exe: ~bin/gosublime.margo_r16.01.09-1_go1.5.3.exe (missing)
|          go.exe: go (missing)
|      go.version: go1.5.3
|          GOROOT: ~/.gvm/gos/go1.5
|          GOPATH: ~/.gvm/pkgsets/go1.5/global
|           GOBIN: (not set) (should usually be `(not set)`)
|       set.shell: []
|       env.shell: /bin/bash
|       shell.cmd: ['/bin/bash', '-l', '-c', '${CMD}']

Looks like it found the correct GOPATH and GOROOT, but for some reason it couldn't find the go command?
Running debian jessie, and tried with explicit GoSublime settings with GOPATH, and then with both GOPATH and GOROOT, removing and reinstalling completely (including rm the related GoSublime folders) restarting in between each attempt.  Nothing works.

Well, I am out of ideas.  Here is what I tried without success:

manually compiling

copied subli.me/margo to `$GOPATH/src
go build -v -x -o gosublime.margo_r16.01.09-1_go1.5.3.exe
adding to multiple bins:

~/.config/sublime-text-3/Packages/User/GoSublime/linux-x64/r16.01.09-1_go1.5.3/bin/
~/.config/sublime-text-3/Packages/User/GoSublime/linux-x64/bin/

After restarting sublime text I get the same error; it seems _bins_exist() can't find the executable.  Maybe it printed the wrong name, or maybe I have the wrong path?

adding the PATH to cmd.env:

'PATH': os.environ["PATH"],

setting the full path to go in the sh.Command arguments:

os.path.join(os.environ["GOROOT"], "bin", "go")

Both fail with the same tired message exception: Cannot find command go, which makes absolutely no sense to me unless sublime's python is somehow restricted like chroot (virtualenv?).

Hi,

  I have copied the go binaries into /bin/. and /usr/bin/. and the
  problem has stopped.

  Thanks

  /Konstantin

  On 16-02-14 12:38 AM, Casey DeLorme wrote:

  Well, I am out of ideas. Here is what I tried without success:

    manually compiling

        copied subli.me/margo to `$GOPATH/src
        go build -v -x -o
          gosublime.margo_r16.01.09-1_go1.5.3.exe
        adding to multiple bins:

            ~/.config/sublime-text-3/Packages/User/GoSublime/linux-x64/r16.01.09-1_go1.5.3/bin/
            ~/.config/sublime-text-3/Packages/User/GoSublime/linux-x64/bin/

  After restarting sublime text I get the same error; it seems _bins_exist()
    can't find the executable. Maybe it printed the wrong name, or
    maybe I have the wrong path?

    adding the PATH to cmd.env:

        'PATH': os.environ["PATH"],

    setting the full path to go in the sh.Command arguments:

        os.path.join(os.environ["GOROOT"], "bin", "go")

  Both fail with the same tired message exception: Cannot
      find command go, which makes absolutely no sense to me
    unless sublime's python is somehow restricted like chroot
    (virtualenv?).
  —
    Reply to this email directly or view
      it on GitHub.

Just to clarify, /bin as in the root bin folder(s)?  I'll give that a shot.

Yes, the /bin folder in the root of the
  system.

  On 16-02-15 10:55 AM, Casey DeLorme wrote:

  Just to clarify, /bin as in the root bin
    folder(s)? I'll give that a shot.
  —
    Reply to this email directly or view
      it on GitHub.

I gave you suggestion a try, still getting the same errors.  It can't find the margo binary, and it can't build it because it can't find go, but then it proceeds to tell me exactly where my go1.5 is installed at (eg. GOPATH and GOROOT).

$GOROOT/bin should automatically be included in $PATH so if ~/.gvm/gos/go1.5/bin/go really doesn't exist, I suggest you ditch gvm and install Go properly.

I have been using gvm for a while now; it adds convenience like being able to switch versions or upgrade very easily so I'd rather not ditch it.  It gets loaded by my ~/.bash_profile, and was working perfectly fine with GoSublime until the latest Sublime Text 3 update.
Given that the GoSublime plugin broke and not gvm, I'll continue using gvm and just hope the bug eventually gets addressed.

I'm not sure what the bug is supposed to be. The error log output shows that the go command doesn't exist and as I said, $GOROOT/bin should be included in $PATH but you haven't confirmed whether or not $GOROOT/bin/go exists, and is executable.

From a fresh terminal:
$ echo $GOPATH
/home/cdelorme/.gvm/pkgsets/go1.5.3/global

$ echo $GOROOT
/home/cdelorme/.gvm/gos/go1.5.3

$ echo $PATH
/home/cdelorme/.gvm/pkgsets/go1.5.3/global/bin:/home/cdelorme/.gvm/gos/go1.5.3/bin:/home/cdelorme/.gvm/pkgsets/go1.5.3/global/overlay/bin:/home/cdelorme/.gvm/bin:/home/cdelorme/.gvm/bin:/home/cdelorme/.bin:/home/cdelorme/.gvm/pkgsets/go1.5.3/global/bin:/home/cdelorme/.gvm/gos/go1.5.3/bin:/home/cdelorme/.gvm/pkgsets/go1.5.3/global/overlay/bin:/home/cdelorme/.gvm/bin:/home/cdelorme/.gvm/bin:/home/cdelorme/.nvm/versions/node/v5.5.0/bin:/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games

$ which go
/home/cdelorme/.gvm/gos/go1.5.3/bin/go

So, GOPATH and GOROOT are set, PATH contains GOPATH and GOROOT, and go exists at $GOROOT/bin/.

I just reinstalled the plugin, and things appear to be working again.  Might have been a recent update, going to close this ticket.  Thank you for the update.


Error getting LE certs with ingressroute tls.domains.main and tls.domains.sans configured

I am trying to configure a Traefik (v2.2.1) IngressRoute CRD resource as follows with the incubating traefik 2 chart (v8.6.1) in github at https://github.com/containous/traefik-helm-chart/tree/master/traefik:
ingressroute:
    enabled: true
    tls:
        enabled: true
        certResolver: production
        domains:
            main: prod0.api.spadash.com
            sans:
            - prod.api.spadash.com  # canonical dns name for apps to use for prod environment
            - spadash.com           # legacy dns name for prod environment, should be removed once apps updated

When I look at my traefik logs I see the following:
time="2020-06-21T02:16:35Z" level=info msg="Starting provider *acme.Provider {\"email\":\"vendor@spadash.com\",\"caServer\":\"https://acme-v02.api.letsencrypt.org/directory\",\"storage\":\"/data/acme.json\",\"keyType\":\"RSA4096\",\"dnsChallenge\":{\"provider\":\"route53\",\"delayBeforeCheck\":5000000000},\"ResolverName\":\"production\",\"store\":{},\"ChallengeStore\":{}}"
time="2020-06-21T02:16:35Z" level=info msg="Testing certificate renew..." providerName=production.acme
time="2020-06-21T02:16:37Z" level=error msg="Unable to obtain ACME certificate for domains \"prod0.api.spadash.com,prod.api.spadash.com spadash.com\" : unable to generate a certificate for the domains [prod0.api.spadash.com prod.api.spadash.com spadash.com]: acme: error: 400 :: POST :: https://acme-v02.api.letsencrypt.org/acme/new-order :: urn:ietf:params:acme:error:rejectedIdentifier :: Error creating new order :: Cannot issue for \"prod.api.spadash.com spadash.com\": Domain name contains an invalid character, url: " providerName=production.acme

Why is Traefik joining all domains.main and domains.sans hostnames with a space when requesting certs? Is this a bug in my chart configuration, the helm chart itself, or Traefik itself?
Many thanks in advance.

duplicate of #204


Add map method on ParseResult and Parser

While trying to tackle https://github.com/epfl-lara/StainlessFit/issues/21, I found the need to call .map(f) on a ParseResult, and since it looks like a lawful functor (to be verified), I thought I would just go ahead and add it, and ask for forgiveness later ;)
What do you think?
PS: A similar argument could be made for Applicative.zip and Monad.flatMap but I haven't really thought about those yet, though it intuitively seems like both should be lawful instances (famous last words™).

Yes, ParseResult is a bona fide Functor ! I didn't think it would be useful to include that interface, but if you have a use-case for it, why not. My reasoning was that you could/should call maps and co on Syntax, and then later do the conversion to Parser.
ParseResult is also an Applicative, but not a Monad. The reason is that Parser[A] is not a Monad itself.


question on RF algorithm

how to adjust the parameters of RF algorithm?

Use the random forest algorithm to select feature, and then use the selected feature to do analysis.

Oh, I know this, this exist the web on the sklearn to introduce the specific parameters, and I just use the variable to adjust in the function.

Random forest algorithm parameters, maybe you can refer to the web on the sklean, or browse the website which introduce the variables.


Scaling points for PRs based on size of the PR / complexity of the issue

Problem
Although the leaderboard tracks the pull requests that are made, it currently does not track how big or small the PR is.
Proposed Solution 1
Track the number of linked issues to the PR and increase the point by 1 for each linked issue.

@rithviknishad please assign me this issue

Hey @parthksingh1 any updates on this?

@rithviknishad  I want to resolve this issue .
After fetching issues length from pr . How it will show up in UI?

@rithviknishad @dgparmar14  just a quick heads up: I'll be pushing the PR for this in the next couple of days. Ran into a few hiccups initially, plus had mid-semester exams this week, so couldn't get to it sooner. Thanks for your patience!

If no one is working on this , I would like to work on this Issue

If no one is working on this , I would like to work on this Issue

Her @rash-27 , have you started working?
I was working on it and I have just solved the issue and I would be raising PR soon.
Sorry I did not ask for assigning it to me earlier.

@Samuel-Aktar-Laskar I too started working on this , but no problem.

This issue could be rescoped based on extracting information from story points assigned in projects board for the PR or the cross-referenced (linked) issue's story points.
cc: @bodhish

LGTM @rithviknishad


Using raw IMU data into cartographer_ros

My IMU is 'EBIMU-9DOFV4' from e2box company
I've never seen this imu according to cartographer_ros. ROS did not support this imu.
SO i published IMU node, and made imu topic.
However, I just want to make IMU data fit to cartographer_ros...
Here is my IMU data
rostopic echo imu

How can I change data to this?
http://docs.ros.org/api/sensor_msgs/html/msg/Imu.html

Try to read the IMU datasheet/example for understanding what these number are. Then write a node (or other similar way) to extract this data out and manipulate it following sensor_msgs/Imu format and publish it to topic /imu. Have fun!


Fixing worldscale for controllers

Changing scale of controllers based on worldscale and removing the double applying of worldscale to the tracking.
Haven't looked at hand tracking yet and still downloading SDK so I can test (had to reinstall my PC few weeks back, bah)
fixes #103

Just tried it. Position fix seems to work as intended. But the controller scale is probably Inverse. A world scale of 4.0 makes the player 4.0 larger...:

ups; posted in the wrong issue before; with the inverse scale size is correct; but it breaks the current setup of getting the right controller mesh by having a negative scale for the right controller:

@BastiaanOlij Any updates on this PR?
We'll release version 2.0 of the plugin to match Godot v3.2.2 release, so it'd be nice to have this fix included as part of the release.


Missing all data from only one table

Bug description
Once in a while my data from the table Highlights are all missing and I am not sure how it happened.
In terms of user flow:

They will select new Highlights
The API will delete the old Highlights
The API will create new Highlights

Here are the error logs so it can be due to the Collection table that I used when inserting the highlights.
2023-03-30 18:09:14.427 UTC [1768] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-03-30 18:09:14.427 UTC [1768] DETAIL:  Key ("tokenAddress")=(3qFsyU6xw46ZNXpVKSsi1sNMr1q8FsS7aF22QupLkV1t) already exists. 2023-03-30 18:09:14.427 UTC [1768] STATEMENT:  INSERT INTO "public"."highlights" ("created_at","userWallet","imageUrl","tokenAddress","collectionAddress","updated_at") VALUES ($1,$2,$3,$4,$5,$6), ($7,$8,$9,$10,$11,$12), ($13,$14,$15,$16,$17,$18) 2023-03-30 18:16:15.622 UTC [1896] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-03-30 18:16:15.622 UTC [1896] DETAIL:  Key ("tokenAddress")=(BRzEGTR34Fa7rmYtrmPK6ioNGZGEixYwbHfxMkmht9WD) already exists. 2023-03-30 18:16:15.622 UTC [1896] STATEMENT:  INSERT INTO "public"."highlights" ("imageUrl","userWallet","collectionAddress","updated_at","created_at","tokenAddress") VALUES ($1,$2,$3,$4,$5,$6) 2023-03-30 18:40:40.509 UTC [2367] LOG:  could not receive data from client: Connection reset by peer 2023-03-30 18:56:59.130 UTC [2656] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-03-30 18:56:59.130 UTC [2656] DETAIL:  Key ("tokenAddress")=(GTWQhG5vE9TwRovZw9Xz2RyD5Ef3JoN4vaW95qtJMPJa) already exists. 2023-03-30 18:56:59.130 UTC [2656] STATEMENT:  INSERT INTO "public"."highlights" ("userWallet","imageUrl","collectionAddress","updated_at","tokenAddress","created_at") VALUES ($1,$2,$3,$4,$5,$6), ($7,$8,$9,$10,$11,$12) 2023-03-30 18:58:04.768 UTC [2680] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-03-30 18:58:04.768 UTC [2680] DETAIL:  Key ("tokenAddress")=(GTWQhG5vE9TwRovZw9Xz2RyD5Ef3JoN4vaW95qtJMPJa) already exists. 2023-03-30 18:58:04.768 UTC [2680] STATEMENT:  INSERT INTO "public"."highlights" ("imageUrl","updated_at","collectionAddress","tokenAddress","userWallet","created_at") VALUES ($1,$2,$3,$4,$5,$6), ($7,$8,$9,$10,$11,$12) 2023-03-30 18:58:11.305 UTC [2680] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-03-30 18:58:11.305 UTC [2680] DETAIL:  Key ("tokenAddress")=(GTWQhG5vE9TwRovZw9Xz2RyD5Ef3JoN4vaW95qtJMPJa) already exists. 2023-03-30 18:58:11.305 UTC [2680] STATEMENT:  INSERT INTO "public"."highlights" ("tokenAddress","collectionAddress","imageUrl","updated_at","userWallet","created_at") VALUES ($1,$2,$3,$4,$5,$6), ($7,$8,$9,$10,$11,$12) 2023-03-30 19:00:14.204 UTC [2717] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-03-30 19:00:14.204 UTC [2717] DETAIL:  Key ("tokenAddress")=(GTWQhG5vE9TwRovZw9Xz2RyD5Ef3JoN4vaW95qtJMPJa) already exists. 2023-03-30 19:00:14.204 UTC [2717] STATEMENT:  INSERT INTO "public"."highlights" ("collectionAddress","imageUrl","tokenAddress","created_at","userWallet","updated_at") VALUES ($1,$2,$3,$4,$5,$6), ($7,$8,$9,$10,$11,$12), ($13,$14,$15,$16,$17,$18), ($19,$20,$21,$22,$23,$24), ($25,$26,$27,$28,$29,$30) 2023-03-30 19:01:51.998 UTC [2717] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-03-30 19:01:51.998 UTC [2717] DETAIL:  Key ("tokenAddress")=(GTWQhG5vE9TwRovZw9Xz2RyD5Ef3JoN4vaW95qtJMPJa) already exists. 2023-03-30 19:01:51.998 UTC [2717] STATEMENT:  INSERT INTO "public"."highlights" ("imageUrl","tokenAddress","created_at","collectionAddress","userWallet","updated_at") VALUES ($1,$2,$3,$4,$5,$6), ($7,$8,$9,$10,$11,$12), ($13,$14,$15,$16,$17,$18), ($19,$20,$21,$22,$23,$24), ($25,$26,$27,$28,$29,$30) 2023-03-30 19:02:52.473 UTC [2717] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-03-30 19:02:52.473 UTC [2717] DETAIL:  Key ("tokenAddress")=(GTWQhG5vE9TwRovZw9Xz2RyD5Ef3JoN4vaW95qtJMPJa) already exists. 2023-03-30 19:02:52.473 UTC [2717] STATEMENT:  INSERT INTO "public"."highlights" ("tokenAddress","updated_at","userWallet","imageUrl","created_at","collectionAddress") VALUES ($1,$2,$3,$4,$5,$6), ($7,$8,$9,$10,$11,$12), ($13,$14,$15,$16,$17,$18), ($19,$20,$21,$22,$23,$24), ($25,$26,$27,$28,$29,$30) 2023-03-30 19:26:13.352 UTC [3079] LOG:  could not receive data from client: Connection reset by peer 2023-03-30 19:59:21.377 UTC [3822] ERROR:  null value in column "updated_at" of relation "collections" violates not-null constraint 2023-03-30 19:59:21.377 UTC [3822] DETAIL:  Failing row contains (6vkCTrEZ6FMwqCNdzgK4i3GZwmk3ucBnBzPLUDPBtA4Y, Gamers King Olympus, 2023-03-30 19:59:21.37, null).
2023-04-05 08:20:22.889 UTC [47996] ERROR:  null value in column "updated_at" of relation "collections" violates not-null constraint 2023-04-05 08:20:22.889 UTC [47996] DETAIL:  Failing row contains (4uPCNJoXirHo8uHzMG2hAjSMAMjb5dJxoajh6armir7n, Gamers King Genesis, 2023-04-05 08:20:22.888, null). 2023-04-05 08:20:22.889 UTC [47996] STATEMENT:  insert into "public"."collections" ("address", "name") values ('4uPCNJoXirHo8uHzMG2hAjSMAMjb5dJxoajh6armir7n', 'Gamers King Genesis') 2023-04-05 08:27:05.473 UTC [48167] ERROR:  duplicate key value violates unique constraint "users_pkey" 2023-04-05 08:27:05.473 UTC [48167] DETAIL:  Key (wallet)=(7Vxf6Hmo6u67J5J9HjkSNquP6idMk4685GecvaZGiG1P) already exists. 2023-04-05 08:27:05.473 UTC [48167] STATEMENT:  INSERT INTO "public"."users" ("bio","pfp","created_at","slug","role","website","twitter","discord","pfpBg","instagram","name","wallet","updated_at") VALUES ($1,$2,$3,$4,$5,$6,$7,$8,$9,$10,$11,$12,$13), ($14,$15,$16,$17,$18,$19,$20,$21,$22,$23,$24,$25,$26), ($27,$28,$29,$30,$31,$32,$33,$34,$35,$36,$37,$38,$39), ($40,$41,$42,$43,$44,$45,$46,$47,$48,$49,$50,$51,$52), ($53,$54,$55,$56,$57,$58,$59,$60,$61,$62,$63,$64,$65), ($66,$67,$68,$69,$70,$71,$72,$73,$74,$75,$76,$77,$78), ($79,$80,$81,$82,$83,$84,$85,$86,$87,$88,$89,$90,$91), ($92,$93,$94,$95,$96,$97,$98,$99,$100,$101,$102,$103,$104), ($105,$106,$107,$108,$109,$110,$111,$112,$113,$114,$115,$116,$117), ($118,$119,$120,$121,$122,$123,$124,$125,$126,$127,$128,$129,$130), ($131,$132,$133,$134,$135,$136,$137,$138,$139,$140,$141,$142,$143), ($144,$145,$146,$147,$148,$149,$150,$151,$152,$153,$154,$155,$156), ($157,$158,$159,$160,$161,$162,$163,$164,$165,$166,$167,$168,$169) 2023-04-05 08:28:42.795 UTC [48229] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-04-05 08:28:42.795 UTC [48229] DETAIL:  Key ("tokenAddress")=(BLRkHsQEMTgG6xz816vXuXSyTBmjX3JWzcrUzmgNy2g) already exists. 2023-04-05 08:28:42.795 UTC [48229] STATEMENT:  INSERT INTO "public"."highlights" ("userWallet","updated_at","tokenAddress","imageUrl","created_at","collectionAddress") VALUES ($1,$2,$3,$4,$5,$6), ($7,$8,$9,$10,$11,$12), ($13,$14,$15,$16,$17,$18), ($19,$20,$21,$22,$23,$24), ($25,$26,$27,$28,$29,$30), ($31,$32,$33,$34,$35,$36), ($37,$38,$39,$40,$41,$42), ($43,$44,$45,$46,$47,$48), ($49,$50,$51,$52,$53,$54), ($55,$56,$57,$58,$59,$60) 2023-04-05 08:28:48.941 UTC [48235] ERROR:  duplicate key value violates unique constraint "highlights_pkey" 2023-04-05 08:28:48.941 UTC [48235] DETAIL:  Key ("tokenAddress")=(BLRkHsQEMTgG6xz816vXuXSyTBmjX3JWzcrUzmgNy2g) already exists.
I am unsure if these errors are causing the deletion of all my data in the Highlights table as each user can only edit + add their highlights according to their wallet.
I also noticed that there is this error on the migrate shadow db:
2023-04-05 08:18:21.091 UTC [47903] ERROR:  relation "_prisma_migrations" does not exist at character 126 2023-04-05 08:18:21.091 UTC [47903] STATEMENT:  SELECT "id", "checksum", "finished_at", "migration_name", "logs", "rolled_back_at", "started_at", "applied_steps_count" FROM "_prisma_migrations" ORDER BY "started_at" ASC 2023-04-05 08:18:28.459 UTC [47903] LOG:  TimescaleDB background worker scheduler for database 17518 will be stopped 2023-04-05 08:18:28.459 UTC [47903] STATEMENT:  DROP DATABASE IF EXISTS "prisma_migrate_shadow_db_50e777e0-5f0d-4eb3-afbd-c612ca2fbc45" 2023-04-05 08:18:38.427 UTC [47903] LOG:  TimescaleDB background worker scheduler for database 17519 will be stopped 2023-04-05 08:18:38.427 UTC [47903] STATEMENT:  DROP DATABASE IF EXISTS "prisma_migrate_shadow_db_f0ba0ed8-9074-4d22-ac08-b74d35b53ef5" 2023-04-05 08:18:51.430 UTC [89] ERROR:  tried calling catalog_get when extension isn't loaded 2023-04-05 08:18:51.433 UTC [1] LOG:  background worker "TimescaleDB Background Worker Scheduler" (PID 89) exited with exit code 1 2023-04-05 08:18:51.858 UTC [47903] ERROR:  table "_prisma_migrations" does not exist 2023-04-05 08:18:51.858 UTC [47903] STATEMENT:  DROP TABLE _prisma_migrations 2023-04-05 08:18:55.487 UTC [47928] ERROR:  relation "public.users" does not exist at character 15 2023-04-05 08:18:55.487 UTC [47928] STATEMENT:  select * from "public"."users" limit 10 offset 10 2023-04-05 08:18:57.066 UTC [47929] ERROR:  relation "public.users" does not exist at character 15 2023-04-05 08:18:57.066 UTC [47929] STATEMENT:  select * from "public"."users" limit 10 offset 10 2023-04-05 08:18:58.912 UTC [47903] LOG:  TimescaleDB background worker scheduler for database 17531 will be stopped 2023-04-05 08:18:58.912 UTC [47903] STATEMENT:  DROP DATABASE IF EXISTS "prisma_migrate_shadow_db_5d4f17b0-a94c-49ff-a916-209012272f2a" 2023-04-05 08:18:59.522 UTC [47933] ERROR:  relation "public.users" does not exist at character 15 2023-04-05 08:18:59.522 UTC [47933] STATEMENT:  select * from "public"."users" limit 10 offset 10 2023-04-05 08:19:04.016 UTC [47935] LOG:  could not receive data from client: Connection reset by peer 2023-04-05 08:19:04.016 UTC [47903] LOG:  could not receive data from client: Connection reset by peer 2023-04-05 08:19:04.235 UTC [47937] ERROR:  relation "public.users" does not exist at character 15 2023-04-05 08:19:04.235 UTC [47937] STATEMENT:  select * from "public"."users" limit 10 offset 10 2023-04-05 08:19:08.371 UTC [47941] ERROR:  relation "public.users" does not exist at character 15 2023-04-05 08:19:08.371 UTC [47941] STATEMENT:  select * from "public"."users" limit 10 offset 10 2023-04-05 08:19:20.652 UTC [47947] LOG:  could not receive data from client: Connection reset by peer 2023-04-05 08:19:29.013 UTC [47949] LOG:  TimescaleDB background worker scheduler for database 17538 will be stopped 2023-04-05 08:19:29.013 UTC [47949] STATEMENT:  DROP DATABASE IF EXISTS "prisma_migrate_shadow_db_6c3ce574-8da2-4402-919f-b7498989fa45" 2023-04-05 08:19:29.495 UTC [47957] LOG:  the "timescaledb" extension is not up-to-date 2023-04-05 08:19:29.495 UTC [47957] HINT:  The most up-to-date version is 2.10.1, the installed version is 2.1.1. 2023-04-05 08:19:38.685 UTC [47949] LOG:  TimescaleDB background worker scheduler for database 17539 will be stopped 2023-04-05 08:19:38.685 UTC [47949] STATEMENT:  DROP DATABASE IF EXISTS "prisma_migrate_shadow_db_7f1b3243-9c79-4243-942b-2439217b3f3b" 2023-04-05 08:19:45.706 UTC [47949] LOG:  TimescaleDB background worker scheduler for database 17540 will be stopped 2023-04-05 08:19:45.706 UTC [47949] STATEMENT:  DROP DATABASE IF EXISTS "prisma_migrate_shadow_db_9b2e0327-0269-49bf-b49d-426896d9f5e5" 2023-04-05 08:19:52.197 UTC [47949] LOG:  TimescaleDB background worker scheduler for database 17541 will be stopped 2023-04-05 08:19:52.197 UTC [47949] STATEMENT:  DROP DATABASE IF EXISTS "prisma_migrate_shadow_db_8fb71f03-1165-4464-91ce-720de6da5118"
If there is an error on migration, it may also delete all the data from other tables, right? Hence I am confused why my highlights data are the ones getting deleted.
How to reproduce

Expected behavior
No response
Prisma information

// learn more about it in the docs: https://pris.ly/d/prisma-schema

generator client {
  provider = "prisma-client-js"
}

datasource db {
  provider = "postgresql"
  url      = env("DATABASE_URL")
}

model User {
  wallet     String      @id
  slug       String?     @unique
  name       String?
  role       Int
  twitter    String?
  instagram  String?
  discord    String?
  website    String?
  bio        String?
  pfp        String?
  pfpBg      String?
  createdAt  DateTime    @default(now()) @map(name: "created_at")
  updatedAt  DateTime    @updatedAt @map(name: "updated_at")
  highlights Highlight[]

  @@map(name: "users")
}

model Highlight {
  tokenAddress String   @id
  imageUrl     String
  createdAt    DateTime @default(now()) @map(name: "created_at")
  updatedAt    DateTime @updatedAt @map(name: "updated_at")

  userWallet String
  user       User   @relation(fields: [userWallet], references: [wallet])

  collectionAddress String
  collection        Collection @relation(fields: [collectionAddress], references: [address])

  @@map(name: "highlights")
}

model Collection {
  address   String      @id
  name      String
  createdAt DateTime    @default(now()) @map(name: "created_at")
  updatedAt DateTime    @updatedAt @map(name: "updated_at")
  Highlight Highlight[]

  @@map(name: "collections")
}

// Next.js API route support: https://nextjs.org/docs/api-routes/introduction

import { bs58 } from "@project-serum/anchor/dist/cjs/utils/bytes";
import nacl from "tweetnacl";
import prisma from "../../utils/prisma";

// import { validate } from "../../utils/validate";

export default async function handler(req, res) {
  // console.log(req.query);
  // console.log(req.body);
  const validateRes = await validate(req.body.signature);
  delete req.body.signature;

  switch (req.method) {
    case "POST":
      if (validateRes) {
        const highlights = await prisma.highlight.createMany({
          data: req.body.data,
        });
        res.status(200).json(highlights);
      } else {
        res.status(401).json({ message: "unauthorized" });
      }
      break;

    case "DELETE":
      if (validateRes) {
        const deleteHighlights = await prisma.highlight.deleteMany({
          where: {
            wallet: req.body.wallet,
          },
        });

        // console.log("delete finished")

        // console.log(deleteHighlights);

        const highlights = await prisma.highlight.createMany({
          data: req.body.data,
        });

        res.status(200).json(highlights);
      } else {
        res.status(401).json({ message: "unauthorized" });
      }
      break;
  }
}

async function validate(signature) {
  const msg =
    "To confirm that you are the owner of this wallet, please sign this message. This action will incur no gas fee. (nonce:" +
    signature.nonce +
    ")";
  const signatureUint8 = bs58.decode(signature.signature);
  const msgUint8 = new TextEncoder().encode(msg);
  const pubKeyUint8 = bs58.decode(signature.wallet);

  return nacl.sign.detached.verify(msgUint8, signatureUint8, pubKeyUint8);
}

Environment & setup

OS: Hosted on railway app
Database: timescale/timescaledb-postgis:latest-pg13
Node.js version: 16

Prisma Version
prisma                  : 4.12.0
@prisma/client          : 4.12.0

Hey @SyahmiRafsan,
Thanks for the report. I fear it's going to be hard to reproduce your issue without more information. Could you perhaps share with us the kind of payloads that you're sending to the DELETE case?
const deleteHighlights = await prisma.highlight.deleteMany({
          where: {
            wallet: req.body.wallet,
          },
        });

        // console.log("delete finished")

        // console.log(deleteHighlights);

        const highlights = await prisma.highlight.createMany({
          data: req.body.data,
        });

Thank you

Hey @Weakky, thanks for the prompt reply.
Here is the function that is called for the both DELETE and POST cases:
 async function saveHighlights(wallet, nftList) {
    setIsLoading(true);
    const msg = await signMessage(wallet);

    let dbList = [];
    nftList.forEach((nft) => {
      dbList.push({
        tokenAddress: nft.tokenAddress,
        userWallet: msg.wallet,
        imageUrl: nft.imageUrl,
        collectionAddress: nft.collectionAddress,
      });
    });

    // console.log(dbList.map((nft) => ({ tokenAddr: nft.tokenAddress })));

    const hCount = highlights.length || 0;
    const method = hCount > 0 ? "DELETE" : "POST";
    console.log(hCount, method);
    if (msg.error) {
      setIsLoading(false);
      console.log(msg.error.message);
      toast({
        title: msg.error.message,
        status: "error",
        isClosable: true,
        position: "top",
        duration: "2000",
      });
    } else {
      toast({
        title: "Saving in progress.",
        status: "loading",
        isClosable: true,
        position: "top",
        duration: "2000",
      });

      const updateGamer = fetch("/api/highlights", {
        method: method, // or 'PUT'
        headers: {
          "Content-Type": "application/json",
        },
        body: JSON.stringify({ signature: msg, data: dbList }),
      })
        .then((response) => response.json())
        .then((data) => {
          toast.closeAll();
          // console.log("Success:", data);
          setUser({ ...user, highlights: data });
          setHighlights(selectedHighlights);
          // setSelectedHighlights();
          setIsLoading(false);
          toast({
            title: "Highlights saved successfully.",
            status: "success",
            isClosable: true,
            position: "top",
            duration: "2000",
          });
        })
        .catch((error) => {
          console.error("Error:", error);
          setIsLoading(false);
          toast({
            title: "Error. Failed to save highlights.",
            status: "error",
            isClosable: true,
            position: "top",
            duration: "2000",
          });
        });
    }
  }

I tried to think of ways to reproduce this error but since a user can only make changes to its own highlights, not sure why the other highlights are deleted too if this is a case of accidental deletion to other users' Highlights data.
Thanks a lot!

Hi @Weakky, I have managed to find and fix the problem.
My code was wrong for the wallet part on the highlight create query.
I have compiled both queries into one transaction and double checked it with the client side code.
Seems to be working now.
Will reopen if my highlights are still missing.
Thank you.


"RecursionError: maximum recursion depth exceeded in comparison"

Seeing the following on a long-term search:

Parsing Mint Transactions |████████████████████████████████| 10000/10000
Matching Amazon Items with Orders |███████████████████████████████▌| 5220/5295Traceback (most recent call last):
  File "/usr/local/bin/mint-amazon-tagger-cli", line 8, in <module>
    sys.exit(main())
  File "/usr/local/lib/python3.10/site-packages/mintamazontagger/cli.py", line 118, in main
    results = tagger.create_updates(
  File "/usr/local/lib/python3.10/site-packages/mintamazontagger/tagger.py", line 154, in create_updates
    updates, unmatched_orders = get_mint_updates(
  File "/usr/local/lib/python3.10/site-packages/mintamazontagger/tagger.py", line 240, in get_mint_updates
    amazon.associate_items_with_orders(orders, items, itemProgress)
  File "/usr/local/lib/python3.10/site-packages/mintamazontagger/amazon.py", line 201, in associate_items_with_orders
    for item_groupings in algorithm_u(oid_items, len(orders)):
  File "/usr/local/lib/python3.10/site-packages/mintamazontagger/algorithm_u.py", line 20, in f
    for v in f(mu - 1, nu - 1, (mu + sigma) % 2, n, a):
  File "/usr/local/lib/python3.10/site-packages/mintamazontagger/algorithm_u.py", line 20, in f
    for v in f(mu - 1, nu - 1, (mu + sigma) % 2, n, a):
  File "/usr/local/lib/python3.10/site-packages/mintamazontagger/algorithm_u.py", line 20, in f
    for v in f(mu - 1, nu - 1, (mu + sigma) % 2, n, a):
  [Previous line repeated 991 more times]
  File "/usr/local/lib/python3.10/site-packages/mintamazontagger/algorithm_u.py", line 17, in f
    if mu == 2:
RecursionError: maximum recursion depth exceeded in comparison

Ugh; sorry you ran into this! Tagger is trying to brute force determine which items from an order when into which shipment. I'll add some logic to catch this exception, as well as a timeout to prevent this from taking too long (I believe you have an old bug report something to this effect - might have been this same routine.)

A fix to this issue will be in 1.61. Sorry for the delay, as I imagine this error was likely giving you repeated trouble (requiring manual effort to exclude the problematic order).


Derive the postgresql schema more directly from the NMDC schema

Note: this is currently more of a discussion than a specific piece of work with a short term deliverable. This is something that we will likely have to do in the renewal.
The overall goal here is to have a single SOT, avoid implicit manual translations between different representations e.g. mongo and RDBMSs, and to be more agile - for example, we want to be able to add new sample fields to the schema, and have everything be driven by metadata about those fields:

data harmonizer
API
portal facets

I think we are already there with 1 and with @dwinston's schema for 2.
3 is harder - this is more challenging as we may need denormalizations and other divergences from the nmdc schema for the purposes of driving a website (though the premature optimization dictum should apply). I think there are some principled ways to do this.
There are some cases where we may want to simplify the schema - e.g. not every sample slot needs to be an AttributeValue - some things could be scalars
Other than this we can imagine a few mappings for sample slots. For single-valued:

normalized - each AttributeValue object is stored in a separate table, and the sample table has a FK (my preference is natural keys). E.g. sample_en_broad takes an ENVO ID, and is a FK to a OntologyTerm table keyed by that ID, following the OntologyTerm class in the nmdc schema
denormalized - each AttributeValue slot is lifted up to the sample label and prefixed, e.g. sample_env_broad_id, sample_env_broad_label

All this assumes that we continue with an RDBMS longer term - this is a bigger issue outside the scope of this ticket, cc Shreyas

I like where this thought process is going to help figure out normalization across NMDC tools, thanks @cmungall.
I do think that a performant and intuitive portal could be in conflict with this goal, as you state with denormalizations and special cases etc. Translating a complex interlocking schema into the correct database joins and indices that were needed to get the portal functioning as it is was not trivial, so making this more automated seems fraught with dangers like long-lasting regressions as we spin up a new architecture. But there are likely several concrete and steps we can take toward normalization of terms, results, UI labels, etc. For the portal, schema normalization has not been given priority as of yet in favor of a nicely functioning portal and UI, but that's not to say we can't shift priorities.
@subdavis and others at times have considered whether something like Elasticsearch could handle faceted search more naturally, though as I understand Elasticsearch would probably require significant denormalization as well. Also it's unclear how the "millions of tiny objects" case of KEGG terms would function in this environment and whether it would be performant enough. Postgres is likely the technology we can tune the most for performance as compared to more generic stores like NoSQL or graph databases, though someone could prove to me otherwise.
Glad to continue the discussion!


Update namespace for ReCaptchaValidator

Related to DarioSwain/ReCaptchaValidator@8af5ffd266026924351265bec142c66a89cb293d

:+1:

+1 :+1:

Thanks @jeromehubert!
I'm sorry, I will not be available until June. I plan to continue working on the bundle after returning.


[Job Launcher] - Added API responses DTO

Description
Add DTO for each response when calling the API. Each API response must conform to the documentation.
Motivation
Unify API responses, simplify integration with the frontend.
Implementation details

Add DTO for each API response

https://www.notion.so/human-protocol/Job-Launcher-119b3298c1ee4c57a9c2a79cbfdf26e1?pvs=4#944e95aa6fa544a79269d0b5f659b55d


How to change "input" values

I'm trying to change values on input boxes and then use bunit to test for correct submission of those values to a datagrid
I have tried using AngleSharp to set the Value, but this value does not seem to make it back to the component:
          //Act
            IRenderedComponent<MiscParameterTypeEditBox> cut = RenderComponent<MiscParameterTypeEditBox>();
            Renderer.Dispatcher.InvokeAsync(() => cut.Instance.ShowMiscParameterTypeEditModal(miscParameterType));

            ElementWrapper formInputs = (ElementWrapper)cut.Find(".is-invalid");
            var htmlInputElement = (IHtmlInputElement)formInputs.WrappedElement;
            htmlInputElement.Value = "Test Value";

I also saw a similar bunit issue where .Change was suggested but this too does not change the Input box value after a render:
            cut.Find(".is-invalid").Change("Test Value");
I can't find any example of where an input element has its value set. How do I set the value of an "input" element??

...aaaaand about 5 minutes after cloning the repo I found the answer to my own question:
        cut.Find(".is-invalid").Input("Test Value");

Hey, good job.
And yes, it's on my to-do to document that feature. If you have any suggestions for how to improve that api, please let me know.


Evolve 1.5(1.4.3) not opening on ubuntu 22.04

I just downloaded it and executed install.sh and It installed perfectly without any bug.
But when I try to open the evolve, the terminal output this:
./gtkthememanager: symbol lookup error: ./gtkthememanager: undefined symbol: g_once_init_enter_pointer
Im trying to run this on ubuntu 22.04
All other older versions worked for me without any problem.🥲

Evolve v1.5 is in Alpha. It is only compatible with Ubuntu 24.04, Fedora 40 or other distros running the same or later kernel and GNOME version. This happens with every release but support for older distros are added eventually. Please wait for a few more days. Thanks!

The issue is resolved in v1.5.1


Share maps with groups backend

Dataset support for groups also covers maps requirements, a map can be granted with permission API, and it's listed in group members dashboard, who can open it as well. cc @viddo

Does this mean that I should change scope of #5184 to include share-with-maps-too again?

Maybe it's worth a try. If it doesn't mean more work on your side we can probably get this "for free". If it's more work for you we can make it incrementally.

Okie doki, should not be any extra work, I perceived it as it was a restriction in the backend. :+1:

That was my guess, but after some tests I think it should work straight out of the box.


typo: noticable -> noticeable

@nschonni : Thanks for your contribution! The author, @CarlRabeler, has been notified to review your proposed change.

@nschonni Thank you!!
#sign-off

@JennieHubbard: I'm sorry - only the author of this article, @CarlRabeler, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

#sign-off


Add sender_chat to Message

A new field sender_chat was added to the Message class in Telegram Bot Api 5.0.

Added the field sender_chat to the class Message, containing the sender of a message which is a chat (group or channel). For backward compatibility in non-channel chats, the field from in such messages will contain the user 777000 for messages automatically forwarded to the discussion group and the user<PHONE_NUMBER>

https://core.telegram.org/bots/api#message
We should add this new field.

Closed by https://github.com/kotlin-telegram-bot/kotlin-telegram-bot/pull/175


Camera Features Support

Hello,
please is tis app include camera support like the one in the google street view where the user can take photo by pointing   the camera to dot.
Thank you
Lafi

Do you mean image-stitching to create a panorama image using the camera?

yes using the camera, like google street view where some dot are displayed and you need to pint a circle in the dot to take picture, then you have to turn the phone arround
like this video : https://www.youtube.com/watch?v=-JN8iex0yG8

Hi Sorry I didn't follow up. This project isn't for recording, just displaying.
It would involve photo stitching, and a lot of image processing stuff that would be necessary. Lots of people are asking for this, #43, it would be a lot of code and expand the project into kind of a different one.


Bug 1843678: Deleting a CSV removes related CSV metrics

Description of the change:
Backport PR #1525 bug fix to 4.4
Signed-off-by: Harish<EMAIL_ADDRESS>Motivation for the change:
Reviewer Checklist

[ ] Implementation matches the proposed design, or proposal is updated to match implementation
[ ] Sufficient unit test coverage
[ ] Sufficient end-to-end test coverage
[ ] Docs updated or added to /docs
[ ] Commit messages sensible and descriptive

/retest

/lgtm

/retest

/approve

/approve


neovim.tests.nvim_with_opt_plugin: fixed

once :Dashboard succeeded, the script would close neovim and thus never
terminate. We instead check if the command ":Dashboard" exists.
Description of changes

Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] 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/)
23.05 Release Notes (or backporting 22.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

[x] Fits CONTRIBUTING.md.

@ofborg build neovim.tests


fix interpolate dynamic input

#2

Hi
Thanks for the bug report. The dynamic shape support of interpolate is a little bit ... complex.
I warp the Tensor.shape[i] to a IntWarper in size.py to trace the shape data. as for interpolate, if the size contain any IntWarper, is_shape_tensor flag will be set.  That means if your model is:
        xh, xw = x.shape[-2] * 2, x.shape[-1] * 2
        x = F.interpolate(x, size=(xh, xw), mode="nearest")

The convert should give you right anwser.
But you have cast it back to python int. That IntWarper can not trace the shape any more. A const value will be used as interpolate shape.
Use scales instead of shape might not be a good idea. because the shape could be:
xh, xw = x.shape[-2]+10, x.shape[-1]-10

I am trying to do something about int cast. If you have any idea. Please share it with me.


Lookup a summary table record (to get summary fields!)

I know most of the performance details are hidden from me, but on principle, if I do a compute-intensive operation like rank the groups in a summary table (which requires pulling all of them since our only filters are equals and CONTAINS), then I want to reattach that result to the individual records in the group, but I only get original records. I can't find a way to reference fields from the summary table anywhere else.
Yes, I could build put the whole function on every record in the source table, but that just seems so wasteful!

Root cause (of confusion) identified (see #584)


fix(tts): Crash fix when incorrect zero shot audio is passed

@atomer-nvidia please rebase on top of release/2.15.0 branch

@atomer-nvidia please rebase on top of release/2.15.0 branch

Done

@virajkarandikar Is this good to merge?


Avatar photo uploader

Description
This is a photo uploader for the vendor's avatar photo. It uses express-fileupload: https://www.npmjs.com/package/express-fileupload
The package adds a files object to the req object (req.files)
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[x] New feature (non-breaking change which adds functionality)
[x] This change requires a documentation update

Change Status

[x] Complete, but not tested (may need new tests)

How Has This Been Tested?
only locally for now
Checklist

[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] My code has been reviewed by at least one peer
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] There are no merge conflicts

Great notes, multiple commits!


Number of Submissions not updated

Hello, we would like to inquire about the number of submissions not being updated.
Our challenge website is here.
For some participants, the number of submissions used for the day is not reset even after the previous submission day has passed.

Could you please look into the problem?
Thank you for your support.

Please provide more details:

Which participants are experiencing the issue
When have they submitted their last submission

The allowed number of submissions cannot be increased for a single participant. If you change it, it affects all the participants. By the way Cancelled/Failed submissions are not counted in the limit

I see, thank you for your reply! Could the problem of jobs being getting stuck be resolved? Thank you.

Please share the IDs ofsubmission which are stuck. We will check them. Please also mention the queue name from your competition settings

Thank you for your reply! The job IDs still in running status are as follows:
57960
57957
57947
57830
57795
57764
57761
57742
For the queue name, could you please let me know how to view the queue name? Currently in the Queue Management, there is no Queues.

Hello,
Below are the details for the issue of the number of submissions not being reset.
Codabench Username of the participant: dknguyen176
On April 29th, the number of submissions was reset from 6 to 3 and the participant submitted three times to get to "6 out of 6".
Today at 0:00 UTC, it's reset to "3 out of 6" again.
The job ID of the submissions are 57998, 57955, and 57860.

Thank you for your consideration!

I think there is a confusion in understanding this feature. I think you expect that at 00:00:00 submissions should reset but I think it resets individually for each participant i.e. for this participant it will reset on 2024-04-30 04:15.

Thank you very much for your swift reply! I see, thank you for your answer!
May I ask one last question? I think most of the jobs are in finished status, but for the following participant with job ID 57960, the status is still in running status.

I appreciate your continued support.

I think this submisison has some problem. @Didayolo can check problems with these stuck submissions in Running state.

57960
57957
57947
57830
57795
57764
57761
57742

I see, understood! Thank you very much for your time and support.

I think there is a confusion in understanding this feature. I think you expect that at 00:00:00 submissions should reset but I think it resets individually for each participant i.e. for this participant it will reset on 2024-04-30 04:15.
In summary: if you submit a submission on January 01 at 10 AM, your submissions limit will reset on January 02 at 10 AM. If you think this is not happening, please let us know

Hi Ihsan, thanks a ton for the detailed explanation! On top of this example, I have an additional question. Let's say if the participant had made separate submissions at 10:00 AM, 10:15 AM and 10:30 AM on January 1st (out of 6 daily quota), then would the daily submission quota reset to 2 at 10:00 AM on January 2nd, and then 0 at 10:30 AM, i.e. the daily limit is reset individually for each submission of that participant?

Hi! I'm the user in the original post. The submission limit is still not reset for me.
The last submission I made was more than a day ago:

Yet the limit is now "4 out of 6":

My username is dknguyen176

I merge this issue with #1469 to keep track of it in one place.


Availability of Pytorch/Python sample code?

I apologize in advance if this is not the correct place to ask this question.
I have been given the task of porting our Pytorch UNET convolution model to run on Xilinx, but I see no Pytorch/Python entry in the "VART Samples" table in the readme ( https://github.com/Xilinx/Vitis-AI/tree/master/demo/VART ).

Can anyone point me at a Pytorch/Python combination sample, either official or unofficial?
Failing that, is there a list of step by step instructions for converting a model from Pytorch to Xilinix? I have the model and model weights as saved by "torch.save(model.state_dict(), PATH)" from Pytorch 1.9.

Thanks,
Larry

Hi @larry-rystrom
You can refer to https://github.com/Xilinx/Vitis-AI-Tutorials/tree/master/Introduction/01-Workflows

Hi Quianglin-xlnx,
Thank you for the response. My goal is to evaluate our Deep Learning model on a Xilinx Kria board and obtain basic performance information.  I  have the model and model weights as Pytorch 1.9 python files.
As far as Vitis-AI-Tutorials/Design_Tutorials/09-mnist_pyt/:

Could you please confirm that the Xilinx Kria is supported? This is not obvious to me from the ReadMe.
In order to run the model it must first be “quantized” and other steps followed. But I cannot get a Pytorch 1.9 model to load under the 2+ year Pytorch. Instead I get RuntimeError: version_ <= kMaxSupportedFileFormatVersion INTERNAL ASSERT FAILED at ..\caffe2\serialize\inline_container.cc:132, please report a bug to PyTorch. Attempted to read a PyTorch file with version 3, but the maximum supported version for reading is 2. Your PyTorch installation may be too old. (init at ..\caffe2\serialize\inline_container.cc:132) (no backtrace available)
I did have a go at backporting the model from Pytorch 1.10 with the _use_new_zipfile_serialization=False but with no success.

The model was trained for over 100 hours and I cannot easily reproduce it on the older Pytorch.  When will the version of Pytorch be updated?
Thanks,
Larry
CAUTION: This email originated from outside of Thermo Fisher Scientific. If you believe it to be suspicious, report using the Report Phish button in Outlook or send to @.***
Hi @larry-rystromhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_larry-2Drystrom&d=DwMCaQ&c=q6k2DsTcEGCcCb_WtVSz6hhIl8hvYssy7sH8ZwfbbKU&r=-SqA0CoQEVWMaGfI-1LVoW9VDW0dMfnBP-FfJm6n5D8&m=sjUNCvdG_PwOtp_Pllq1fPxEzdfyrDf07TZ6zrB9_35vomNZWZdiUPfRclmpXuRs&s=dE7x2BTIXz-1RL9qFs_RIVOXAj8XIELuLHhE-hrZV9U&e=
You can refer to https://github.com/Xilinx/Vitis-AI-Tutorials/tree/master/Introduction/01-Workflowshttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_Xilinx_Vitis-2DAI-2DTutorials_tree_master_Introduction_01-2DWorkflows&d=DwMCaQ&c=q6k2DsTcEGCcCb_WtVSz6hhIl8hvYssy7sH8ZwfbbKU&r=-SqA0CoQEVWMaGfI-1LVoW9VDW0dMfnBP-FfJm6n5D8&m=sjUNCvdG_PwOtp_Pllq1fPxEzdfyrDf07TZ6zrB9_35vomNZWZdiUPfRclmpXuRs&s=rSKhKbMypHsXvxTGKnFDIkxXYqTGPWuwZYSBiglbOe0&e=
—
Reply to this email directly, view it on GitHubhttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_Xilinx_Vitis-2DAI_issues_616-23issuecomment-2D1015011348&d=DwMCaQ&c=q6k2DsTcEGCcCb_WtVSz6hhIl8hvYssy7sH8ZwfbbKU&r=-SqA0CoQEVWMaGfI-1LVoW9VDW0dMfnBP-FfJm6n5D8&m=sjUNCvdG_PwOtp_Pllq1fPxEzdfyrDf07TZ6zrB9_35vomNZWZdiUPfRclmpXuRs&s=CJAiOfltNYEvqdk67n55FnkGjid5pDQrVVkFoqhMchw&e=, or unsubscribehttps://urldefense.proofpoint.com/v2/url?u=https-3A__github.com_notifications_unsubscribe-2Dauth_ANMJAKGZSIEBT5KSTI3HTEDUWTERVANCNFSM5KQZN2FA&d=DwMCaQ&c=q6k2DsTcEGCcCb_WtVSz6hhIl8hvYssy7sH8ZwfbbKU&r=-SqA0CoQEVWMaGfI-1LVoW9VDW0dMfnBP-FfJm6n5D8&m=sjUNCvdG_PwOtp_Pllq1fPxEzdfyrDf07TZ6zrB9_35vomNZWZdiUPfRclmpXuRs&s=Xf5JkbrVVwXr7u1LrhqWBmpm3e59w79kE00bp_NsZxA&e=.
Triage notifications on the go with GitHub Mobile for iOShttps://urldefense.proofpoint.com/v2/url?u=https-3A__apps.apple.com_app_apple-2Dstore_id1477376905-3Fct-3Dnotification-2Demail-26mt-3D8-26pt-3D524675&d=DwMCaQ&c=q6k2DsTcEGCcCb_WtVSz6hhIl8hvYssy7sH8ZwfbbKU&r=-SqA0CoQEVWMaGfI-1LVoW9VDW0dMfnBP-FfJm6n5D8&m=sjUNCvdG_PwOtp_Pllq1fPxEzdfyrDf07TZ6zrB9_35vomNZWZdiUPfRclmpXuRs&s=3arqoQrPAHOdAgcThN-mFRmJCOBoDggTuCQfOk2hcIM&e= or Androidhttps://urldefense.proofpoint.com/v2/url?u=https-3A__play.google.com_store_apps_details-3Fid-3Dcom.github.android-26referrer-3Dutm-5Fcampaign-253Dnotification-2Demail-2526utm-5Fmedium-253Demail-2526utm-5Fsource-253Dgithub&d=DwMCaQ&c=q6k2DsTcEGCcCb_WtVSz6hhIl8hvYssy7sH8ZwfbbKU&r=-SqA0CoQEVWMaGfI-1LVoW9VDW0dMfnBP-FfJm6n5D8&m=sjUNCvdG_PwOtp_Pllq1fPxEzdfyrDf07TZ6zrB9_35vomNZWZdiUPfRclmpXuRs&s=37EIF2BeN8fs1wor9ao8SLAuioRyYhhhieL4LwCKtro&e=.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

Hi @larry-rystrom
1 For Vitis-AI, Kria KV260 board is supported.
2 Pytorch 1.9 is supported in VAI2.0. Please have a try. Thank you.


feat: added gitlab_pages_external_url var and updated async tasks for dry run

Thanks @robertocasconi for the contribution!


[release/1.7] snapshots: emit deprecation warning for aufs

Part of https://github.com/containerd/containerd/issues/9312
aufs snapshotter is already removed from main, so this PR is directly against 1.7.  However, the approach here is a bit weird, and I'm open to feedback on doing it differently if that's warranted.  Here's the weirdness:

aufs snapshotter is in a separate repo and currently depends on containerd 1.6.12
The plugin itself has no dependencies
Adding a dependency on the warning service would require:

an update to containerd 1.6 adding the new warning ID (and, preferably, a release)
updating the go module dependency in the aufs snapshotter
adding a dependency to the plugin
finally, updating the dependency in the containerd 1.6 and 1.7 release branches

So instead of that, I added the warning service as a dependency of the snapshot service, and emit the warning from there.  It's certainly less elegant, but it was many fewer steps.

/retest

/cherrypick release/1.6


Attach arbitrary metadata to a Graphic

Allow attaching arbitrary metadata to a Graphic by creating a metadata attribute and kwarg. For GraphicCollections it can be a list of metadata to map to each individual graphic or a single metadata object.
This would be useful to keep track of component indices for temporal plots and contours. Could use it to change the plot title etc. upon click events.

@EricThomson @clewis7 thoughts? we can chat this weekend.


dBFromQuality is the new name

Fixes #60
I know this will work because I manually did this edit in the node_modules dir of a project that uses node-wifi.

Hi, I think it has already been merged in dev branch cf #58. It will be merged into master branch soon.


changed GetAllTargetMetadataByName to return a TargetSignedStruct, also verifies messages against signatures

changed GetAllTargetMetadataByName to return a TargetSignedStruct which now contains signature data

Can one of the admins verify this patch?

jenkins, ok to test

jenkins, retest this please

jenkins, retest this please

Looks great. What other tests are you planning to add? It seems like the tests you've already added are probably sufficient or is there some edge case I'm missing?

@endophage as per Riyaz' comment "In addition to checking the length of the signature, can we check that the signature KeyID corresponds to the role's key, and that the signature verifies correctly?" I was thinking of adding a test that checks that the signature is as expected in the target

LGTM!

LGTM. The Signature.IsValid stuff looks great! I think it's also going to be really useful when we get to more verbose displays of Notary state.


Using these pojo class to bind with JSON file

It may be a novice question but is it possible to use these POJO class to bind with the JSON data from which it is created and then extract fields directly in getter/setter form?

Does it mean,in below line
mapper.readValue(new File("data.json"), MyValue.class)
replace the MyValue.class with generated pojo using your library,it will be compatible?

Yes.


nuke 7.0 v6

Hi Guys,
is there any chance or any way to cryptomatte works with the v6 version of Nuke 7.0 ?
Regards.

Do you have any more details on the problems you're seeing in version 7.0v6?  For example, is it just the typical version compatibility warning, or are you seeing a different problem?
It should be possible to support 7.0v6 in theory, unless we run into something unexpected on the Nuke side.  The plugin is just python and a gizmo, which usually makes version compatibility pretty easy.  The current gizmos reference version 7.0v10, but I want to do some more tests before I vouch for it actually working in that version or anything before it.

I guess it's just the compatibility...
Here is the error when i select "bunny_CryptoObject.exr" and apply Cryptomatte.
Traceback (most recent call last):
File "", line 1, in
File "C:/Users/---/.nuke\cryptomatte_utilities.py", line 267, in cryptomatte_create_gizmo
return nuke.createNode("Cryptomatte")
RuntimeError: C:/Users/---/.nuke/Cryptomatte.gizmo is for nuke7.0v10; this is nuke7.0v6
I can access to the gizmo but when i take the picker to pick a color on the image, the red and green channel give me a value but not the blue one.
Here's a screeshot below.

Looking at your screenshot, which is referencing "inf", it seems possible you may be hitting the GPU acceleration issue with the color picker.  See the entry in troubleshooting.md, or this other issue from today.  There should be no floating point signal values in the Cryptomatte hashes, so if you're seeing "inf" it's probably due to some kind of un-wanted type conversion.
I also just did a little testing on 7.0v10 (which is the oldest version I have on hand).  There's actually another bug in the gizmo, which is that it had a reference to "uCryptoObject" in one of the shuffle nodes.  That was causing issues for me in 7.0v10 if the channel didn't already exist.  I removed that reference and am now able to key objects as expected.  I also manually edited the gizmo to indicate 7.0v1, which will hopefully eliminate the version compatibility warnings.
The changes have been pushed up in the "encryptomatte" branch, which is considered beta.  (This includes some other updates, such as the Encryptomatte gizmo and support for sidecar manifests.  We don't have any known issues with those features at this time, but would welcome testing and feedback.  Encryptomatte needs some documentation, but there are tool-tips and the standard "help" text for the node).

Thanks Andy for fixing the compatibility version and the uCryptoObject thing.
@Tylox81, you can download the dev version here. https://github.com/Psyop/Cryptomatte/archive/encryptomatte.zip, or https://github.com/Psyop/Cryptomatte/tree/encryptomatte.
Closing this.  Feel free to reopen if you have any issues.


chore: downgrade to<EMAIL_ADDRESS>

See https://github.com/rust-lang/jobserver-rs/issues/99
While there is a fix waiting for review,
we might miss the release window for 1.80,
so propose we beta-backport this

@bors r+

:pushpin: Commit 8923ba62dd61e65050715306f58afb96a553dc3f has been approved by epage
It is now in the queue for this repository.

:hourglass: Testing commit 8923ba62dd61e65050715306f58afb96a553dc3f with merge 54ee7e32573f13321f33e062210cbedd555a5d19...

:sunny: Test successful - checks-actions
Approved by: epage
Pushing 54ee7e32573f13321f33e062210cbedd555a5d19 to master...


az connectedk8s proxy fails with KeyError: 'refreshToken'

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az connectedk8s proxy Extension Name: connectedk8s. Version: 1.1.3.
Errors:
The command failed with an unexpected error. Here is the traceback:
'refreshToken'
Traceback (most recent call last):
  File "/opt/az/lib/python3.6/site-packages/knack/cli.py", line 231, in invoke
    cmd_result = self.invocation.execute(args)
  File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/__init__.py", line 657, in execute
    raise ex
  File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/__init__.py", line 720, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
  File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/__init__.py", line 691, in _run_job
    result = cmd_copy(params)
  File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/__init__.py", line 328, in __call__
    return self.handler(*args, **kwargs)
  File "/opt/az/lib/python3.6/site-packages/azure/cli/core/commands/command_operation.py", line 121, in handler
    return op(**command_args)
  File "/home/mike/.azure/cliextensions/connectedk8s/azext_connectedk8s/custom.py", line 1712, in client_side_proxy_wrapper
    creds = creds_obj[key2]
KeyError: 'refreshToken'

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az connectedk8s proxy --name {} --resource-group {}

Expected Behavior
Environment Summary
Linux-5.4.0-1055-azure-x86_64-with-debian-10.2 (Cloud Shell)
Python 3.6.10
Installer: DEB

azure-cli 2.27.0

Extensions:
connectedk8s 1.1.3
virtual-wan 0.2.5
azure-firewall 0.9.0
k8s-configuration 1.1.0
ai-examples 0.2.5
ssh 0.1.5

Additional Context

route to service team

@mormond Apologies for the late reply. Could you please try the below steps and let us know if you still face the issue ?

az upgrade # Update the Azure CLI version
az extension update --name connectedk8s # This will update the existing connectedk8s extension

az login # Login using you Azure account
Then you can try to run the az connectedk8s proxy command and let us know if you run into any issues.
Also this issue is open for quite sometime. Please let us know if you still need any assistance on this. Awaiting your reply.


Experimental: Make the header height decrease when the logo is scaled down

This is based on #734 and is just an experiment to get some opinion.
On narrow screens, with wide logos (like the ETH one), the logo gets
scaled down quite a bit due to lack of space in the x-axis. However,
the header height stayed the same, showing lots of empty space above
and below the logo. This commit addresses that by letting the header
shrink accordingly. Of course, there is a minimal height that the header
must have, given by its children + 2*16px of padding.
There are still some problems with the mobile version of the language,
user and burger menu. Their top element's height doesn't match the
header height anymore. And for the burger menu, the logo size jumps
(which I think happens before this PR already). An idea to solve this
would be to always render the normal header, but if those menus are
open, make all its children opacity: 0 and render sth above it with
position: absolute.

Yeah I think for at least the search we want a solution where the header height doesn't change. I will look into this again after other stuff is done.

I decided now to close this. It is a minor improvement for only a small number of universities with very wide logos (and without a small logo version). Rebasing this now and solving the remaining problems is certainly possible, but we have more important things to do right now.


Cannot select team via  Spaceship::TunesClient

New Issue Checklist

[ ] Updated fastlane to the latest version
[ ] I have read the Contribution Guidelines

Issue Description
We tried to fully automate following scenario in our company:
having a lot of iOS apps, we needed to know information about version/number of these apps.
-> we connect with our admin iTunes user to iTunes interface
-> we select the corresponding team where the app is
-> we check the app status and version
-> we add this manually in our database.
The above scenario, we converted via code.
I made a Ruby Sinatra app , inside Gemfile added gem 'fastlane', '~> 2.7'
We have several cases where I need to select the team where actually the app belongs to
and the  code crashes with "there is no web session to update".
Please find below the code:
username = ....
password = ....
team_name = ....
bundleId = ....
spaceship = Spaceship::Tunes.login(username, password)
iTunesApp = Spaceship::Tunes::Application.find(bundleId')
unless iTunesApp
teamInfo = spaceship.teams.select { |team| team['contentProvider']['name'] == team_name}.first
team_id = teamInfo['contentProvider']['contentProviderId'] if teamInfo
spaceship.team_id = team_id
iTunesApp = Spaceship::Tunes::Application.find(bundleId)
end
The code crashes when executing spaceship.team_id = team_id with following stacktrace
**[ERROR] Thu 20 Jul 09:55 AM 2017 :: there is no web session to update [ERROR] Thu 20 Jul 09:55 AM 2017 :: ["/usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.39.1/spaceship/lib/spaceship/tunes/tunes_client.rb:162:in handle_itc_response'", "/usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.39.1/spaceship/lib/spaceship/client.rb:228:in team_id='", "/Users/ancazapuc/work_20/appStoreGetSet/helpers/account_wrapper.rb:83:in** updated_version_status_for_account'", "/Users/ancazapuc/work_20/appStoreGetSet/app.rb:62:in block in <top (required)>'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1631:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1631:in block in compile!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:991:in block (3 levels) in route!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1010:in route_eval'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:991:in block (2 levels) in route!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1037:in block in process_route'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1035:in catch'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1035:in process_route'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:989:in block in route!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:988:in each'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:988:in route!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1094:in block in dispatch!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in block in invoke'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in catch'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in invoke'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1091:in dispatch!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:923:in block in call!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in block in invoke'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in catch'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in invoke'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:923:in call!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:913:in call'", "/Users/ancazapuc/work_20/appStoreGetSet/helpers/exceptions.rb:26:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/xss_header.rb:18:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/path_traversal.rb:16:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/json_csrf.rb:26:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/base.rb:50:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/base.rb:50:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/frame_options.rb:31:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-2.0.3/lib/rack/logger.rb:15:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-2.0.3/lib/rack/common_logger.rb:33:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:231:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:224:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-2.0.3/lib/rack/head.rb:12:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-2.0.3/lib/rack/method_override.rb:22:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/show_exceptions.rb:22:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:194:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1955:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1499:in block in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1726:in synchronize'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1499:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/configuration.rb:224:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/server.rb:602:in handle_request'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/server.rb:435:in process_client'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/server.rb:299:in block in run'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/thread_pool.rb:120:in block in spawn_thread'"]
Environment
Please run fastlane env and copy the output below. This will help us help you :+1:
If you used --capture_output option please remove this block - as it is already included there.
🚫 fastlane environment 🚫
Stack

Key
Value

OS
10.12.1

Ruby
2.3.1

Bundler?
false

Git
git version 2.10.1

Installation Source
/usr/local/bin/fastlane

Host
Mac OS X 10.12.1 (16B2555)

Ruby Lib Dir
/usr/local/Cellar/ruby/2.3.1_2/lib

OpenSSL Version
OpenSSL 1.0.2j  26 Sep 2016

Is contained
false

Is homebrew
false

Is installed via Fabric.app
false

Xcode Path
/Library/Developer/CommandLineTools/

System Locale

Error

No Locale with UTF8 found 🚫

fastlane files:
No Fastfile found
No Appfile found
fastlane gems

Gem
Version
Update-Status

fastlane
2.47.0
✅ Up-To-Date

Loaded fastlane plugins:
No plugins Loaded
Loaded gems

Gem
Version

did_you_mean
1.0.0

slack-notifier
1.5.1

CFPropertyList
2.3.5

multipart-post
2.0.0

word_wrap
1.0.0

tty-screen
0.5.0

babosa
1.0.2

colored
1.2

highline
1.7.8

commander-fastlane
4.4.5

unf_ext
<IP_ADDRESS>

unf
0.1.4

domain_name
0.5.20170404

http-cookie
1.0.3

faraday-cookie_jar
0.0.6

fastimage
2.1.0

gh_inspector
1.0.3

declarative
0.0.9

declarative-option
0.1.0

representable
3.0.4

public_suffix
2.0.5

addressable
2.5.1

mime-types-data
3.2016.0521

mime-types
3.1

little-plugger
1.1.4

multi_json
1.12.1

logging
2.2.2

jwt
1.5.6

os
0.9.6

signet
0.7.3

googleauth
0.5.1

httpclient
2.8.3

google-api-client
0.12.0

mini_magick
4.5.1

multi_xml
0.6.0

security
0.1.3

xcpretty-travis-formatter
0.0.4

faraday_middleware
<IP_ADDRESS>

json
2.1.0

io-console
0.4.5

excon
0.57.1

rubyzip
1.2.1

plist
3.3.0

faraday
0.12.1

claide
1.0.2

colored2
3.1.2

nanaimo
0.2.3

xcodeproj
1.5.0

bundler
1.14.6

terminal-table
1.8.0

unicode-display_width
1.3.0

generated on: 2017-07-20

Based on your log output, It looks like you are using fastlane version 2.39.1 - can you do a bundle update and get a newer version to see if that helps? The "there is no web session to update" error was fixed in an older version of fastlane and so I'm hopeful that an update to the version that your Ruby project is using will help with this issue.
Let us know how it goes - thanks for the report!  🚀

I have already tried that, since I googled a lot about this error.
Nevertheless tried again ( upgrading to 2.47.0)
[ERROR] Fri 21 Jul 09:23 AM 2017 :: there is no web session to update
[ERROR] Fri 21 Jul 09:23 AM 2017 :: ["/usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.47.0/spaceship/lib/spaceship/tunes/tunes_client.rb:162:in handle_itc_response'", "/usr/local/lib/ruby/gems/2.3.0/gems/fastlane-2.47.0/spaceship/lib/spaceship/client.rb:228:in** team_id='", "/Users/ancazapuc/work_20/appStoreGetSet/helpers/account_wrapper.rb:83:in updated_version_status_for_account'", "/Users/ancazapuc/work_20/appStoreGetSet/app.rb:62:in block in <top (required)>'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1631:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1631:in block in compile!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:991:in block (3 levels) in route!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1010:in route_eval'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:991:in block (2 levels) in route!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1037:in block in process_route'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1035:in catch'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1035:in process_route'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:989:in block in route!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:988:in each'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:988:in route!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1094:in block in dispatch!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in block in invoke'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in catch'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in invoke'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1091:in dispatch!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:923:in block in call!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in block in invoke'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in catch'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1073:in invoke'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:923:in call!'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:913:in call'", "/Users/ancazapuc/work_20/appStoreGetSet/helpers/exceptions.rb:26:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/xss_header.rb:18:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/path_traversal.rb:16:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/json_csrf.rb:26:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/base.rb:50:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/base.rb:50:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-protection-2.0.0/lib/rack/protection/frame_options.rb:31:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-2.0.3/lib/rack/logger.rb:15:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-2.0.3/lib/rack/common_logger.rb:33:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:231:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:224:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-2.0.3/lib/rack/head.rb:12:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/rack-2.0.3/lib/rack/method_override.rb:22:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/show_exceptions.rb:22:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:194:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1955:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1499:in block in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1726:in synchronize'", "/usr/local/lib/ruby/gems/2.3.0/gems/sinatra-2.0.0/lib/sinatra/base.rb:1499:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/configuration.rb:224:in call'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/server.rb:602:in handle_request'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/server.rb:435:in process_client'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/server.rb:299:in block in run'", "/usr/local/lib/ruby/gems/2.3.0/gems/puma-3.9.1/lib/puma/thread_pool.rb:120:in block in spawn_thread'"]
I tried also setting up
ENV['FASTLANE_ITC_TEAM_NAME']=<team>
ENV['FASTLANE_ITC_TEAM_ID'] =<team_id>
spaceship.select_team

->
got same error.
If you think it's easier , I can easily provide you with a "test.rb" file with my code so you can reproduce on your machine.

Absolutely - send that file (or a GitHub gist with the contents of it)!  I'd love to try it on my machine to see what I can learn.
Thanks!  🚀

I created a code snippet for this issue from my original code. The problem happens when I try to iterate an array aprox 250 records from our database ( we keep iTunes credentials / bundle / team name inside our db). I need to parse all of them , connect to iTunes and retrieve the correct version and number.
gem fastlane, '2.47.0'

require 'spaceship'

array_of_hashes = [ {username: 'iTunes_user', password: 'iTunes_password', bundle:'app_bundle_id', team: 'team_name'}, {}, {}......] # size of 250 records
array_of_hashes.each do |hash|
  begin
    puts "Starts processs hash: #{hash}..."
  spaceship = Spaceship::Tunes.login(hash[:username],hash[:password])
   sleep 5 # this sleep needed for avoiding Itunes::Connect Error
  iTunesApp = Spaceship::Tunes::Application.find(hash[:bundle])

unless iTunesApp
  teamInfo = spaceship.teams.select { |team| team['contentProvider']['name'].strip.downcase == hash[:team].strip.downcase }.first
  team_id = teamInfo['contentProvider']['contentProviderId'] if teamInfo
  if (team_id)
    puts "Team if found is: #{team_id}"
    spaceship.team_id = team_id
    iTunesApp = Spaceship::Tunes::Application.find(hash[:bundle])
    puts "YEYY I should arrive #{iTunesApp}....."
    # extract version and status number....
end
end
  rescue Exception => ex
    puts "Exception occured...."
    puts ex.message
end
end

I have found the problem ( indeed it was my monkey patch).  I upgraded the monkey patch according to 2.47.0 fas lane version  and now it works.
I think I can close the task && thanks for quick responses.


Fix spelling in DNS-based proxy info

Fixing typo in docs
Need's backporting to older versioned docs

/test


unrecognized command line option "-Wno-long-double"

Hi,
We're trying to install BRAINSTools on Scientific Linux release 6.6 (Carbon), with:
gcc (and g++) version: gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11).
Code run:
git clone https://github.com/BRAINSia/BRAINSTools.git
mkdir BRAINSTools-build && cd BRAINSTools-build
CC=/usr/bin/gcc
CXX=/usr/bin/g++
ccmake ../BRAINSTools
-DUSE_BRAINSFit:BOOL=ON
-DUSE_BRAINSConstellationDetector:BOOL=ON
-DUSE_BRAINSABC:BOOL=ON
-DUSE_ConvertBetweenFileFormats:BOOL=ON
-DUSE_BRAINSSurfaceTools:BOOL=OFF
-DPYTHON_EXECUTABLE:PATH=/usr/pubsw/packages/python/epd/bin/python2.7
-DPYTHON_LIBRARY:PATH=/usr/pubsw/packages/python/epd/lib
-DPYTHON_INCLUDE_DIR:PATH=/usr/pubsw/packages/python/epd/include
make -j 1 -k
make
We are getting the following error:
[ 98%] Building CXX object Modules/IO/TransformBase/src/CMakeFiles/ITKIOTransformBase.dir/itkTransformFileWriterSpecializations.cxx.o
/opt/BRAINSTools-build/ITKv4/Modules/IO/TransformBase/src/itkTransformFileWriterSpecializations.cxx:176: error: using ‘typename’ outside of template
/opt/BRAINSTools-build/ITKv4/Modules/IO/TransformBase/src/itkTransformFileWriterSpecializations.cxx:177: error: using ‘typename’ outside of template
/opt/BRAINSTools-build/ITKv4/Modules/IO/TransformBase/src/itkTransformFileWriterSpecializations.cxx:184: error: using ‘typename’ outside of template
/opt/BRAINSTools-build/ITKv4/Modules/IO/TransformBase/src/itkTransformFileWriterSpecializations.cxx:185: error: using ‘typename’ outside of template
cc1plus: warning: unrecognized command line option "-Wno-long-double"
make[5]: *** [Modules/IO/TransformBase/src/CMakeFiles/ITKIOTransformBase.dir/itkTransformFileWriterSpecializations.cxx.o] Error 1
make[4]: *** [Modules/IO/TransformBase/src/CMakeFiles/ITKIOTransformBase.dir/all] Error 2
make[3]: *** [all] Error 2
make[2]: *** [ITKv4-prefix/src/ITKv4-stamp/ITKv4-build] Error 2
make[1]: *** [CMakeFiles/ITKv4.dir/all] Error 2
make: *** [all] Error 2
After some searching online, I came across some references saying that the -Wno-long-double argument is no longer needed in most cases. I found a source saying that the autoconf scripts should be running a test to determine whether or not gcc accepts the -Wno-long-double argument, so we tried adding these two lines to the file CMakeCache.txt in the BRAINSTools-build directory (not at all sure if these settings make sense):
//Test C_HAS_WARNING-Wno-long-double
C_HAS_WARNING-Wno-long-double:INTERNAL=1
followed by running just ‘make’ from that directory, but got the same error.
Another source was saying it might be the gcc version, and that some (older) versions of the compiler gcc don’t accept this argument (current version is 4.8.X), but the gcc version is exactly the same as on another system we successfully installed BRAINSTools on, so I don't think that is it.
Do you have ideas as to how we might be able to fix this issue?
Thanks very much in advance.
Gabriëlla

Gabriella,
You have the wrong message regarding why your builds are failing.  The correct error message is:
/opt/BRAINSTools-build/ITKv4/Modules/IO/TransformBase/src/itkTransformFileWriterSpecializations.cxx:176: error: using ‘typename’ outside of template
We fixed this last week, and the newest release of BRAINSTools should now work.
Hans
Hans J. Johnson
<EMAIL_ADDRESS>
On Jul 3, 2015, at 2:59 PM, gblokland<EMAIL_ADDRESS>wrote:
Hi,
We're trying to install BRAINSTools on Scientific Linux release 6.6 (Carbon), with:
gcc (and g++) version: gcc (GCC) 4.4.7 20120313 (Red Hat 4.4.7-11).
Code run:
git clone https://github.com/BRAINSia/BRAINSTools.git https://github.com/BRAINSia/BRAINSTools.git
mkdir BRAINSTools-build && cd BRAINSTools-build
CC=/usr/bin/gcc
CXX=/usr/bin/g++
ccmake ../BRAINSTools
-DUSE_BRAINSFit:BOOL=ON
-DUSE_BRAINSConstellationDetector:BOOL=ON
-DUSE_BRAINSABC:BOOL=ON
-DUSE_ConvertBetweenFileFormats:BOOL=ON
-DUSE_BRAINSSurfaceTools:BOOL=OFF
-DPYTHON_EXECUTABLE:PATH=/usr/pubsw/packages/python/epd/bin/python2.7
-DPYTHON_LIBRARY:PATH=/usr/pubsw/packages/python/epd/lib
-DPYTHON_INCLUDE_DIR:PATH=/usr/pubsw/packages/python/epd/include
make -j 1 -k
make
We are getting the following error:
[ 98%] Building CXX object Modules/IO/TransformBase/src/CMakeFiles/ITKIOTransformBase.dir/itkTransformFileWriterSpecializations.cxx.o
/opt/BRAINSTools-build/ITKv4/Modules/IO/TransformBase/src/itkTransformFileWriterSpecializations.cxx:176: error: using ‘typename’ outside of template
/opt/BRAINSTools-build/ITKv4/Modules/IO/TransformBase/src/itkTransformFileWriterSpecializations.cxx:177: error: using ‘typename’ outside of template
/opt/BRAINSTools-build/ITKv4/Modules/IO/TransformBase/src/itkTransformFileWriterSpecializations.cxx:184: error: using ‘typename’ outside of template
/opt/BRAINSTools-build/ITKv4/Modules/IO/TransformBase/src/itkTransformFileWriterSpecializations.cxx:185: error: using ‘typename’ outside of template
cc1plus: warning: unrecognized command line option "-Wno-long-double"
make[5]: *** [Modules/IO/TransformBase/src/CMakeFiles/ITKIOTransformBase.dir/itkTransformFileWriterSpecializations.cxx.o] Error 1
make[4]: *** [Modules/IO/TransformBase/src/CMakeFiles/ITKIOTransformBase.dir/all] Error 2
make[3]: *** [all] Error 2
make[2]: *** [ITKv4-prefix/src/ITKv4-stamp/ITKv4-build] Error 2
make[1]: *** [CMakeFiles/ITKv4.dir/all] Error 2
make: *** [all] Error 2
After some searching online, I came across some references saying that the -Wno-long-double argument is no longer needed in most cases. I found a source saying that the autoconf scripts should be running a test to determine whether or not gcc accepts the -Wno-long-double argument, so we tried adding these two lines to the file CMakeCache.txt in the BRAINSTools-build directory (not at all sure if these settings make sense):
//Test C_HAS_WARNING-Wno-long-double
C_HAS_WARNING-Wno-long-double:INTERNAL=1
followed by running just ‘make’ from that directory, but got the same error.
Another source was saying it might be the gcc version, and that some (older) versions of the compiler gcc don’t accept this argument (current version is 4.8.X), but the gcc version is exactly the same as on another system we successfully installed BRAINSTools on, so I don't think that is it.
Do you have ideas as to how we might be able to fix this issue?
Thanks very much in advance.
Gabriëlla
—
Reply to this email directly or view it on GitHub https://github.com/BRAINSia/BRAINSTools/issues/195.

Was fixed in this release when building stand alone.
https://github.com/BRAINSia/BRAINSTools/commit/52302842a7e16813266ee86fc2840b0615bb7ced


dynamically load module dependency third part modules not work

https://github.com/christopherthielen/ui-router-extras/issues/300


Socketcluster cluster crash

I have a socketcluster cluster included one loanderblancer 、 one scc-broker 、one scc-state 、two socketcluster
These days I found that the cluster is often broken, through the search scc-state log found a lot of the following
Is it my network problem? But I have through the network communication
{ SocketProtocolError: Client pong timed out
at Emitter.SCSocket._onSCClose (/usr/src/node_modules/socketcluster-server/scsocket.js:207:17)
at Timeout. (/usr/src/node_modules/socketcluster-server/scsocket.js:172:10)
at tryOnTimeout (timers.js:224:11)
at Timer.listOnTimeout (timers.js:198:5)
name: 'SocketProtocolError',
message: 'Client pong timed out',
code: 4001 }
{ SocketProtocolError: Socket hung up
at Emitter.SCSocket._onSCClose (/usr/src/node_modules/socketcluster-server/scsocket.js:207:17)
at WebSocket.internalOnClose (/usr/src/node_modules/socketcluster-server/scsocket.js:70:10)
at process.nextTick (/usr/src/node_modules/uws/uws.js:440:27)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
name: 'SocketProtocolError',
message: 'Socket hung up',
code: 1006 }
SocketProtocolError: Server ping timed out
at Emitter.SCSocket._onSCClose (/usr/src/node_modules/socketcluster-server/scsocket.js:207:17)
at WebSocket.internalOnClose (/usr/src/node_modules/socketcluster-server/scsocket.js:70:10)
at process.nextTick (/usr/src/node_modules/uws/uws.js:440:27)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
name: 'SocketProtocolError',
message: 'Server ping timed out',
code: 4000 }

@ArmorHerO These errors just mean that the connection closed unexpectedly. Maybe the internet dropped out or a proxy killed the connection. How if your cluster set up?

@jondubois  I use the docker mirror, mirror it with the node to do it, the cluster has to try to connect again, but the same will have been disconnected, many times after no longer try again

@xuejipeng Note that there have been significant improvements in SCC since this issue was raised. I would highly recommend upgrading to the latest versions of scc-broker and scc-state Docker images and also the latest version of scc-broker-client (in the regular/scc-worker SC instance).

scc-broker-client 3.x.x is very good. Try upgrading to that. We've noticed a difference at Fusionware.


handling back botton

Feature: handling back botton when user click browser back bottom /  do not let browser to get back to previews route

Bottom-sheet-vue3 has no relation with router. You need to code that behavior yourself.
You can use this code:
onBeforeRouteLeave(() => {
  return !sheetVisible.value
})


                  at org.tensorflow.demo.LegacyCameraConnectionFragment$1.onSurfaceTextureAvailable(LegacyCameraConnectionFragment.java:99)

I have loaded my own .pb model in the tensorflow-classifier code but getting runtime exception over this class of code. This exception is crashing my application.Please help me to solve this problem.
at org.tensorflow.demo.LegacyCameraConnectionFragment$1.onSurfaceTextureAvailable(LegacyCameraConnectionFragment.java:99)

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce

Automatically closing due to lack of recent activity. Please update the issue when new information becomes available, and we will reopen the issue. Thanks!