Query for Parse.User is empty when calling 2nd time

Environment Setup
Parse Server 2.2.2
Using Parse JS SDK
Steps to reproduce
I'm setting an ACL for every user that is saved in an afterSave Hook:
Parse.Cloud.afterSave('_User', function(request, response) {
  // Use the masterkey
  Parse.Cloud.useMasterKey();
  // Get the user
  var user = request.object;
  // Create an ACL
  var userACL = new Parse.ACL();
  userACL.setPublicReadAccess(false);
  userACL.setReadAccess(user, true);
  userACL.setWriteAccess(user, true);
  userACL.setRoleWriteAccess("admin", true);
  userACL.setRoleReadAccess("admin", true);
  // Set the ACL to the user
  user.setACL(userACL);
  // Save the user
  user.save()...

This should now allow only the user itself or and admin user to read/write the user object.
When I now query for ALL users as and admin like this:
    let query = new Parse.Query(Parse.User);
    query.ascending('username');
    query.find().then(users => {
      this.users = users;
      console.log(this.users);
    }, error => {
      console.log('Error: ' + error.code + ' ' + error.message);
    });

I get a list of all users. But when I run the same query a second time, it is empty.

Again, Parse.Cloud.useMasterKey has no effet on parse-server!

Hmm, I do not 100% get what MasterKey has to do with that. I'm using the provided query within a webapp so I don't want to use masterKey at all. Does this mean that I can not get a list of users within an app?

Are you sure in the database that those users are stored with the permissions you expect? because you use Parse.Cloud.useMasterKey(); there is a chance you can't update the users with the permissions you'd expect.

Jep, in the Db the users look correct:
{
  "_id": "eKePsMPrk3",
  "_rperm": [
    "eKePsMPrk3",
    "role:admin"
  ],
  "_wperm": [
    "eKePsMPrk3",
    "role:admin"
  ],
  "username": "myname",
  "email"<EMAIL_ADDRESS>  "role": "customer",
  ...
}

The strange thing is that the first time I run the query, the result contains the expected Users in the array. Only the second time it is empty.

What do you mean the second time? what's your code? Can you provide the server logs when running in  VERBOSE?

As mentioned in the OP I have a query function which is called inside my App:
loadUsers() {
  let query = new Parse.Query(Parse.User);
  query.ascending('username');
  query.find().then(users => {
    this.users = users;
    console.log(this.users);
  }, error => {
    console.log('Error: ' + error.code + ' ' + error.message);
  });
}

The first time it is called I get a valid list of users.
Verbose output:
GET /api/classes/_User { host: 'localhost:1337',
  connection: 'keep-alive',
  'content-length': '236',
  origin: 'http://localhost:8100',
  'user-agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1',
  'content-type': 'text/plain',
  accept: '*/*',
  referer: 'http://localhost:8100/',
  'accept-encoding': 'gzip, deflate',
  'accept-language': 'en' } {
  "where": {},
  "order": "username"
}
response: {
  "response": {
    "results": [
      {
        "ACL": {
          "QTS1i60M7m": {
            "read": true,
            "write": true
          },
          "role:admin": {
            "read": true,
            "write": true
          }
        },
        "objectId": "QTS1i60M7m",
        "username": "XXXX",
        "email": "XXXX",
        "role": "customer",
        "updatedAt": "2016-03-26T12:23:43.954Z",
        "createdAt": "2016-03-26T12:23:43.695Z"
      },
      {
        "ACL": {
          "UPUyk6WjaS": {
            "read": true,
            "write": true
          }
        },
        "objectId": "UPUyk6WjaS",
        "username"<EMAIL_ADDRESS>        "email"<EMAIL_ADDRESS>        "role": "super",
        "updatedAt": "2016-03-26T13:51:57.945Z",
        "createdAt": "2016-03-26T12:16:58.560Z",
      },
      {
        "ACL": {
          "eKePsMPrk3": {
            "read": true,
            "write": true
          },
          "role:admin": {
            "read": true,
            "write": true
          }
        },
        "objectId": "eKePsMPrk3",
        "username": "XXXX",
        "email": "XXXX",
        "role": "customer",
        "updatedAt": "2016-03-26T12:24:04.310Z",
        "createdAt": "2016-03-26T12:24:04.071Z"
      },
      {
        "ACL": {
          "tOWuF3IIcS": {
            "read": true,
            "write": true
          },
          "role:admin": {
            "read": true,
            "write": true
          }
        },
        "objectId": "tOWuF3IIcS",
        "username": "XXXX",
        "email": "XXXX",
        "role": "customer",
        "updatedAt": "2016-03-26T12:24:21.006Z",
        "createdAt": "2016-03-26T12:24:20.769Z"
      }
    ]
  }
}

When I run the exact same function a second time from my app, I get an empty array back:
GET /api/classes/_User { host: 'localhost:1337',
  connection: 'keep-alive',
  'content-length': '183',
  origin: 'http://localhost:8100',
  'user-agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1',
  'content-type': 'text/plain',
  accept: '*/*',
  referer: 'http://localhost:8100/',
  'accept-encoding': 'gzip, deflate',
  'accept-language': 'en' } {
  "where": {},
  "order": "username"
}
response: {
  "response": {
    "results": []
  }
}

NOTE:
Both times I call the function as a logged in "admin" user.

I noted as well that if I log out and in again, my loadUsers() function suddenly returns the users but then again when calling it a second time, the result is an empty array again.

I just did a test for the same query using a standard curl request:
curl -X GET -H "X-Parse-Application-Id: myapp" -H "X-Parse-Session-Token: r:63fe72cfbb93cb1de49547e0dccaed0b" -H "Cache-Control: no-cache" "http://localhost:1337/api/classes/_User"

Where the session token is the one that my admin user got in the webapp. This request is always returning the correct user list. So I guess this could be an issue with the JS SDK...

Maybe @andrewimm, @drew-gross  ? that do you think?

@flavordaaave I don't see the session token being passed to your queries...

@flovilmart I thought when using the JS SDK I don't need to pass the session token because the SDK automatically takes care of that as soon as I'm logged in and have a valid session. At least this is how it has been working with other queries for me so far.

What I'm saying is that I don't see the session token in your request headers in the server logs.

Ah, okay. Sorry...
Btw. I have a similar query in my app where I load all orders of a user. The order Objects have an ACL similar to my Users:
Order Object in DB:
{
  "_id": "2frxdfNlKZ",
  "_rperm": [
    "role:admin",
    "6qQBHeqaJY"
  ],
  "_wperm": [
    "role:admin",
    "6qQBHeqaJY"
  ],
  ...
}

Query for the Orders (as admin user) the same way as done with the Users class in the example above results in:
GET /api/classes/Order { host: 'localhost:1337',
  connection: 'keep-alive',
  'content-length': '280',
  origin: 'http://evil.com/',
  'user-agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1',
  'content-type': 'text/plain',
  accept: '*/*',
  referer: 'http://localhost:8100/',
  'accept-encoding': 'gzip, deflate',
  'accept-language': 'en' } {
  "where": {},
  "order": "-createdAt"
}
response: {
  "response": {
    "results": [
      {
        "ACL": {
          "role:admin": {
            "read": true,
            "write": true
          },
          "QTS1i60M7m": {
            "read": true,
            "write": true
          }
        },
        "objectId": "NBNcE4ZQUD",
        ...
      }
    ]
  }
}

The strange thing here is that this query always returns the array including all the orders where as the user query still only returns results the 1st time it is called during a session...

Maybe related to the way we cache users and roles on parse-server

Sorry for all the spam but I noticed another interesting thing here:
Query for users:
let query = new Parse.Query(Parse.User);
query.ascending('username');
query.find().then(users => {
  console.log(users);
  return Parse.User.current().fetch();
}).then(currentUser => {
  console.log(currentUser);
}, error => {
  console.log(error);
});

==> Console shows error for fetching user
Query for orders:
let order = Parse.Object.extend('Order');
let query = new Parse.Query(order);
query.find().then(orders => {
  console.log(orders);
  return Parse.User.current().fetch();
}).then(user => {
  console.log(user);
}, error => {
  console.log(error)
});

==> User is fetched without any problems.
So it seems to me that when querying for the _User class, something with the session gets messed up.

Parse.User.current() is not available in Cloud Code in parse server, you need to use request.user

I'm running those queries in a webapp using the JS SDK, not cloud code.

Ok.

Another hint ;)
When I exclude the current user from the query to get all users, everything is working as expected.
    let query = new Parse.Query(Parse.User);
    query.ascending('username');
    query.notEqualTo('email', Parse.User.current().getEmail());
    query.find().then(users => {
      console.log(users);
    }).then(currentUser => {
      console.log(currentUser);
    }, error => {
      console.log(error);
    });

This way my loadUsers() function always returns an array with users.
So it seems that as soon as the current user itself is part of the result of the query, things get messed up.

I just caught up with this thread and it is not clear to me if this is a backend issue or a JavaScript SDK issue. The best way to answer that question is to use the REST API directly.
Can you reliably reproduce the specific issue where running the query for a second time returns in an empty result set, when using the REST API?
If this can only be reproduced when the JavaScript SDK is used, this may actually be an issue with the SDK instead.

@hramos I already did the test against the REST API (see above) and there everything worked correct. So I guess this is an issue with the JS SDK. As far as I could debug I assume the JS SDK has problems when the result of a query for Parse.User contains the currently logged in user itself.

Oh, this is already fixed in the master branch of the JS SDK. I'm just waiting on others to fix the issues with RN and the new LiveQueries interface before releasing 1.8.2.

Great so this can be closed. THX


Cascaded image

This is interesting. pdf: https://github.com/mozilla/pdf.js/blob/master/test/pdfs/issue3458.pdf
Before the #3506 fix the image is upside-down and somehow cascaded, see http://postimg.org/image/ns507atmh/
With the fix the image is the correct side up but differently cascaded, see http://postimg.org/image/hbobh5dml/
Reference with Adobe, see http://postimg.org/image/ixornpfmt/
I have Windows 7, hwa on, Aurora 25.0a2.
Apparently on OSX it looks fine.

Closing as fixed as this renders as it should now.


OSS dark mode sketch

Closes #3416
How does this look folks? There's plenty of time to rework this so please feel free to throw out suggestions.
Implementation:
Get mode in context:

Move AppContextProvider above all the styles stuff in App.tsx
Move styles stuff out into StylesProvider so it can use AppContext
Add theme to AppSettings type in context with toggleDarkMode function
Check window.matchMedia and localStorage for initial value

Supply an arg to themes:

theme function expects mode arg and supplies it to the existing baseTheme and returns the DefaultTheme type that was already in OSS - the dark mode colors will be added once designs are ready.
colors arg is supplied to muiTheme from StylesProvider component to override MUI primary, secondary, etc.

Next steps:

How will this apply to Enterprise? theme and GlobalStyle should work just like do in OSS without making changes. There's a muiTheme file in the Enterprise repo that has two themes, and those could be structured similar to this draft, with a StylesProvider component that can create the theme based on the mode, and pass down the colors to the muiTheme, but I have to look into what those actually do, and whether I can just combine the muiThemes in OSS and Enterprise and call it a day.
If colors don't correlate 1:1 from mode to mode like they do in my dreams, additional overrides can be made using mode from context - this will help with logo and background images as well

Closing for now as the goals of the spike have been accomplished. Great job @joshri


Error while installing 'Azure Tools' extension

Type: Bug
I tried installing Azure Tools but it always have an error message that says "Error while installing 'Azure Tools' extension. Please check the log for more details. Try Downloading Manually..." I tried manually installing the other Azure apps and they got installed except for Azure Storage. The log for this is
2023-10-07 08:25:24.440 [warning] Via 'product.json#extensionEnabledApiProposals' extension 'ms-dotnettools.dotnet-interactive-vscode' wants API proposal 'languageConfigurationAutoClosingPairs' but that proposal DOES NOT EXIST. Likely, the proposal has been finalized (check 'vscode.d.ts') or was abandoned.
2023-10-07 08:25:24.461 [warning] Via 'product.json#extensionEnabledApiProposals' extension 'github.copilot-chat' wants API proposal 'terminalContextMenu' but that proposal DOES NOT EXIST. Likely, the proposal has been finalized (check 'vscode.d.ts') or was abandoned.
2023-10-07 08:25:28.444 [info] [perf] Render performance baseline is 92ms
2023-10-07 08:25:48.006 [error] CorruptZip: end of central directory record signature not found
at w.download (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:141)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async W.x (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:19882)
at async W.h (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:17926)
2023-10-07 08:25:48.064 [error] end of central directory record signature not found: CorruptZip: end of central directory record signature not found
at w.download (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:141)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async W.x (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:19882)
at async W.h (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:17926)
2023-10-07 08:30:09.257 [error] CorruptZip: end of central directory record signature not found
at w.download (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:141)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async W.x (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:19882)
at async W.h (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:17926)
2023-10-07 08:30:09.289 [error] end of central directory record signature not found: CorruptZip: end of central directory record signature not found
at w.download (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:141)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async W.x (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:19882)
at async W.h (c:\Program Files\Microsoft VS Code\resources\app\out\vs\code\node\sharedProcess\sharedProcessMain.js:109:17926)
Also at the manual download site of the app here is the message:
{
"$id": "1",
"innerException": null,
"message": "Request was blocked due to exceeding usage of resource 'Count' in namespace 'AnonymousId'. For more information on why your request was blocked, see the topic "Rate limits" on the Microsoft Web site (https://go.microsoft.com/fwlink/?LinkId=823950).",
"typeName": "Microsoft.TeamFoundation.Framework.Server.RequestBlockedException, Microsoft.TeamFoundation.Framework.Server",
"typeKey": "RequestBlockedException",
"errorCode": 0,
"eventId": 3000
}
VS Code version: Code 1.83.0 (e7e037083ff4455cf320e344325dacb480062c3c, 2023-10-03T16:12:16.321Z)
OS version: Windows_NT x64 10.0.22000
Modes:

Hi @macubexx
Thank you for reaching VS Marketplace Support Team. We are following up to determine how best to address it.
-VS Marketplace Team

@macubexx, could you create issue here: https://github.com/microsoft/vscode-node-azure-pack/issues

Hi @macubexx  Since   We are closing the issue as we have not heard from you in a while.
If the issue is still there, please feel free to comment or start a new issue.
Thanks,
VS Marketplace Team


NSURLSessionTaskDelegate Method Crash

I got a crash when runing on  "- (void)URLSession:(__unused NSURLSession *)session  task:(NSURLSessionTask *)task didCompleteWithError:(NSError *)error" method.
Still not figure out what's going on, any ideas?

AFNetworking Environment
AFNetworking version:4.0.1
Xcode version:13.2.1
Platform(s) running AFNetworking:14.8.1
macOS version running Xcode:12.2.1

#2900

It's weird that crashes only occur in my SDK projects.In detail, SDK projects denpend on AFNetworking,but I don't want static library include AFNetworking,so I only import AFNetworking's header file.  And demo projects import all AFNetworking file, when I run demo projects, it will crash. I create a new project that imported my static library and AFNetworking ,it runs well.


Postage blockchain operations should return transaction hash

Problem
Till 1.2 release the postage batch API had only one blockchain operation - creation of batch. You introduced the flag usable in the batch listing to track when this creation has enough confirmations and the user can use it for Bee operations.
Now with the new dilute and topup endpoints, there are new endpoints that create blockchain operation that again needs to wait for certain confirmations before it is propagated to Bee state. But currently, there is no way how to say when that happens as the usable flag is not really applicable for this case.
Proposed solution
Let all API calls that create blockchain transactions return transaction hash (among other things you find necessary). This is already the case for things like chequebook cashout and other things, but the Postage API does not follow this.
There is the Debug API endpoint /transactions that then the user can track for pending transactions and see when the transaction is processed.

Hmm so I might have been wrong about my reasoning here. It seems that you block the API call until the underlying blockchain call is pronounced as confirmed. Is that correct?

@AuHau afaik the API won't block until sufficient confirmations are received in those cases, but knowing whether the change has been propagated to bee is easily monitored by polling the batch via the stamps endpoint. Once the transaction is mined and the block is propagated, we pick up the event and update the stamp issuer with the correct values. So when you top-up you'll be looking for a value increase on the batch value, and when you dilute you'll be looking for a value change in the batch depth. This was a conscious design decision as it simplifies a lot of the design handling this flow (and this is also why the api returns a 202 Accepted rather than a 200 OK)


unhandledRejection

These should be handled automatically, as to reduce boilerplate. A common issue as a result of this is #1128.
process.on('unhandledRejection', (reason, promise) => throw promise);

For web browsers, we could use window.addEventListener.

This is definitely something we should add, since the current timeout behavior is quite uninformative and generally promise implementations support this hook; but let's make sure the resulting test failure message indicates that these errors would have been swallowed by the promise in production and should be somehow handled or communicated to the caller for handling (at which point it's easy for the test to communicate the failure back to Mocha without relying on unhandled rejection functions) -- a lot of the questions we get about the current behavior come from lack of awareness of the need for catch.

One clarification to my earlier comment: I was thinking specifically of unhandled promise rejections -- I believe Mocha already catches uncaught non-promise-swallowed exceptions?

Yes, I think that's true.

+1  We were completely caught by surprise that mocha catches thrown errors but not unhandled rejections. Our tests passed when actually they should have failed.

This is what I think needs to happen:

An unhandled rejection needs to result in the same (or similar) behavior as when an uncaught exception is thrown
A new flag, --allow-unhandled, should be added (if we piggybacked on --allow-uncaught,  it would be more difficult to pin down either one in particular)
Plenty of tests.

Since Mocha doesn't use Promises internally, this shouldn't be a particular severe change to the codebase.  I think we can get away with basically copy-and-pasting the majority of the "uncaught exception" behavior, as well as the test suites.
There are likely some edge cases here I'm not considering, so this is best-case scenario.  😇

I have a WIP commit that implements unhandled rejection support: https://github.com/ofrobots/mocha/commit/712678ccd3605ed95b60072a1d6059052c4f9a6b. @boneskull If this is in line with what you had in mind in this comment I can go ahead and finish this off, write tests and open a PR.
This would be a semver major change IMO, so perhaps a --disallow-unhandled makes more sense than --allow-unhandled?

@ofrobots yes, please.  --allow-unhandled is fine, we can put it into next major.

@ofrobots, ever finish that WIP PR?

I didn't get a chance to work on it more :(. Feel free to take the WIP commit linked above and to convert it to a PR.

@benjamingr and web browsers?

@benjamingr but Mocha should still fail the same within a web browser; per this thread's original comment.

In Mocha v8.2.0 we added an unhandledRejection listener.
Going to close this issue.

In Mocha v8.2.0 we added an unhandledRejection listener.
Going to close this issue.

@juergba To get unhandledRejection in the xxxx.test.ts at the beginning I need to add the following rows in order to grab the Exception raised in any async function.
process.on('unhandledRejection', (reason) => {
  throw reason;
});

E.G. In the following example mocha doesn't print anything<EMAIL_ADDRESS>private async XXX() {
    throw new Error('fooo error');

It seems Mocha doesn't handle this type of event and silently hides them. Is the expected behavior?

@juergba The same faulty/unwanted behavior described in this issue and was fixed in 8.2.0 or earlier; i.e, that mocha silently ignores unhandled promise rejections that occur in tests instead of failing the tests.

Was debugging this issue. All Mocha does on unhandled rejections is just
process.emit('unhandledRejection', reason, promise);

This is useless and the issue must be reopen.
I could try to mitigate this by throwing myself in process.on('unhandledRejection'), which will lead to Mocha going into uncaught route, but it is a hack.

I'm seem to have this same issue in 10.2.0

Use this env NODE_OPTIONS=--unhandled-rejections=strict can convert unhandledRejection event to uncaughtException .


Forced Resource Group Collocation of SQL Server and SQL Databases

In Azure/azure-sdk-for-go#663 @zsims says:
The DatabasesClient supports creating databases via CreateOrUpdate however, it assumes the given resource group name is both the target resource group and the resource group where the server can be found.
As a result, it's not possible to create databases in different resource groups from the server.

As this issue is not related to Go directly, but rather a limitation of how the service can be communicated with, I'm transferring the bug to this repository. Some relevant documentation can be found here: Cross Resource Group Deployment which suggests that forcing folks to deploy all related resources into a single resource group is an anti-pattern in ARM.

Thanks for logging this issue. The resource group contains the server, which contains the database. Therefore a database cannot be in a different resource group than its server.

Alright, fair enough. It may be worth documenting that somewhere. :)
Thanks for getting back to us on this. @zsims, you okay with this resolution?

I hope this helps on your side @zsims please reopen if required and thanks again for reaching out to us!!

Sorry for the delay. Thanks for the prompt follow up. Helps on our side, just rather unfortunate given SQL database pools with hundreds of databases in them.
Thanks again for the explanation everyone, especially @marstr for the cross project follow up.


add myself and remove Jared from security contacts

I'm joining the sig-leads triumvirate and replacing Jared, so following up here as requested.

:tada:!
On Thu, Oct 4, 2018 at 10:49 AM k8s-ci-robot<EMAIL_ADDRESS>wrote:

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To fully approve this pull request, please assign additional approvers.
We suggest the following additional approver: bradamant3
If they are not already assigned, you can assign the PR to them by writing /assign
@bradamant3 in a comment when ready.
The full list of commands accepted by this bot can be found here
https://go.k8s.io/bot-commands.
The pull request process is described here
https://git.k8s.io/community/contributors/guide/owners.md#the-code-review-process
Needs approval from an approver in each of these files:

OWNERS https://github.com/kubernetes/website/blob/master/OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/kubernetes/website/pull/10495#issuecomment-427109998,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AE81SNl87SYA10JNRnfsr07g8p7xCrYbks5uhkoSgaJpZM4XImaP
.

@jaredbhatti Thank you for your years of service!
@Bradamant3 Welcome aboard! Please review and approve #10497 as well. Thanks in advance! 🙇
/lgtm
/approve


(GH-1567) Error when using a v1 inventory

This adds an error when Bolt detects that a v1 inventory file is being
used. A v1 inventory file is identified by the use of a nodes key at
the group level, which is deprecated in v2 inventory files.

CLA signed by all contributors.


Unable to run example trainer using GPU

Hi experts,
I am building tensorflow from source and using virtualenv. I followed all the steps in
https://www.tensorflow.org/versions/r0.10/get_started/os_setup.html#installing-from-sources
but when i try to run the example trainer, i get a Floating point exception core dump error.
Please let me know if you need further information and how I can get it for you.
Much appreciated!

Macchakaran

(tensorflow) macchakaran@macchakaran-pc:~/Work/tensorflow$ bazel-bin/tensorflow/cc/tutorials_example_trainer --use_gpu
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcublas.so.8.0 locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcudnn.so.5.1.5 locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcufft.so.8.0 locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcuda.so.1 locally
I tensorflow/stream_executor/dso_loader.cc:111] successfully opened CUDA library libcurand.so.8.0 locally
I tensorflow/stream_executor/cuda/cuda_gpu_executor.cc:925] successful NUMA node read from SysFS had negative value (-1), but there must be at least one NUMA node, so returning NUMA node zero
I tensorflow/core/common_runtime/gpu/gpu_device.cc:951] Found device 0 with properties:
name: GeForce GTX 1070
major: 6 minor: 1 memoryClockRate (GHz) 1.683
pciBusID 0000:01:00.0
Total memory: 7.92GiB
Free memory: 7.47GiB
I tensorflow/core/common_runtime/gpu/gpu_device.cc:972] DMA: 0
I tensorflow/core/common_runtime/gpu/gpu_device.cc:982] 0:   Y
I tensorflow/core/common_runtime/gpu/gpu_device.cc:1041] Creating TensorFlow device (/gpu:0) -> (device: 0, name: GeForce GTX 1070, pci bus id: 0000:01:00.0)
Floating point exception (core dumped)

Please fill out the question template when you click on "New issue"  --- this will help us a lot in figuring out what the issue is.

Automatically closing due to lack of recent activity. Please reopen when additional information becomes available. Thanks!


Option for custom html code as image

I would like to add a Material Icon as an image, which uses an icon font. Is there any way to do submit a html code as an iamge?

@TSGames only if you create a custom component.

Isn't there an easy way to add an attribute option for htmlBefore and htmlAfter to create something like this? I guess a lot of users would need this, since using icon fonts is pretty common.

injecting HTML is something I'd rather not do.
I thought about using content projection for the dropdown row for those that just want to modify it without customizing the rest of the component.

Is there a way to modify the dropdown-item display in any way? IE classes or sizes supplied template ect?
I have a custom data service that returns the a name and a base64 image src. Right now the images being returned from the server are quite large for a drop down. I also wouldn't mind being able to have the image be off to one side or the other and give it a circular appearance.

looks like you also need to create a custom component, take a look at the material-cmp sample in the demo


Properly build interaction locks

Describe the bug
Interaction locks are not implemented properly. Currently, when the user initiates a confirmation prompt, it prevents them from interacting only with other confirmation prompts. This is not intended behaviour and may lead to incorrect data being sent accross the bot.
To Reproduce
Steps to reproduce the behavior:

Start any confirmation prompt within the Economy system
Use any other command that conflicts with what that prompt is asking for
See error

Expected behavior
As other economy bots have stated:
Between any commands that have data being written (coins moving, items gained/lost, even XP earned, etc.) we should lock your account to prevent two conflicting operations from happening. If those conflicting operations happen, it can cause missing items OR the opposite (duplicates!).

Another situation encountered, this assumes you have sharing currency confirmations enabled:

Share 7,000,000 with someone when you have a wallet containing 10,000,000
Deposit all of that money into your bank
Operation works successfully, but now your money reaches negatives (-7,000,000)

This is one of the many reasons why we need to implement interaction locks.

One solution to this would be to:

Create a transaction table to indicate all the current transactions taking place. Give a UNIQUE constraint to the userID column.
Using the interaction_check function enclosed within the Economy cog, acquire a connection and attempt to insert the userID into the column. Note that this should be the only column within the transaction table.

If an sqlite3.IntegrityError is raised, return a value of False in the callback
Else, if all works successfully, use a context manager to commit and close the connection. Returns True.

I do not wish to do it this way since it requires acquiring a connection from the pool twice if the operation succeeds with no error. Perhaps if there was a way to pass it onto the command the user is interacting with, it would be better. So, we're not sure how to implement this yet. Also worth noting that implementing this may lead to significantly slower response times because we're checking if they are already in a transaction beforehand in the interaction check.
We'll figure out a solution soon when the time comes.

Another situation encountered, this assumes you have sharing currency confirmations enabled:

Share 7,000,000 with someone when you have a wallet containing 10,000,000
Deposit all of that money into your bank
Operation works successfully, but now your money reaches negatives (-7,000,000)

This is one of the many reasons why we need to implement interaction locks.

It should be noted that the main reason this occured however was because we were not adding the user to the active session when this confirmation setting is toggled on. Doing this would be the first step into solving the issue along with blocking any form of commands that have a conflicting operation, which was not implemented at the time.
It is planned that we either block only these operations that involve currency and items moving from place to place or block the user from using the entire cog. The former is not ideal, other bots tend to do the latter because it reduces the possibility of missing out certain commands.
So @serephenna's idea is good, but I can't see how this would help improve code maintainability.
We're still on the fence as for what happens, so this issue is still on hold for the time being.


Release BLOCKED triggers in releaseAcquiredTrigger

Dear Quartz Team,
Based on my findings from Issue 145, I'd like to propose the following change. I hope this is useful for you.
Thanks,
Sebastian

Any update on when this will get merged? We are currently getting hit by this issue and need it fixed ASAP.

👍 on fixing, I think we've been hit by this issue as well

When this fix will be available in next release of quartz scheduler.

Why don't we merge this fix in? We are seeing similar problems in our environment

Let's merge this fix. @zemian @jhouserizer @chrisdennis

Hello folks, sorry it took so long to respond. I will take a look at this and will try to merge it in next day or so.

@zemian Thanks for the merge! What are your plans for releasing this fix in any new versions?

Hi @dersteve , then next release should be 2.3.1. See https://github.com/quartz-scheduler/quartz/blob/quartz-2.3.x/docs/changelog.adoc
Don't have a date, but should be soon. I am trying to get it publish with help of Terracotta folks.

@zemian Thanks for the merge! Can you specify the release date of new quartz version please? We really need this fix!

Hi @fbokovikov no release date yet :( Hopefully soon. At the meantime, you can simply do a local build from latest branch.

I think we've traced down an issue related to this commit/fix. When running in a clustered environment, with DisallowConcurrentExecution, and lots of triggers for that job, something appears to "hang" for several minutes doing nothing (all triggers are in a WAITING state and none are in COMPLETED/BLOCKED/ACQUIRED, the fire time is still valid and w/in our 30 min misfire range). I'm not sure why this would be as I don't know the quartz data model too well, however, if I comment out this line:
 getDelegate().updateTriggerStateFromOtherState(conn,
                    trigger.getKey(), STATE_WAITING, STATE_BLOCKED);

The issue goes away. Also, I merged these two into a single one locally and was also not able to reproduce the hang issue:
getDelegate().updateTriggerStateFromOtherState(conn,
                    trigger.getKey(), STATE_WAITING, STATE_ACQUIRED);
getDelegate().updateTriggerStateFromOtherState(conn,
                    trigger.getKey(), STATE_WAITING, STATE_BLOCKED);

with
getDelegate().updateTriggerStateFromOtherStates(conn,
                    trigger.getKey(), STATE_WAITING, STATE_ACQUIRED, STATE_BLOCKED);

Can anyone hypothesize why this would be?
Is there something about this being done in two separate queries that could introduce race conditions?
Here is my theory:

Node A acquires a triggers (one trigger acquired, rest blocked)
Node A begins to release the acquired trigger by executing getDelegate().updateTriggerStateFromOtherState(conn, trigger.getKey(), STATE_WAITING, STATE_ACQUIRED); (now all triggers are in waiting)
Node B before Node A executes getDelegate().updateTriggerStateFromOtherState(conn, trigger.getKey(), STATE_WAITING, STATE_BLOCKED); acquires a trigger as everything to it is in the WAITING state now and Node B can acquire things (RACE CONDITION) (one trigger acquired, rest blocked).
Node A then executes getDelegate().updateTriggerStateFromOtherState(conn, trigger.getKey(), STATE_WAITING, STATE_BLOCKED); while Node B had one acquired and the rest blocked (now triggers are incorrectly set to a waiting state).
Node B then releases the acquired trigger and things are hosed (I'm not sure why this happens but I do think there is a race condition above?).

It would probably not be a bad idea to merge into a single query anyways for performance. CC @zemian @shelmling

I sill have similar issue on v2.3.2, when using cluster more and enabling @DisallowConcurrentExecution.
I'm not sure the issue is fixed.
It happens only occasionally and not always.
I have a log just be fore my job execution ends, so I'm sure it is not working anymore. From application side everything seems to be normal. But trigger is still hangs in status BLOCKED.
Is there any workaround fix?
Thanks.

I sill have similar issue on v2.3.2, when using cluster more and enabling @DisallowConcurrentExecution.
I'm not sure the issue is fixed.
It happens only occasionally and not always.
I have a log just be fore my job execution ends, so I'm sure it is not working anymore. From application side everything seems to be normal. But trigger is still hangs in status BLOCKED.
Is there any workaround fix?
Thanks.

@zemian @oridool Having the same issue on 2.3.2 as stated in https://github.com/quartz-scheduler/quartz/issues/145 while using @DisallowConcurrentExecution annotation (145 PR specifies the problem is fixed via this PR 146 on version 2.3.2)
If we set up the following:

TRIGGER table: next_fire_time in the past, trigger_state to blocked
FIRED_TRIGGERS table: empty or (not containing the blocked trigger)
This will never make the job associated with this blocked trigger run again.
PR https://github.com/quartz-scheduler/quartz/pull/146 (this one) mostly makes sure of proper clean-up but this is not ensured when instances die suddenly or in the middle of the release process of the BLOCKED jobs.
I think the problem should be addressed at the moment when Quartz polls the jobs from the DB. It currently polls only for WAITING state:
SELECT TRIGGER_NAME, TRIGGER_GROUP, NEXT_FIRE_TIME, PRIORITY FROM TRIGGERS WHERE SCHED_NAME = '?' AND TRIGGER_STATE = 'WAITING' AND NEXT_FIRE_TIME <= ? AND (MISFIRE_INSTR = -1 OR (MISFIRE_INSTR != -1 AND NEXT_FIRE_TIME >= ?)) ORDER BY NEXT_FIRE_TIME ASC, PRIORITY DESC

@zemian  We also face this issue in our production environment and have to manually correct the job trigger state in the database to solve it. Our job runs every 5 minutes.
We see no exception or errors in the logs. It just stops.
Even when the job DOES throw an exception, it doesn't necessarily get blocked.
Quartz version v2.3.2
Job is marked with @DisallowConcurrentExecution

@koti-muppavarapu We solved it by properly configuring our quartz to run in clustered mode. It looks like if you don't do this, the @DisallowConcurrentExecution creates issues.
We has some missing properties that were the root cause.
Make sure "org.quartz.scheduler.isClustered" is set to true

Thanks for you reply @borisvaningelgom , I will try this property and see if I this will fix the issue. This is very random issue on which happen very randomly and rarely. Hopefully this will fix it.

@borisvaningelgom @koti-muppavarapu we’ve been running clustered mode since the beginning and that doesn’t solve it for us.


Add use-after-move check of clang-tidy

Problem
#2814
#7044
Change overview
Add build rule to run clang-tidy
Testing
Manually tested.
gn --root=. gen --check --fail-on-unused-args ./out/debug '--args=target_os="all" enable_clang_tidy_check=true'
ninja -v -C out/debug

@mspang I'm not quite familiar with GN, please help me check if I'm using it correctly, any suggestions are welcome.

@mspang I'm not quite familiar with GN, please help me check if I'm using it correctly, any suggestions are welcome.

Hm, interesting approach. A couple things make me nervous about this such as needing to duplicate the command line generation.
Could use pw_command_launcher to avoid that. It's probably OK to let the build actually happen and then run the analyzer after.
The other way is to just use compile_commands.json which is what I believe everyone else does (this way also requires building first).

/rebase

Not hooked up to any automation yet, right?

Not yet, there is lots of failure with it enabled, we can make it non mandatory check first.
Waiting for @andy31415 coming back to add a new CI check.


Update CI URLs to point to new caching infrastructure

Hello there!
This is an automated pull request submitted by @staticfloat to help package authors transition their Julia installation CI setups to the new binary provider URL.  Please take a look at this PR, and if there is a problem or it doesn't download correctly when CI runs, feel free to ping @staticfloat

Coverage remained the same at 92.473% when pulling f3b9989208964d663016eca0575eabdcc5d788aa on staticfloat:updated_ci_url into edac048b32a4ac1795c49b5daf0ed19dce9e3f65 on jbn:master.

Coverage remained the same at 92.473% when pulling f3b9989208964d663016eca0575eabdcc5d788aa on staticfloat:updated_ci_url into edac048b32a4ac1795c49b5daf0ed19dce9e3f65 on jbn:master.


Changing minima icon

Is there any way to change the default icon? Right now it looks like a piece of paper with a corner folded in.
I'd like to know whether this can be changed.

Adding a favicon.ico image file to the root of your site should resolve this.
Google Favicon generators to create one from your site's logo (if any)

Thanks.

@AidanRocke FYI here are some useful services for favicons:

https://realfavicongenerator.net/
https://favicon.io/


[STORM-901] Worker Artifacts Directory for Hierarchical Log Management and Debugging

Originally all logs (both for workers and daemons) are under storm-home/logs, this causes name confusion ("wc22-1-1445957152-worker-6700.log") and difficulty for debugging (hard to store and manage heapdump and gc log files for all topologies' workers in a single directory).
For better management, we present the Worker Artifacts Directory for Hierarchical Log Management and Debugging:

workers' logs and metadata are moved to the new directory "storm-local/workers-artifacts", while daemon logs are still placed in storm-home/logs. Note that each topology has a separate directory, holding one sub-directory for each worker within this topology.

Cleanup, view and list implementations are modified accordingly in logviewer and UI. Specifically, we add per-worker quota and total quota for files' size, and the cleanup thread will periodically cleanup the oldest files in each worker directory and the whole artifacts if either quota is exceeded. Note that, the active workers' active logs will be skipped during cleaning.

In addition, a symlink called artifacts is created from each worker's directory to its log directory "workers-artifacts/topoId/port/". gc.log and heapdump files can be configured by users to place under this symlink, thus able to be downloaded from UI conveniently. Other useful features can be easily supported by worker artifacts directory, where their resource files can be dumped.

Add new web routes in logviewer for people to view, list and download all daemons' logs: e.g., nimbus.log, supervisor.log, web-access logs, metrics logs.

gz file is supported for review in UI.

A new web route "listLogs" is added to list all logs in a supervisor node (for all topologies, a certain port, or a certain topology).

Unit tests are added and the event log are supported under each worker's artifacts directory.

Current log structures under storm-local/workers-artifacts:
--topoId0
--topoId1
------port1
------port2
---------worker.log
---------worker.log.err
---------worker.log.out
---------worker.yaml
---------gc.log
----------heapdump
----------events.log
Worker logs and daemon logs' Views on UI:

Reopen and make sure it connects with JIRA

@zhuoliu all of the tests are failing with
java.nio.file.NoSuchFileException: /tmp/667af8d4-e62c-4bee-a874-118c019c478d/workers-artifacts/test-1-1445964515/1027/events.log
	at sun.nio.fs.UnixException.translateToIOException(UnixException.java:86) ~[?:1.8.0_31]
	at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:102) ~[?:1.8.0_31]
	at sun.nio.fs.UnixException.rethrowAsIOException(UnixException.java:107) ~[?:1.8.0_31]
	at sun.nio.fs.UnixFileSystemProvider.newByteChannel(UnixFileSystemProvider.java:214) ~[?:1.8.0_31]
	at java.nio.file.spi.FileSystemProvider.newOutputStream(FileSystemProvider.java:434) ~[?:1.8.0_31]
	at java.nio.file.Files.newOutputStream(Files.java:216) ~[?:1.8.0_31]
	at java.nio.file.Files.newBufferedWriter(Files.java:2860) ~[?:1.8.0_31]
	at backtype.storm.metric.FileBasedEventLogger.initLogWriter(FileBasedEventLogger.java:32) [classes/:?]
	at backtype.storm.metric.FileBasedEventLogger.prepare(FileBasedEventLogger.java:85) [classes/:?]
	at backtype.storm.metric.EventLoggerBolt.prepare(EventLoggerBolt.java:39) [classes/:?]
	at backtype.storm.daemon.executor$fn__7917$fn__7930.invoke(executor.clj:819) [classes/:?]
	at backtype.storm.util$async_loop$fn__1152.invoke(util.clj:480) [classes/:?]
	at clojure.lang.AFn.run(AFn.java:22) [clojure-1.7.0.jar:?]
	at java.lang.Thread.run(Thread.java:745) [?:1.8.0_31]

It looks like the event logger test is trying to write to a directory that does not exist.

The log link on the UI for the nimbus.log is not working.  We probably should do something to special case the daemon log files.

Oh and with adding in support for nimbus.log, we need to be careful that the code does not allow for files outside of the logs or the worker artifacts directories to be downloaded.

Thanks @revans2.
New web routes are added for supporting view, list and download of all daemon logs.
The concern of directory access permission have been addressed also (through verification of the root log dir).

Just some minor comments.

Looks good I am +1 once the comments from @d2r are addressed.

Really appreciate the review efforts. @d2r 's comments have been addressed, welcome to check back.

+1

@zhuoliu  @revans2 @d2r Hi,  @arunmahadevan pointed out this jira changed log location for worker logs. This is actually not acceptable for our users and I don't see any reason for log location to change since we've storm.log.dir and its been used in previous releases . If its necessary for this patch to function to have the logs in storm-local/worker-artifacts than we should put  in storm.log.dir and symlink to storm-local/worker-artifacts.  Checking to see the reason behind moving the logs there before sending a patch. Thanks.

Hi @harshach , the main reasons we change log location are two-fold: 1) we want to separate the daemon logs from worker logs for better namespace and permission management; 2) the workers-artifacts directory are beyond "just logs", it appears more like a drop-box for each worker, containing log files, heapdump, gc files, and other possible files users may need to dump.
It will be one line change to "config/worker-artifacts-root" function if we want to place worker-artifacts under storm-home/logs/. In that way it will look as follows. In our opinion, it would be preferable to let workers-artifacts to stay with storm-local/workers, worker-users.
We can discuss which one is more appropriate.
storm-home/logs/
------supervisor.log
------nimbus.log
------workers-artifacts/
-----------topo1/
------------------port1/
------------------port2/
------------------------worker.log
------------------------worker.log.err
------------------------gc.log

@zhuoliu additionally can we create symlinks from storm-home/logs/worker-port.log -> workers-artifacts/topo/port/worker.log so that all the recent worker logs can be found under a single dir ?

I agree with @harshach , it's a big breaking change of log layout, as @arunmahadevan says, maybe it's  better to make a symlink?

That is doable though weird, but I would be interested to see why we want all logs to be found under a single directory.

On the contrary, say a supervisor has been running for a long period (say a week), 24 workers * 10 restarting* 40 files per worker (10 worker.log.gz files, 10 gc log files, error files, out files and many other files). We will have around 10000 files from all topologies' workers and all daemons in the single storm-home directory, with tedious long file names. This may not be an ideal status.

@zhuoliu i meant only the current worker-port.log file, which would make it a bit easier to switch between files while tailing. Right now we need to change the entire path to switch to a different worker log file. The rotated and log.gz files can be under workers-artifacts.

@arunmahadevan , if we do have this application scenario, it would be nice to do that. We can let the supervisor to redirect(create) the worker-port.log symlink to the topo/port/worker.log in launcher-worker.

@harshach
Use case:
A cluster admin shelling to a supervisor node and browsing all current logs easily, without having to cd to other directories?
Are there other use cases? What makes this unacceptable to users?  Maybe we can come up with something better in general.

We can let the supervisor to redirect(create) the worker-port.log symlink to the topo/port/worker.log in launch-worker. Thanks for the explain. Btw, we should care that some symlink may become dead link since its pointed file might have been deleted by cleanup.

I am not excited about doing this, because it adds complexity to storm that ought to be handled by either a logging system or shell environment. It seems to me to make more sense to provide a tool for shells to make browsing logs easier where they are, rather than adding complexity to storm to support the shell.

@arunmahadevan @d2r @zhuoliu  As Arun said above if the current worker-port.log is in root dir it will be helpful to tail the logs. This preferable but not necessary. My main concern is we are not using storm.log.dir and adding logs to storm-local dir which is supposed to be used to store storm metadata dir and other topology metadata not application logs. And changing log location of topologies while using storm.log.dir is not a desired behavior. If we can store all the logs in user configured storm.log.dir than I am fine with current structure.

+1 to @harshach 's comment.  We rely on being able to modify the storm.log.dir location to change where logs go.

@harshach and @erikdw can you explain the exact use cases you are concerned about?  From previous interactions it feels like you are concerned about storm on slider on YARN and storm on mesos respectively.  So the fix is to place the logs in a configurable place that other tools can get access to?
I just want to be sure I understand the use case so I can properly address those concerns.  We can move the worker-artifacts dir to be in a configurable location.  That should be totally doable.  I wouldn't really want them all to be under storm.log.dir, as @zhuoliu pointed out there are more than just logs stored here.  As part of this change we essentially upgraded the logs to be application metadata that can have limits placed on them and managed.  But if you really want it based off of storm.log.dir as a default it is not a deal breaker.

@revans2 :  good memory, my use-case is indeed storm-on-mesos.  And in the way my company deploys it, we leverage the storm.log.dir to force the logs to be written into a known location where we can forward them to various downstream log-indexing/storing services.  That is the use case we want to be supported somehow.  I'm not particularly married to storm.log.dir, so your proposal to have the worker-artifacts go to some other location seems sufficient for my use case.  I'll explicitly state that I would expect it to be a knob that is configurable from within storm.yaml.
BTW, changing to a hierarchical layout from a flat style was concerning at first blush, but on further reflection I believe it will work just fine.  Our tools for log-forwarding can use globs/wildcards so it should be ok.

@erikdw Thanks for the feedback, yes the changes should be something that you can do through storm.yaml.
@harshach do you have any feedback?

@revans2 I want user experience to be consistent . I.e when they configure storm.log.dir , the logs to be appear in configured storm.log.dir , not some of the logs in storm.log.dir and others in storm-local/worker-artifacts. Its hard to understand why they are ending up there. In some cases storm-local dir might only accessed by linux user "storm" who is running the daemons. My request is to keep the current hierarchical dir that we've right now but move all the logs to configured storm.log.dir not have it in storm-local/worker-artifacts. Not sure if this requires lot of changes for this patch.

It would be a rather large change to support two different directory structures, one for logs and one for everything else.  It is not impossible to do, but it would add quite a bit of complexity to something that is already more complex then I like.
I guess it comes down to how often do you and your customers access the logs through the storm UI or some other automated log system vs how often you access the logs by going to the box directly and reading them directly.  For us our clusters have grown large enough that very few people try to read the logs directly.  Finding the right node is such a pain that the added directly structure is not something they have complained about.
Would having the worker-artifacts directory structure by default be under storm.log.dir but also have a separate config be an acceptable solution?  This is a very simple change to make, vs trying to split the data.

@harshach sorry I misread your comment.
Moving them to be under storm-log-dir by default would be fine.  I would want a config to put it some other place if we want to, but the default could be under the log directory.
@zhuoliu could you file a JIRA for this? it should be just a few lines of change to try and read a new config with a default being the value of storm.log.dir

sure. this conclusion makes sense to me and won't be much change. A JIRA is filed here STORM-1387

@revans2 @zhuoliu This solution looks good to me too.
My initial concern was sort of like @erikdw 's use case. And usually files in logs directory do a rolling update/delete(maybe by a cron job), while we may not want a rolling delete for metadata(or at least different delete stragety), so it's good to add an extra config in storm.yaml to specify this directory.

Thanks @zhuoliu @revans2


Learn More button on HomePage does nothing.

to change.

Fixed in the new branch + scrolldown animation.


Update the License File

Please review the contents carefully
Follow this checklist to help us incorporate your contribution quickly and easily:

[ ] Make sure there is a JIRA issue filed for the change (usually before you start working on it).  Trivial changes like typos do not require a JIRA issue.  Your pull request should address just this issue, without pulling in other changes.
[ ] Each commit in the pull request should have a meaningful subject line and body.
[ ] Format the pull request title like [SCB-XXX] Fixes bug in ApproximateQuantiles, where you replace SCB-XXX with the appropriate JIRA issue.
[ ] Write a pull request description that is detailed enough to understand what the pull request does, how, and why.
[ ] Run mvn clean install to make sure basic checks pass. A more thorough check will be performed on your pull request automatically.
[ ] If this contribution is large, please file an Apache Individual Contributor License Agreement.

Coverage decreased (-0.4%) to 94.296% when pulling cd48bf7f7b17a59f071969cfe649fd2ca034873b on asifdxtreme:master into<PHONE_NUMBER>adb8d02cb7a2754f16b0b110b8995a on apache:master.

Hi @asifdxtreme , you can refer to the following content, I listed all the jars and checked them one by one.
                                 Apache License
                           Version 2.0, January 2004
                        http://www.apache.org/licenses/

   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

   1. Definitions.

      "License" shall mean the terms and conditions for use, reproduction,
      and distribution as defined by Sections 1 through 9 of this document.

      "Licensor" shall mean the copyright owner or entity authorized by
      the copyright owner that is granting the License.

      "Legal Entity" shall mean the union of the acting entity and all
      other entities that control, are controlled by, or are under common
      control with that entity. For the purposes of this definition,
      "control" means (i) the power, direct or indirect, to cause the
      direction or management of such entity, whether by contract or
      otherwise, or (ii) ownership of fifty percent (50%) or more of the
      outstanding shares, or (iii) beneficial ownership of such entity.

      "You" (or "Your") shall mean an individual or Legal Entity
      exercising permissions granted by this License.

      "Source" form shall mean the preferred form for making modifications,
      including but not limited to software source code, documentation
      source, and configuration files.

      "Object" form shall mean any form resulting from mechanical
      transformation or translation of a Source form, including but
      not limited to compiled object code, generated documentation,
      and conversions to other media types.

      "Work" shall mean the work of authorship, whether in Source or
      Object form, made available under the License, as indicated by a
      copyright notice that is included in or attached to the work
      (an example is provided in the Appendix below).

      "Derivative Works" shall mean any work, whether in Source or Object
      form, that is based on (or derived from) the Work and for which the
      editorial revisions, annotations, elaborations, or other modifications
      represent, as a whole, an original work of authorship. For the purposes
      of this License, Derivative Works shall not include works that remain
      separable from, or merely link (or bind by name) to the interfaces of,
      the Work and Derivative Works thereof.

      "Contribution" shall mean any work of authorship, including
      the original version of the Work and any modifications or additions
      to that Work or Derivative Works thereof, that is intentionally
      submitted to Licensor for inclusion in the Work by the copyright owner
      or by an individual or Legal Entity authorized to submit on behalf of
      the copyright owner. For the purposes of this definition, "submitted"
      means any form of electronic, verbal, or written communication sent
      to the Licensor or its representatives, including but not limited to
      communication on electronic mailing lists, source code control systems,
      and issue tracking systems that are managed by, or on behalf of, the
      Licensor for the purpose of discussing and improving the Work, but
      excluding communication that is conspicuously marked or otherwise
      designated in writing by the copyright owner as "Not a Contribution."

      "Contributor" shall mean Licensor and any individual or Legal Entity
      on behalf of whom a Contribution has been received by Licensor and
      subsequently incorporated within the Work.

   2. Grant of Copyright License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      copyright license to reproduce, prepare Derivative Works of,
      publicly display, publicly perform, sublicense, and distribute the
      Work and such Derivative Works in Source or Object form.

   3. Grant of Patent License. Subject to the terms and conditions of
      this License, each Contributor hereby grants to You a perpetual,
      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
      (except as stated in this section) patent license to make, have made,
      use, offer to sell, sell, import, and otherwise transfer the Work,
      where such license applies only to those patent claims licensable
      by such Contributor that are necessarily infringed by their
      Contribution(s) alone or by combination of their Contribution(s)
      with the Work to which such Contribution(s) was submitted. If You
      institute patent litigation against any entity (including a
      cross-claim or counterclaim in a lawsuit) alleging that the Work
      or a Contribution incorporated within the Work constitutes direct
      or contributory patent infringement, then any patent licenses
      granted to You under this License for that Work shall terminate
      as of the date such litigation is filed.

   4. Redistribution. You may reproduce and distribute copies of the
      Work or Derivative Works thereof in any medium, with or without
      modifications, and in Source or Object form, provided that You
      meet the following conditions:

      (a) You must give any other recipients of the Work or
          Derivative Works a copy of this License; and

      (b) You must cause any modified files to carry prominent notices
          stating that You changed the files; and

      (c) You must retain, in the Source form of any Derivative Works
          that You distribute, all copyright, patent, trademark, and
          attribution notices from the Source form of the Work,
          excluding those notices that do not pertain to any part of
          the Derivative Works; and

      (d) If the Work includes a "NOTICE" text file as part of its
          distribution, then any Derivative Works that You distribute must
          include a readable copy of the attribution notices contained
          within such NOTICE file, excluding those notices that do not
          pertain to any part of the Derivative Works, in at least one
          of the following places: within a NOTICE text file distributed
          as part of the Derivative Works; within the Source form or
          documentation, if provided along with the Derivative Works; or,
          within a display generated by the Derivative Works, if and
          wherever such third-party notices normally appear. The contents
          of the NOTICE file are for informational purposes only and
          do not modify the License. You may add Your own attribution
          notices within Derivative Works that You distribute, alongside
          or as an addendum to the NOTICE text from the Work, provided
          that such additional attribution notices cannot be construed
          as modifying the License.

      You may add Your own copyright statement to Your modifications and
      may provide additional or different license terms and conditions
      for use, reproduction, or distribution of Your modifications, or
      for any such Derivative Works as a whole, provided Your use,
      reproduction, and distribution of the Work otherwise complies with
      the conditions stated in this License.

   5. Submission of Contributions. Unless You explicitly state otherwise,
      any Contribution intentionally submitted for inclusion in the Work
      by You to the Licensor shall be under the terms and conditions of
      this License, without any additional terms or conditions.
      Notwithstanding the above, nothing herein shall supersede or modify
      the terms of any separate license agreement you may have executed
      with Licensor regarding such Contributions.

   6. Trademarks. This License does not grant permission to use the trade
      names, trademarks, service marks, or product names of the Licensor,
      except as required for reasonable and customary use in describing the
      origin of the Work and reproducing the content of the NOTICE file.

   7. Disclaimer of Warranty. Unless required by applicable law or
      agreed to in writing, Licensor provides the Work (and each
      Contributor provides its Contributions) on an "AS IS" BASIS,
      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
      implied, including, without limitation, any warranties or conditions
      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
      PARTICULAR PURPOSE. You are solely responsible for determining the
      appropriateness of using or redistributing the Work and assume any
      risks associated with Your exercise of permissions under this License.

   8. Limitation of Liability. In no event and under no legal theory,
      whether in tort (including negligence), contract, or otherwise,
      unless required by applicable law (such as deliberate and grossly
      negligent acts) or agreed to in writing, shall any Contributor be
      liable to You for damages, including any direct, indirect, special,
      incidental, or consequential damages of any character arising as a
      result of this License or out of the use or inability to use the
      Work (including but not limited to damages for loss of goodwill,
      work stoppage, computer failure or malfunction, or any and all
      other commercial damages or losses), even if such Contributor
      has been advised of the possibility of such damages.

   9. Accepting Warranty or Additional Liability. While redistributing
      the Work or Derivative Works thereof, You may choose to offer,
      and charge a fee for, acceptance of support, warranty, indemnity,
      or other liability obligations and/or rights consistent with this
      License. However, in accepting such obligations, You may act only
      on Your own behalf and on Your sole responsibility, not on behalf
      of any other Contributor, and only if You agree to indemnify,
      defend, and hold each Contributor harmless for any liability
      incurred by, or claims asserted against, such Contributor by reason
      of your accepting any such warranty or additional liability.

   END OF TERMS AND CONDITIONS

   APPENDIX: How to apply the Apache License to your work.

      To apply the Apache License to your work, attach the following
      boilerplate notice, with the fields enclosed by brackets "{}"
      replaced with your own identifying information. (Don't include
      the brackets!)  The text should be enclosed in the appropriate
      comment syntax for the file format. We also recommend that a
      file or class name and description of purpose be included on the
      same "printed page" as the copyright notice for easier
      identification within third-party archives.

   Copyright {yyyy} {name of copyright owner}

   Licensed under the Apache License, Version 2.0 (the "License");
   you may not use this file except in compliance with the License.
   You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.

===========================================================================
Apache ServiceComb Saga Subcomponents:

The Apache ServiceComb Saga project contains subcomponents with
separate copyright notices and license terms. Your use of the source
for these subcomponents is subject to the terms and conditions of the
following licenses.

===========================================================================
For org.aspectj:aspectjweaver:jar:1.8.10
===========================================================================
This product bundles AspectJ weaver which is licensed under the
Eclipse Public License v1.0.
For details, see http://www.aspectj.org
You can find a copy of the License at licenses/LICENSE-epl-v10

===========================================================================
For javax.servlet:javax.servlet-api:jar:3.1.0
===========================================================================
This product bundles Java Servlet API which is licensed under the
COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.1.
For details, see http://servlet-spec.java.net
You can find a copy of the License at licenses/LICENSE-javax

===========================================================================
For javax.interceptor:javax.interceptor-api:jar:1.2
===========================================================================
This product bundles javax.interceptor API which is licensed under the
COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.1.
For details, see http://interceptors-spec.java.net
You can find a copy of the License at licenses/LICENSE-javax

===========================================================================
For javax.transaction:javax.transaction-api:jar:1.2
===========================================================================
This product bundles javax.transaction API which is licensed under the
COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.1.
For details, see http://jta-spec.java.net
You can find a copy of the License at licenses/LICENSE-javax

===========================================================================
For ch.qos.logback:logback-core:jar:1.1.11
ch.qos.logback:logback-classic:jar:1.1.11
===========================================================================
This product bundles Logback which is licensed under the
Eclipse Public License v1.0.
For details, see http://logback.qos.ch
You can find a copy of the License at licenses/LICENSE-logback

===========================================================================
For org.postgresql:postgresql:bundle:9.4.1212.jre7
===========================================================================
This product bundles postgresql which is licensed under the
PostgreSQL license.
For details, see https://github.com/pgjdbc/pgjdbc-parent-poms
You can find a copy of the License at licenses/LICENSE-postgresql

===========================================================================
For org.glassfish:javax.json:bundle:1.0.4
===========================================================================
This product bundles jsonp API which is licensed under the
COMMON DEVELOPMENT AND DISTRIBUTION LICENSE (CDDL) Version 1.1.
For details, see http://servlet-spec.java.net
You can find a copy of the License at licenses/LICENSE-javax

===========================================================================
For org.slf4j:jcl-over-slf4j:jar:1.7.25,
org.slf4j:jul-to-slf4j:jar:1.7.25,
org.slf4j:slf4j-api:jar:1.7.25
org.slf4j:log4j-over-slf4j:jar:1.7.25
===========================================================================
This product bundles slf4j libraries which is licensed under the
MIT license.
For details, see http://www.slf4j.org
You can find a copy of the License at licenses/LICENSE-slf4j

===========================================================================
ASM Core (http://asm.objectweb.org/asm/) org.ow2.asm:asm:jar:5.0.4
===========================================================================
This product bundles asm which is licensed under the
3-Clause BSD license.
For details, see http://asm.ow2.org/
You can find a copy of the License at licenses/LICENSE-asm

===========================================================================
For com.esotericsoftware:reflectasm:bundle:1.11.3
===========================================================================
This product bundles reflectasm which is licensed under the
3-Clause BSD license.
For details, see https://github.com/EsotericSoftware/reflectasm
You can find a copy of the License at licenses/LICENSE-esotericsoftware

===========================================================================
For com.esotericsoftware:minlog:bundle:1.3.0
===========================================================================
This product bundles minlog which is licensed under the
3-Clause BSD license.
For details, see https://github.com/EsotericSoftware/minlog
You can find a copy of the License at licenses/LICENSE-esotericsoftware

===========================================================================
For com.esotericsoftware:kryo:bundle:4.0.1
===========================================================================
This product bundles kryo which is licensed under the
3-Clause BSD license.
For details, see https://github.com/EsotericSoftware/kryo
You can find a copy of the License at licenses/LICENSE-esotericsoftware

===========================================================================
For com.google.protobuf:protobuf-java-util:bundle:3.5.1,
com.google.protobuf:protobuf-java:bundle:3.5.1
===========================================================================
This product bundles protobuf which is licensed under the
3-Clause BSD license.
For details, see https://github.com/google/protobuf
You can find a copy of the License at licenses/LICENSE-protobuf

===========================================================================
For org.eclipse.persistence:org.eclipse.persistence.asm:jar:2.7.1,
org.eclipse.persistence:org.eclipse.persistence.jpa.jpql:jar:2.7.1,
org.eclipse.persistence:org.eclipse.persistence.jpa:jar:2.7.1,
org.eclipse.persistence:org.eclipse.persistence.antlr:jar:2.7.1,
org.eclipse.persistence:org.eclipse.persistence.core:jar:2.7.1,
===========================================================================
This product bundles eclipselink which is licensed under the
Eclipse Public License v1.0.
For details, see http://www.eclipse.org/eclipselink
You can find a copy of the License at licenses/LICENSE-epl-v10

===========================================================================
For javax.persistence:javax.persistence-api:jar:2.2,
javax.persistence:javax.persistence:jar:2.2
===========================================================================
This product bundles javax.persistence which is licensed under the
Eclipse Public License v1.0.
For details, see https://github.com/javaee/jpa-spec
You can find a copy of the License at licenses/LICENSE-epl-v10

===========================================================================
For Boringssl(static library bundled in netty-tcnative-boringssl-static:2.0.7.Final)
===========================================================================
This product bundles Boringssl which is licensed under BSD style licenses.
For details, see https://github.com/google/boringssl
You can find a copy of the License at licenses/LICENSE-boringssl

================================================================
This product bundles the following libraries which are licensed
under the Apache License v2.
For details, see their respective project links.


HOW DO I? Looking forward for Apache Superset production deployment guide

Dear Friends,
I am looking for some guidelines on infrastructure sizing guidelines ( I know infra-sizing varies a lot based on the type of dashboards, refresh frequency, # of concurrent users, etc... ).
Any recommendations on how to deploy apache superset for 5000+ users?  high-level guideline on deployment architecture etc...
That will be a great help.

I'm also very interested in how to setup/configure and deploy Superset in production, as I'm a new to python ecosystem and have a bit more knowlege in docker, docker-compose. I've been strugling for a week already trying to configure Superset for production with no luck. The official documentation is very poor and uninformative.
Greatly appreciate any help!

The main thing I can't handle is how to configure Superset via superset_config.py. I have no idea how to pass it into docker-compose.

A deployment solution for production would be to deploy to kubernetes via helm.
you can get the helm chart in the helm folder in the root directory but there is a learning curve for kubernetes and helm in general
an alternative can be to use the docker-compose-non-dev.yml if you're using docker swarm or any other production solution based on docker-compose


Add functionality to notice board

Description

Since the server is up and running. Add functionality to notice section.
api: /notice
result-format: {result: [], message: 'OK'}
Screenshots/testimonials

Closing against #71


The $using: scope for remoting quietly accepts scope modifiers, but resolves to $null

Affects both:

true scope modifiers such as $global:
namespace variable notation such as $function:

Steps to reproduce
Prerequisites:

enable remoting on the calling machine
run as admin.

# Define a variable and function, both named 'foo'.
function foo { 'func' }; $global:foo = 'var'
# Try to access these definitions remotely via $using
Invoke-Command -ComputerName . { $using:foo; $using:global:foo; $using:function:foo }

Expected behavior
var
var
 'func'

Actual behavior
var

That is, $using:global:foo and $using:function:foo quietly evaluated to $null.
Environment data
PowerShell Core 6.2.0-rc.1
Windows PowerShell v5.1

In the example:
'''PowerShell
Invoke-Command -ComputerName . { $using:foo; $using:global:foo; $using:function:foo }
'''
Appears like this via PR # 156 in PowerShell/EditorSyntax:

The scope can only be the first thing before the :, and after that, : is a valid variable character.  In this case, using is the scope.

Thanks, @msftrncs, but : chars. aren't  directly usable in variable names proper:
PS> ${foo:bar} = 'hi'
Cannot find drive. A drive with the name 'foo' does not exist.

While you can use them if you always use namespace variable notation, that is obviously impractical:
PS> ${variable:foo:bar} = 'hi'; ${variable:foo:bar}
hi  # OK, but only via reference to drive variable:

A much more sensible behavior would therefore be to support a true scope modifiers / drive references even after $using:, as attempted in the OP.
While technically a breaking change, it strikes me as a clear-cut case of a bucket 3 change.

Mmm. : isn't usually a valid variable character. Actually setting that variable in any reasonable way would be literally impossible, as it'd resolve to the proper expected item instead of the variable name containing the bunk character..
Still a bug, in my opinion.

See https://github.com/PowerShell/EditorSyntax/issues/49#issuecomment-391017240, while the first : separates the drive or scope from the variable name, all other : are accepted as variable name (as long as they are not doubled, because then that's a static accessor).


Tinker output does not show '<' symbol unless wrapped with htmlentities('<')

Bug description
Write here a clear and concise description of what the bug is.
Tinker output does not show < symbol unless wrapped with htmlentities('<')
To Reproduce
What did you do to encounter the bug?
echo '<'
echo '<tag>'
Expected behavior
If the description didn't make it clear enough, what should have happened?
< printed
Environment (please complete the following information):

IDE & Version: PHPStorm 2020.3
PHP Version: 7.4
OS: Windows 10
Laravel Tinker plugin version : 2.0.0
Interpreter Type: Local
Laravel Version: 5.7 and 8.0
Tinker version: 1.0.10 and 2.5.0

Additional context
It seems like output handled as HTML which is quite unexpected in case of Tinker usage.

It seems like output handled as HTML which is quite unexpected in case of Tinker usage.

True, the output is parsed as HTML - I'll look into this one.


Calendar Framework

We need a Framework for the calendar view.
Please search for a good solution and test this.

rejected for now


Consider changing to oauthlib or forking oauth2

Hi Guys,
I've recently tried installing Flask-Social to find that the install failed. Tracing back the error and the dependencies it seems that the installation has failed because there is a syntax error: print "unable to find version in %s" % (VERSIONFILE,).
I assume this is due to the fact that I'm using python 3 rather than python 2. Upon further investigation, it seems that the oauth2 lib hasn't been updated in some 3 or so years so I'd like to propose moving to oauthlib as it is actively maintained and supports python3 or possibly forking the origin oauth2 library and updating it to be python3 compatible.
Cheers

Hi,
i still see the same issue when i try to run pip install Flask-Social.
Is there some other way to install this?

Just did pip install flask-social in a clean virtual environment without issue. Maybe you have other dependency issues.

i just tried the same locally in a fresh virtual environment, but i still get the same error...
C:\sandbox\cleanenv>env\Scripts\pip install Flask-Social --ignore-installed
You are using pip version 6.0.8, however version 6.1.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
Collecting Flask-Social
  Downloading Flask-Social-1.6.2.tar.gz
Collecting Flask-Security>=1.6.3 (from Flask-Social)
  Downloading Flask-Security-1.7.4.tar.gz (41kB)
    100% |################################| 45kB 584kB/s
Collecting Flask-OAuth>=0.12 (from Flask-Social)
  Downloading Flask-OAuth-0.12.tar.gz
Collecting Flask>=0.9 (from Flask-Security>=1.6.3->Flask-Social)
  Downloading Flask-0.10.1.tar.gz (544kB)
    100% |################################| 544kB 267kB/s
Collecting Flask-Login>=0.1.3 (from Flask-Security>=1.6.3->Flask-Social)
  Downloading Flask-Login-0.2.11.tar.gz
Collecting Flask-Mail>=0.7.3 (from Flask-Security>=1.6.3->Flask-Social)
  Downloading Flask-Mail-0.9.1.tar.gz (45kB)
    100% |################################| 49kB 546kB/s
Collecting Flask-Principal>=0.3.3 (from Flask-Security>=1.6.3->Flask-Social)
  Downloading Flask-Principal-0.4.0.tar.gz
Collecting Flask-WTF>=0.8 (from Flask-Security>=1.6.3->Flask-Social)
  Downloading Flask_WTF-0.11-py2.py3-none-any.whl
Collecting itsdangerous>=0.17 (from Flask-Security>=1.6.3->Flask-Social)
  Downloading itsdangerous-0.24.tar.gz (46kB)
    100% |################################| 49kB 2.2MB/s
Collecting passlib>=1.6.1 (from Flask-Security>=1.6.3->Flask-Social)
  Downloading passlib-1.6.2.tar.gz (408kB)
    100% |################################| 409kB 267kB/s
Collecting oauth2 (from Flask-OAuth>=0.12->Flask-Social)
  Downloading oauth2-1.5.211.tar.gz
    Traceback (most recent call last):
      File "<string>", line 20, in <module
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):

      File "<string>", line 20, in <module

    ----------------------------------------
    Command "python setup.py egg_info" failed with error code 1 in C:\Users\XXX_~1\AppData\Local\Temp\pip-build-n3fphkro\oauth2

You should consider upgrading via the 'pip install --upgrade pip' command.``` may actually be your issue. I vaguely remember some issue around setuptools. You can also upgrade your base install of `virtualenv` so that new environments will have the latest version of `pip`.

can't install either with python 3. I've tried in a clean virtual environment and with up-to-date pip (v1.1.1)
(temp)MacBook-Pro:~ minorblend$ pip install flask-social
Collecting flask-social
  Using cached Flask-Social-1.6.2.tar.gz
Collecting Flask-Security>=1.6.3 (from flask-social)
  Using cached Flask-Security-1.7.4.tar.gz
Collecting Flask-OAuth>=0.12 (from flask-social)
  Using cached Flask-OAuth-0.12.tar.gz
Collecting Flask>=0.9 (from Flask-Security>=1.6.3->flask-social)
  Using cached Flask-0.10.1.tar.gz
Collecting Flask-Login>=0.1.3 (from Flask-Security>=1.6.3->flask-social)
  Using cached Flask-Login-0.2.11.tar.gz
Collecting Flask-Mail>=0.7.3 (from Flask-Security>=1.6.3->flask-social)
  Using cached Flask-Mail-0.9.1.tar.gz
Collecting Flask-Principal>=0.3.3 (from Flask-Security>=1.6.3->flask-social)
  Using cached Flask-Principal-0.4.0.tar.gz
Collecting Flask-WTF>=0.8 (from Flask-Security>=1.6.3->flask-social)
  Using cached Flask_WTF-0.11-py2.py3-none-any.whl
Collecting itsdangerous>=0.17 (from Flask-Security>=1.6.3->flask-social)
  Using cached itsdangerous-0.24.tar.gz
Collecting passlib>=1.6.1 (from Flask-Security>=1.6.3->flask-social)
  Using cached passlib-1.6.2.tar.gz
Collecting oauth2 (from Flask-OAuth>=0.12->flask-social)
  Using cached oauth2-1.5.211.tar.gz
    Complete output from command python setup.py egg_info:
    Traceback (most recent call last):
      File "<string>", line 20, in <module

    ----------------------------------------
    Command "python setup.py egg_info" failed with error code 1 in /private/var/folders/bh/d31q26297b5db67mfw5694yh0000gn/T/pip-build-xna7c17c/oauth2

I don't think oauth2 is not Python 3 compatible, which is blocking flask-oauth and flask-social. See caniusepython3.com

OAuth2 is included in the fork https://github.com/CentricWebEstate/python-oauth2

Hey guys, if you're willing, we've recently begun maintenance of python-oauth2 again. So if oauthlib isn't in use yet, we should be right to continue using py-oauth2 again.

Just now ran into this issue as well. Tried to install Flask-Social, and it complains about urlparse (see also https://github.com/mitsuhiko/flask-oauth/pull/67).
I assume I have the latest versions of everything as I ran the install no less than 10 minutes ago.
Any ideas?

@exhuma If i'm not mistaken the package isn't up to date, but you can install directly
pip install git+https://github.com/mattupstate/flask-social.git --upgrade

test

y
y


Document markdown formatting issues

Document https://github.com/MicrosoftDocs/azure-docs/blob/master/articles/synapse-analytics/spark/microsoft-spark-utilities.md
has a lot of garbage from markdown formatting.
Examples:
:::zone pivot = "programming-language-python"
mssparkutils.fs.ls('Your directory path')
::: zone-end
This should really read
Python
mssparkutils.fs.ls('Your directory path')
with some font stylizing and background colors indicating suggested usage example.
Please fix.

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

ID: c1f7baad-e28d-8e25-2852-b58499cdca8c
Version Independent ID: d88f15f9-7218-3ce2-30bb-388fc63f6ddc
Content: Introduction to Microsoft Spark utilities - Azure Synapse Analytics
Content Source: articles/synapse-analytics/spark/microsoft-spark-utilities.md
Service: synapse-analytics
Sub-service: spark
GitHub Login: @ruxu
Microsoft Alias: ruxu

Hello @SynapsePOC
Thanks for the feedback! We are currently investigating and will update you shortly
Cc: @julieMSFT .

Hello @SynapsePOC
Thanks for the feedback! We are currently investigating and will update you shortly
Cc: @julieMSFT .

Hello @SynapsePOC Could you please have a look at the live document on this topic? Please let us know if the Live document is ok ?
Introduction to Microsoft Spark Utilities

Hello @SynapsePOC Could you please have a look at the live document on this topic? Please let us know if the Live document is ok ?
Introduction to Microsoft Spark Utilities

Hello @SynapsePOC
Since we didn't receive any response, we will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.
Please also do visit Microsoft Q&A the home for technical questions and answers at Microsoft.


Landmarks missing with file input

i modified the graph 'multi_hand_tracking_mobile.pbtxt', and added this output_stream as an output of the graph.
calculator: "MultiHandLandmarkSubgraph"   output_stream: "LANDMARKS:multi_hand_landmarks"
When I logged out the landmarks, I found when input is camera it works ok. but when input is a video file landmarks rendered in the picture but not in the logs.

Can you provide your code repository?


serviceprovider: support returning failures

Discussed in https://github.com/aler9/goroslib/discussions/75

Originally posted by sniperZj August 27, 2021
If inscribe

this is now supported.


How to draw the loss landscape for sampled models

Can you please guide me on how to draw Figure 8 in the original paper? : G.pt learns a multimodal distribution over local error minima.

Hi @Aminullah6264, sorry for the delay in responding! Here's the rough outline of how we generated each subplot in Figure 8:

Randomly-sample one (unseen) starting parameter vector from the test split of our dataset. I.e., this a randomly-initialized parameter vector.
Use the pre-trained G.pt model to sample 256 different updated parameter vectors (all using the same starting parameters and varying sampling noise).
Run PCA on the batch of sampled parameter vectors (reducing to two dimensions).
Generate a loss/error/return/etc. 3D surface plot centered at the mean parameter vector, traversing in the two PCA directions (we used plotly's go.Surface for the actual plotting).
Project all of G.pt's parameter samples into two-dimensional PCA space.
Remove any of the 256 parameter samples that were poorly-modeled by PCA (more than 1e-3 L2 reconstruction loss in parameter space).
Compute the test loss/error/return/etc. of G.pt's PCA-projected parameter samples.
Overlay the samples' losses/errors/returns as points on top of the surface plot.

Hope this helps!


Discussion: Optionally integrate Java UDF coprocessor with connector node?

Motivation

Many users don't want to deploy the coprocessor server themselves
Deploy a local coprocessor can reduce the latency and improve the throughput.
Deploying two JVMs on one CN node is a bit wasteful of resources.
Users who use these two features are likely to have a significant overlap. (likely from Flink)

cc @wangrunji0408 @neverchanje @StrikeW

related with https://github.com/risingwavelabs/risingwave/issues/10322

IMO, from the user's perspective it is better to distinguish connector and UDF server to two components, because they are two different workload, user (and we) need to monitor the cpu and mem respectively.
In the technical aspect, I think we should employ some isolation technique to share a single JVM. For example, virtualization or multi-tenant on a single JVM to isolate workload and failure.

I don't see much benefit in this proposal. This proposal reduced user's operation efforts a little, but it doesn't not so much since we have k8s operator/helm chart. But I think we should implement #10322 since this way user don't need to deploy java udf server by themselves.


Documentation on how to best configure a (linux) machine to run locust

We should have a page in the documentation that describes how to set up an Ubuntu machine, and perhaps other popular linux dists, that is ready to run locust load tests.
Should cover how to install dependencies, up file descriptor limit, etc.

+1

This somewhat exists - http://docs.locust.io/en/latest/installation.html#increasing-maximum-number-of-open-files-limit
But you really just have to search the ulimit for your distribution, and there is no need to document that in Locust itself. Otherwise, throw CPU at it if you see it slowing down during testing, though it uses very few resources itself from my experience.


Add ability to store prebuilt frameworks in shared cache folder

Resolves #37

Thank for the new feature implementation. But a fundamental question: How to identify the pod and its generated framework? There may be code in podfile to modify the generated pod targets, and it will lead to different build result.

I don't understand your point. Could you provide a use case? I mean what do you want to modify in prebuilt framework? Cache is respecting custom build options set via set_custom_xcodebuild_options_for_prebuilt_frameworks. I don't see difference between using cache and not using it, probably I'm missing something.

I guess case is when Podfile contains :binary => true only for few targets, not all of them. @Rag0n Thank you for this! Mind if I collaborate with you and add s3 remote cache on top of your implementation. My case is, having > 10 build machines and build/collect cache for frameworks on all of them is waste of resources.

But cache only works for :binary => true pods. Do you think we should add another flag to control cache behaviour for individual pods? From my point of you it's useless.
I would like to have S3 remote cache as well. @jaximan, do you want to implement it by yourself or you need some help?

@Rag0n I can add it, would you like to have PR for your branch or as separate PR for this master after your change is merged?

I think PR for this branch will be faster, but it's up to you.

Good day @leavez
I'm wondering, if you could review changes or assign someone?

Another way to easily solve this is:
1- Create an empty repository, to be used as a cache.
2- Add the new repository as a submodule, at the path Pods/_Prebuild.
3- Run pod install.
4- Commit all changes in the Pods/_Prebuild submodule.
Now, when somebody checks out the project, the submodule with the shared frameworks will also be checked out.

What is needed for this PR to move forward?

@Rag0n Hello,I like this feature very much, but I tried it and there seems to be some problems
NoMethodError - undefined method has_local_cache_for' for Pod::Prebuild::SharedCache:Class
Did you mean?  has_local_cache_for?
/Users/nine/work/bytedance/cocoapods-binary/lib/cocoapods-binary/helper/shared_cache.rb:16:in has?' /Users/nine/work/bytedance/cocoapods-binary/lib/cocoapods-binary/Prebuild.rb:132:in block in prebuild_frameworks!'
/Users/nine/work/bytedance/cocoapods-binary/lib/cocoapods-binary/Prebuild.rb:123:in each' /Users/nine/work/bytedance/cocoapods-binary/lib/cocoapods-binary/Prebuild.rb:123:in prebuild_frameworks!'
/Users/nine/work/bytedance/cocoapods-binary/lib/cocoapods-binary/Prebuild.rb:242:in block in <class:Installer>' /Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/installer.rb:595:in perform_post_install_actions'
/Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/installer.rb:165:in install!' /Users/nine/work/bytedance/cocoapods-binary/lib/cocoapods-binary/Main.rb:173:in block in <top (required)>'
/Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/hooks_manager.rb:124:in block (3 levels) in run' /Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/user_interface.rb:145:in message'
/Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/hooks_manager.rb:116:in block (2 levels) in run' /Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/hooks_manager.rb:115:in each'
/Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/hooks_manager.rb:115:in block in run' /Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/user_interface.rb:145:in message'
/Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/hooks_manager.rb:114:in run' /Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/installer.rb:587:in run_plugins_pre_install_hooks'
/Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/installer.rb:206:in block in prepare' /Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/user_interface.rb:145:in message'
/Users/nine/.rvm/gems/ruby-2.5.1/gems/cocoapods-1.7.5/lib/cocoapods/installer.rb:202:in prepare'