Tar tests fail

Seems like the tar plugin fails in master. Here is the log output:
root@dokku:~/dokku# bats tests/unit/tar.bats
 ✗ (tar) non-tarbomb deploy using tar:in
   (from function `flunk' in file tests/unit/test_helper.bash, line 14,
    from function `assert_success' in file tests/unit/test_helper.bash, line 19,
    in test file tests/unit/tar.bats, line 28)
     `assert_success' failed
   Creating my-cool-guy-test-app... done
   Pseudo-terminal will not be allocated because stdin is not a terminal.
   10240
   cat: -: Bad file descriptor
   cat: closing standard input: Bad file descriptor
   -----> Striping 2 worth of directories from tarball
-----> Cleaning up...
-----> Building my-cool-guy-test-app from herokuish...
-----> Node.js app detected

-----> Creating runtime environment

       NPM_CONFIG_LOGLEVEL=error
       NPM_CONFIG_PRODUCTION=true
       NODE_MODULES_CACHE=true

-----> Installing binaries
       engines.node (package.json):  0.10.x
       engines.npm (package.json):   2.7.x

       Resolving node version 0.10.x via semver.io...
       Downloading and installing node 0.10.40...
       Resolving npm version 2.7.x via semver.io...
       Downloading and installing npm 2.7.6 (replacing version 1.4.28)...

-----> Restoring cache
       Loading 1 from cacheDirectories (default):
       - node_modules (not cached - skipping)

-----> Building dependencies
       Pruning any extraneous modules
       Installing node modules (package.json)
<EMAIL_ADDRESS>node_modules/express
       ├──<EMAIL_ADDRESS>       ├──<EMAIL_ADDRESS>       ├──<EMAIL_ADDRESS>       └──<EMAIL_ADDRESS><EMAIL_ADDRESS>
-----> Caching build
       Clearing previous node cache
       Saving 1 cacheDirectories (default):
       - node_modules

-----> Build succeeded!
       └──<EMAIL_ADDRESS>
-----> Discovering process types
       Procfile declares types -> cron, web, worker
-----> Releasing my-cool-guy-test-app...
-----> Deploying my-cool-guy-test-app...
-----> DOKKU_SCALE file not found in app image. Defaulting to a single web process
-----> New DOKKU_SCALE file generated
-----> Running pre-flight checks
-----> Attempt 1/5 Waiting for 5 seconds ...
       CHECKS expected result:
       http://localhost/ => "nodejs/express"
-----> All checks successful!
=====> my-cool-guy-test-app container output:
       Detected 512 MB available memory, 512 MB limit per process (WEB_MEMORY)
       Recommending WEB_CONCURRENCY=1
       Listening on 5000
       <IP_ADDRESS> - - [Tue, 01 Sep 2015 21:28:16 GMT] "GET / HTTP/1.1" 200 14 "-" "curl/7.35.0"
=====> end my-cool-guy-test-app container output
-----> Running post-deploy
-----> Creating new /home/dokku/my-cool-guy-test-app/VHOST...
-----> Configuring my-cool-guy-test-app.dokku.me...
-----> Creating http nginx.conf
-----> Running nginx-pre-reload
       Reloading nginx
=====> Application deployed:
       http://my-cool-guy-test-app.dokku.me

   output: bash: -c: line 28: syntax error near unexpected token `(' bash: -c: line 28: ` <button type="button" onclick="setup()" class="btn btn-primary">Finish Setup</button> '
   status: 1
   command failed with exit status 1
    !    WARNING: Potentially Destructive Action
    !        To proceed, type "my-cool-guy-test-app"

   Destroying my-cool-guy-test-app (including all add-ons)
 ✗ (tar) tarbomb deploy using tar:in
   (from function `flunk' in file tests/unit/test_helper.bash, line 14,
    from function `assert_success' in file tests/unit/test_helper.bash, line 19,
    in test file tests/unit/tar.bats, line 37)
     `assert_success' failed
   Creating my-cool-guy-test-app... done
   Pseudo-terminal will not be allocated because stdin is not a terminal.
   10240
   cat: -: Bad file descriptor
   cat: closing standard input: Bad file descriptor
   -----> Striping 1 worth of directories from tarball
-----> Cleaning up...
-----> Building my-cool-guy-test-app from herokuish...
-----> Node.js app detected

-----> Creating runtime environment

       NPM_CONFIG_LOGLEVEL=error
       NPM_CONFIG_PRODUCTION=true
       NODE_MODULES_CACHE=true

-----> Installing binaries
       engines.node (package.json):  0.10.x
       engines.npm (package.json):   2.7.x

       Resolving node version 0.10.x via semver.io...
       Downloading and installing node 0.10.40...
       Resolving npm version 2.7.x via semver.io...
       Downloading and installing npm 2.7.6 (replacing version 1.4.28)...

-----> Restoring cache
       Loading 1 from cacheDirectories (default):
       - node_modules (not cached - skipping)

-----> Building dependencies
       Pruning any extraneous modules
       Installing node modules (package.json)
<EMAIL_ADDRESS>node_modules/express
       ├──<EMAIL_ADDRESS>       ├──<EMAIL_ADDRESS>       ├──<EMAIL_ADDRESS>       └──<EMAIL_ADDRESS><EMAIL_ADDRESS>
-----> Caching build
       Clearing previous node cache
       Saving 1 cacheDirectories (default):
       - node_modules

-----> Build succeeded!
       └──<EMAIL_ADDRESS>
-----> Discovering process types
       Procfile declares types -> cron, web, worker
-----> Releasing my-cool-guy-test-app...
-----> Deploying my-cool-guy-test-app...
-----> DOKKU_SCALE file not found in app image. Defaulting to a single web process
-----> New DOKKU_SCALE file generated
-----> Running pre-flight checks
-----> Attempt 1/5 Waiting for 5 seconds ...
       CHECKS expected result:
       http://localhost/ => "nodejs/express"
-----> All checks successful!
=====> my-cool-guy-test-app container output:
       Detected 512 MB available memory, 512 MB limit per process (WEB_MEMORY)
       Recommending WEB_CONCURRENCY=1
       Listening on 5000
       <IP_ADDRESS> - - [Tue, 01 Sep 2015 21:28:32 GMT] "GET / HTTP/1.1" 200 14 "-" "curl/7.35.0"
=====> end my-cool-guy-test-app container output
-----> Running post-deploy
-----> Creating new /home/dokku/my-cool-guy-test-app/VHOST...
-----> Configuring my-cool-guy-test-app.dokku.me...
-----> Creating http nginx.conf
-----> Running nginx-pre-reload
       Reloading nginx
=====> Application deployed:
       http://my-cool-guy-test-app.dokku.me

   output: bash: -c: line 28: syntax error near unexpected token `(' bash: -c: line 28: ` <button type="button" onclick="setup()" class="btn btn-primary">Finish Setup</button> '
   status: 1
   command failed with exit status 1
    !    WARNING: Potentially Destructive Action
    !        To proceed, type "my-cool-guy-test-app"

   Destroying my-cool-guy-test-app (including all add-ons)

2 tests, 2 failures

@basicer mind taking a look at the issue? We'll need to revert the PR otherwise.

did this test ever work on circleci?

adding a sleep works here. that's why we do a retry on our deploy tests. that has smoothed over this stuff in the past. PR coming...

It def passed on circleci before I merged (and we both :+1: it). Oh well.

Ah! Well, nginx can be slow at times; hence our retries in other tests.


Any Problems with duplicate vertices in creating Convex Mesh

I'm trying to create a convex mesh now.
Does having duplicate vertices affects the building of convex meshes in any way?

Yes, it is currently not supported in the library to create a convex mesh shape that contains duplicated vertices.
When a ConvexMeshShape is created, each vertex needs to be part of at least three polygon faces.
This has been discussed in this issue.
The documentation has already been changed but the online documentation doesn't contain this change for the moment. Sorry for that.

I am closing this. Don't hesitate to open it again if you still have a question.


Enhancement: dynamic properties

It would be nice to have option to define dynamic property. By dynamic I understand property that is resolved during program execution. Lets say I have server for PLC and I want to serve I/O. Instead of defining each I/O as bool, byte, word i would like to have one route lets say /io and based on request resolve it to proper value.

Solution A) Define a remote method to query IO value based on names defined ni each request : IO/GetValue(IoName)
Solution B) If you absolutely need properties for items defined by the client requests : Create a remote method CreateIoProperty (Name, WoopsaType) that creates the corresponding property upon request. This method can simply create a new WoopsaProperty in the WoopsaObject Io.
Hope this will help.


[SEI-5882]: UPDATE ENV ENDPOINTS FOR CUSTOM INTEGRATIONS

Harness Developer Pull Request
UPDATED ENVIRONMENT SPECIFIC ENDPOINTS FOR CUSTOM INTEGRATIONS
What Type of PR is This?

[ ] Issue
[ ] Feature
[X] Maintenance/Chore

If tied to an Issue, list the Issue(s) here:

Issue(s)

House Keeping
Some items to keep track of. Screen shots of changes are optional but would help the maintainers review quicker.

[x] Tested Locally
[ ] Optional Screenshot.

Please check the Execution Link of the Pipeline for the Website Draft URL. This is located in the Preview Step behind the Harness VPN and also is available in #hdh_alerts. E.g Website Draft URL: https://unique-id--harness-developer.netlify.app. Current Draft URL is: https://65e3585e5ca446d9167b6cd7--harness-developer.netlify.app


[build-script] copy over the simulator libclang_rt.*.a libraries to a…

…llow clang to link with them
Clang's driver started linking with libclang_rt.sim.a when building for simulator.
Swift's build need to adapt to this clang change, by ensuring that the libclang_rt.sim.a libraries are created during the build
(cherry picked from commit 3320d236e70772cc8641a43f4ac4cff7ebd1ba75)

Replace this paragraph with a description of your changes and rationale. Provide links to external references/discussions if appropriate.

Resolves SR-NNNN.

@swift-ci please test


Unable to login through the Amplify CLI

How did you install the Amplify CLI?
curl
If applicable, what version of Node.js are you using?
No response
Amplify CLI Version
11.0.5
What operating system are you using?
Windows
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
No manual changes made
Describe the bug
When I run
amplify pull --appId dg7jtgfxh9v63 --envName dev

The CLI opens the Amplify login page in the browser, but after login, an empty screen with the Amplify header appears and nothing happens.

If I hit enter in the terminal then I get the following:

Expected behavior
After I log in Amplify Studio through the web, the CLI should be logged in and continue doing the pull.
Reproduction steps

Install the Amplify CLI with curl -sL https://aws-amplify.github.io/amplify-cli/install-win -o install.cmd && install.cmd
Try to pull the Amplify environment
Try to log into the platform

Project Identifier
Since I could not pull the project, diagnose just throws:
No Amplify backend project files detected within this folder.
Log output

# Put your logs below this line
2023-04-20T23:37:28.303Z|error : Current environment cannot be determined.
EnvironmentNotInitializedError: Current environment cannot be determined.
2023-04-21T07:57:53.949Z|info : amplify version core
2023-04-21T11:31:04.740Z|info : amplify diagnose core  {"send-report~":true,"yes":false}
2023-04-21T11:31:04.772Z|info : amplify-cli-core.banner-message/index.ts.fetch banner messages from https://aws-amplify.github.io/amplify-cli/banner-message.json({}

Additional information
No response
Before submitting, please confirm:

[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
[X] I have removed any sensitive information from my code snippets and submission.

Hey @Thiamath, 👋 thank you for reaching out.
Does the project have Amplify studio enabled?
is yes, Could you try the following steps.

Open AWS Amplify console and select a app.
Launch studio for app.
then in you local machine, remove an files created by the previous amplify pull. example: amplify-backup and amplify folder
rerun Amplify headless pull
the cli should open a new tab in the browser. select yes if prompted for access
the cli should continue with the prompts.

additionally, could try adding the --debug to the pull command?

Hi @ykethan !
Thank you for reaching out so fast.
I made it and the same thing happened. On point 5 there's no prompt, just an empty screen as shown above. Point 6 never occurs.
After using the flag --debug I got the following output:
viajero@PC:~/test$ amplify pull --appId dg7jtgfxh9v63 --envName dev --debug
Opening link: https://eu-west-1.admin.amplifyapp.com/admin/dg7jtgfxh9v63/dev/verify/?loginVersion=1
⠹ Confirm login in the browser or manually paste in your CLI login key:

🛑 Failed to authenticate with Amplify Studio: Provided token was invalid.
? Select the authentication method you want to use: Amplify Studio
🛑 Current environment cannot be determined.

Resolution: Use 'amplify init' in the root of your app directory to create a new environment.
Learn more at: https://docs.amplify.aws/cli/project/troubleshooting/

EnvironmentNotInitializedError: Current environment cannot be determined.
    at AmplifyToolkit.getEnvInfo (/snapshot/repo/build/node_modules/@aws-amplify/cli-internal/lib/extensions/amplify-helpers/get-env-info.js:9:11)
    at adminLoginFlow (/snapshot/repo/build/node_modules/@aws-amplify/amplify-provider-awscloudformation/lib/admin-login.js:31:40)
    at getTempCredsWithAdminTokens (/snapshot/repo/build/node_modules/@aws-amplify/amplify-provider-awscloudformation/lib/utils/admin-helpers.js:72:44)
    at Object.loadConfigurationForEnv (/snapshot/repo/build/node_modules/@aws-amplify/amplify-provider-awscloudformation/lib/configuration-manager.js:769:73)
    at processTicksAndRejections (internal/process/task_queues.js:95:5)
    at async Object.run (/snapshot/repo/build/node_modules/@aws-amplify/amplify-provider-awscloudformation/lib/attach-backend.js:129:21)
    at async Object.attachBackend (/snapshot/repo/build/node_modules/@aws-amplify/amplify-provider-awscloudformation/lib/index.js:253:3)
    at async queryProvider (/snapshot/repo/build/node_modules/@aws-amplify/cli-internal/lib/attach-backend-steps/a10-queryProvider.js:31:5)
    at async attachBackend (/snapshot/repo/build/node_modules/@aws-amplify/cli-internal/lib/attach-backend.js:39:9)
    at async Object.run (/snapshot/repo/build/node_modules/@aws-amplify/cli-internal/lib/commands/pull.js:64:9)
    at async Object.executeAmplifyCommand (/snapshot/repo/build/node_modules/@aws-amplify/cli-internal/lib/index.js:189:9)
    at async executePluginModuleCommand (/snapshot/repo/build/node_modules/@aws-amplify/cli-internal/lib/execution-manager.js:135:5)
    at async executeCommand (/snapshot/repo/build/node_modules/@aws-amplify/cli-internal/lib/execution-manager.js:33:9)
    at async Object.run (/snapshot/repo/build/node_modules/@aws-amplify/cli-internal/lib/index.js:117:5)

Session Identifier: abbc7cdd-793d-4566-91bc-422b7614a657

I'm trying to allow some developers to use the CLI to run the application locally and connect to Amplify authentication and database.

hey @Thiamath, interesting, do you observe any errors in the browser console?

Hi @ykethan
Not many:

Additionally, were the users configured as ManageOnly User?

Yeah, the user is configured as ManageOnly, and I'm logging in with email and password.
I closed all the tabs and spawned a clean Chrome page (I tried with Edge too, same thing) and the answer was the same. An empty page with the header and footer from Amplify shows me as logged in but without any content. And the CLI waiting for a response.

Hey @Thiamath, thank you for the information. Wanted to clarify some information.
Currently:
Full access: allows the team member to create and manage AWS resources. for example, being able to pull and modify resources
Manage only: allows access to team member to edit app content and users. for example, edit a data/records in a table but does not allow access to pull resources.
To allow access to developers, you will need to assign Full Access to the users. The Amplify Studio team is currently aware on this behaviour are working on providing better error messaging in the future releases.

@Thiamath no worries, glad i was able to assist you. This is currently being documented here https://docs.amplify.aws/console/adminui/access-management/.
Thank you for the feedback, i believe the information can be expanded for a better understanding. I will pass this on to the Amplify Studio team.
For now, I will be closing the issue. Please feel free in reaching out to us again and we would be happy in assisting you.


Refactor multiform upload to better implementation and handle uploading large file. this will fix #24, #25, #27

Current multipart form upload implementation has the potential to run out of memory when uploading large files since it loads the whole file into memory and writes to the request file.
this PR will attempt to fix that. code has been copied from Alamofire. their multiplatform data has a better implementation.

Refactor example app to send the direct video/image path instead of copying and let the platform take care of the rest.

This should fix with issue #24, #25, #27

@onikiri2007 - Before going into much detail: Have you considered depending on Alamofire instead of copying the code in? We can always strip out unused components on a release build, therefore I don't think package size is a major concern at the moment.
Also, good to not copy a requested file twice (in the example), and let the form builder be standardised. Will the Alamofire uploader make a copy of the request and store it in cache, though?

@onikiri2007 - Before going into much detail: Have you considered depending on Alamofire instead of copying the code in? We can always strip out unused components on a release build, therefore I don't think package size is a major concern at the moment.
yeah that's a good idea. I'll change to make Alamorefire as dependency

Also, good to not copy a requested file twice (in the example), and let the form builder be standardised. Will the Alamofire uploader make a copy of the request and store it in cache, though? I'm not sure what you mean by this? Do you mean creating the request body as file? if this is the case, the answer is yes because urlsession only accept file as request body therefore It requires to create the one single file with all the files append. Alamofire's FormData class take care the better in this scenario.

Also, good to not copy a requested file twice (in the example), and let the form builder be standardised. Will the Alamofire uploader make a copy of the request and store it in cache, though?

I'm not sure what you mean by this? Do you mean creating the request body as file? if this is the case, the answer is yes because urlsession only accept file as request body therefore It requires to create the one single file with all the files append. Alamofire's FormData class take care the better in this scenario.

OK, so it's only a code cleanup for the form data builder, sounds good!

first one is done. Alamofire is now dependency. I might refactor the Urlsession part also later to use Alamofire's sessionManager instead. for now this will be first refactoring.

@onikiri2007 , ok - just two things left from my point of view:

please update the Podfile.lock (by running pod update)
please try to run SwiftLint or similar to remove the whitespace changes (a lot of lines' only change is addition of white spaces)

We'll do SwiftLint on CI in the future as well.

@onikiri2007 , ok - just two things left from my point of view:

please update the Podfile.lock (by running pod update)
please try to run SwiftLint or similar to remove the whitespace changes (a lot of lines' only change is addition of white spaces)

We'll do SwiftLint on CI in the future as well.

clean up is done
@ened  Error: CocoaPods's specs repository is too out-of-date to satisfy dependencies. requires to update the podspec repo in CI

@onikiri2007 please rebase


Update Who uses jest on the home page stats

I'm using jest for a long time now and accidentally noticed the "stats" of who uses jest :)
Old stats are great already but i think it's time to update them.
Monthly downloads are 2x more then it says on the homepage
https://www.npmjs.com/package/jest 4M a week.
There are also 2x more open gitlab repositories then it says on the homepage
https://github.com/facebook/jest/network/dependents
1.13M repos not 0.5M ;)
Good job, jest :1st_place_medal: :100: :+1:

Crazy numbers... Wanna send a PR to update?
https://github.com/facebook/jest/blob/2b64bb45fc952d02ecdd09618c817fd0d67f072e/website/pages/en/index.js#L538-L547

@SimenB I shall take this up :+1:


CLI does not support reading input from STDIN

The corresponding code in commented out in AsciidoctorInvoker.java due to JCommander inability to handle '-' as a parameter. JCommander limitation lifted by newer version already included in master.

is there a workaround for 2.5.4, which I understand is the latest release?

Are you saying that you are still facing this issue with the latest version?
The latest is 2.5.5, but 2.5.4 should be fine too.

Yep, the same issue on 2.5.4, I don't have 2.5.5, I haven't had the time to investigate how to install it without sdkman.

Hi :wave: What OS is it?

I can reproduce in OSX.
It generates the output and dumps it to stdout, but also throws an exception.

This is a new issue. I'll create another ticket for it.


Error when creating a db with dashes in key name

When creating a table I get errors if my keys contain a dash (-) in their name. While this works...
    this.version(1).stores({
      orders: 'orderid',
    });

...the following fails...
    this.version(1).stores({
      orders: 'order-id',
    });

I couldn't find this in the documentation. Is this a bug or by design?

It might be a limitation in the indexeddb spec of what characters are allowed in key paths. Dexie does not put any limitations.

@dfahlander Thank you for your time. Indeed, from the key path spec (https://www.w3.org/TR/IndexedDB/#key-path-construct, my highlighting):

A key path is a string or list of strings that defines how to extract a key from a value. A valid key path is one of:

An empty string.
An identifier, which is a string matching the IdentifierName production from the ECMAScript Language Specification [ECMA-262].
A string consisting of two or more identifiers separated by periods (U+002E FULL STOP).
A non-empty list containing only strings conforming to the above requirements.

order-id from my example above is not a valid identifier (see https://mothereff.in/js-variables for example)
The error I received was not very descriptive and I removed the dash by pure chance, otherwise I would have not found out.


Easier interface searching for and running export actions for multiple users

Per discussion with Jonathan, this is useful for the core contact sheet, trips, and probably some other cases. I’m not sure what the interface for this would be.

IMHO for core contact sheet, use the team. For anything else use trips. See also #333, #341

Our current pattern is largely around building exports for specific business cases and I think we should maintain that.


Change status query into a information message when finishing a rolling restage - main

This change will prevent the issue reported in Jira's ticket CLI-50 which creates a race condition when trying to query the app's rolling restage status at the same moment the old restage group gets deleted.
Link for v8: https://github.com/cloudfoundry/cli/pull/2664
Link for v7: https://github.com/cloudfoundry/cli/pull/2665

as this change was made to resolve a tricky-to-reproduce issue, going to document the setup here:

used a TAS 4.0 testing environment, set up such that the compute bosh job (which hosts garden and therefore app instances) was on a GCP VM with 32GB memory, 131GB root disk, and 2vCPUs
used a version of the cf-cli built off the v8 branch - specifically c7d46b6d4
10 sample apps, each using the dora code but named dora-1, dora-2, etc.
3-at-a-time restaging of those apps, i.e. cf restage "dora-$i" --strategy rolling --no-wait & for i := {1,2,3}, followed by the next 3, etc.
observed Process not found  FAILED, etc.
rotating too many (all 10) apps at a time also resulted in Process not found, but this was a red herring as it was caused by InsufficientResources (out of memory)
observed that the same testing procedure did not result in an error using a version of the binary built from this PR (d444bc11e)


Minor bug fixes and balance

Moved sentinel alter blocking heroes. #2878
Moved dalaran building blocking units. #2880
Remove dark summoning from dalaran towers and add reveal to dalaran base towers (violet towers). #2888
Bigger region in front of gilneas gate so heroes can unlock it easier. #2889
Reduce dranei piercing reduction.

Piercing deals 0% -> 25%.

Ashtongue mystic now has unit upgrades and backpack. #2877
Fixed goblin merchant being removed when sunfury is not picked. #2882

Was unsuccessful in this change: - Change dreadlord dark summoning so that it can't summon boats. Will need to look into more, maybe another PR.

Not sure if this was already broken but this tooltip is wrong:

It's also weird that the tower loses Magic Sentry when it's upgraded down this path, but not the other one. Is that intended?

Not sure if this was already broken but this tooltip is wrong:  It's also weird that the tower loses Magic Sentry when it's upgraded down this path, but not the other one. Is that intended?

almost certainly not, as the improved version has it again.
Will add magic sentry to this tower, and update the tooltip to have all correct abilities (assuming that's all that you see that is 'broken' here?)

Not sure if this was already broken but this tooltip is wrong:  It's also weird that the tower loses Magic Sentry when it's upgraded down this path, but not the other one. Is that intended?

almost certainly not, as the improved version has it again.
Will add magic sentry to this tower, and update the tooltip to have all correct abilities (assuming that's all that you see that is 'broken' here?)

Yep! I think adding Magic Sentry and updating the tooltip covers the bases.


GOAWAY retry

https://github.com/minio/minio-go/blob/master/retry.go#L90
Should we add GOAWAY error to func isHTTPReqErrorRetryable too ?
example of error:
http2: server sent GOAWAY and closed the connection; LastStreamID=49, ErrCode=NO_ERROR, debug="",

This is an upstream bug in http2 in Go - just use http1.1 for now. @lestatcheb

This is an upstream bug in http2 in Go - just use http1.1 for now. @lestatcheb

@harshavardhana can you give url to that upstream bug issue in go?

https://github.com/golang/go/issues/32112


Why doesn't the authentication return the refreshToken?

Core Library
MSAL.js (@azure/msal-browser)
Core Library Version
2.38.0
Wrapper Library
MSAL React (@azure/msal-react)
Wrapper Library Version
1.5.9
Public or Confidential Client?
Public
Description
I'm trying to create an integration between my application and Outlook. I decided to follow the On-Behalf-Of flow, for structure and security reasons. I'm still trying to use this library for authentication to get the token information and save it to a database, but I've checked the AuthenticationResult type and it seems to not include the refreshToken. Why is that?
MSAL Configuration
{
  auth: {
    clientId: 'a213c1fe-c1ae-41f6-878c-1948b826b9f5'
  }
}

Relevant Code Snippets
instance.loginPopup({
      scopes: ['Calendars.Read', 'Calendars.ReadWrite'],
      redirectUri: window.location.origin + '/integracoes'
    }).then((values) => {
      console.log(values); // doesn't include refreshToken
      dispatch(updateUserIntegration({ userId: InfoUsuario.get('cdUsuario'), integrationId, value: true }));
    })

Identity Provider
None
Source
External (Customer)

@TheNatas We intentionally do not expose the refresh token for security reasons. Please see this FAQ here. Can you confirm if you are using MSAL React or MSAL Node? The OBO flow is only for MSAL Node.

@jo-arroyo I'm using MSAL React just for the initial authentication, so then I want to send the token information (access, refresh, expiresOn) to my Java backend where I'll handle the token refreshing and API calls.
I'm in a hurry right now, so I'm currently making the authentication without using the library, but it would be easier if I had access to the refreshToken through the library.
I saw this question here which says something about an offline_access permission for having the refreshToken, but it doesn't seem to work. Is it an old feature?

@TheNatas The offline_access scope is a default scope sent in the request so that MSAL receives and is able to use the refresh token returned. Again, that MSAL does not expose the refresh token is by design.

I see. I'm gonna try the MSAL for Java then. I was able to get it by sending the authentication requests manually, but I'll sure try to improve it in the future by using the back end API.
Thanks for the explanation.


Unable to inspect all slash command arguments

This took a lot of digging, testing, and triple checking. So correct me if I am wrong, but I believe that replacing command with command_name in commit 2829267bca4ed59a1c1ddb2eb8b4ff39ec76add1 introduced a regression.
While it is true that command_name is identical to command:0, yielding the "root name" of the command.
e.g. /cmd a sees command_name as cmd
I am unable to inspect if /cmd a or /cmd b is used, since neither populate arguments with a SUB_COMMAND type Slash command interaction option value.
If I run the following code and use /cmd a v:test, then the following output is printed to my console:
code:
__on_start() -> (
  task( _() -> (
    for (global_server~'slash_commands',
      dc_delete(_);
    );
    dc_create_slash_command({
      'name' -> 'cmd',
      'description' -> 'test',
      'options' -> [
        {
          'type' -> 'SUB_COMMAND',
          'name' -> 'a',
          'description' -> 'test a',
          'options' -> [
            {
              'type' -> 'STRING',
              'name' -> 'v',
              'description' -> 'test option',
              'required' -> true
            }
          ]
        },
        {
          'type' -> 'SUB_COMMAND',
          'name' -> 'b',
          'description' -> 'test b',
          'options' -> [
            {
              'type' -> 'STRING',
              'name' -> 'v',
              'description' -> 'test option',
              'required' -> true
            }
          ]
        }
      ]
    }, global_server);
  ));
);

__on_discord_slash_command(interaction) -> (
  task(_(i) -> (
    logger(i~'command_name');
    for (i~'arguments',
      logger('argument');
      logger(_~'name');
      logger(_~'is_subcommand_or_group');
      logger(_~'value');
    );
    dc_respond_interaction(i, 'RESPOND_IMMEDIATELY', 'Inspecting data, don\'t mind me.');
  ), interaction);
);

output:
[04:23:44] [pool-24-thread-1/INFO]: cmd
[04:23:44] [pool-24-thread-1/INFO]: argument
[04:23:44] [pool-24-thread-1/INFO]: v
[04:23:44] [pool-24-thread-1/INFO]: false
[04:23:44] [pool-24-thread-1/INFO]: test

This does not seem correct. I'm unable to determine if a or b were used. It's as if the arguments list consists of only the last thing parsed, rather than all parsed options.
I would instead expect the following output:
cmd
argument
a
true
dc_slash_command_interaction_option
argument
v
false
test

Let me know if I missed something here. Thanks!
EDIT: Worth noting, that my prior request for arguments_by_name is likely incompatible with what I expect here. Should nested sub-options share names. In this case, might be best to move that map to the option value as well such that each index of arguments has its own mapping. Or I am completely confused here haha!

Alright i fixed the arguments not returning all options in 1c335f9cd2a3390d15448d5828b02f01ce749802.
I'm not sure what to do about the fact that ´arguments_by_namecan't work with duplicate slash command option names, but i think that's fine, can still usearguments`

Released v1.3.2 now


Move towards a standard of persistent_id for Subject

Previously most AAF applications have relied on a combination of eduPersonSharedToken and eduPersonEntitlement when identifying users.
This is seen within lipstick where calls are made to Subject#targeted_id within helpers (and likely elsewhere).
Moving forward our applications will need to start to rely on Persistent SAML NameID, persistent_id rather than directly on eduPersonTargetedID.
Receivers for shib-rack applications should default to obtaining this value from the HTTP_PERSISTENT_ID header. If it is not present fall back to HTTP_TARGETED_ID. Subjects should have either value stored as persistent_id.
An example of this is provided in the Validator service.

https://github.com/ausaccessfed/validator-service/blob/bugfix/115-persistent-name-id-and-targeted-id/lib/authentication/subject_receiver.rb#L26
https://github.com/ausaccessfed/validator-service/blob/bugfix/115-persistent-name-id-and-targeted-id/app/models/subject.rb#L54

This needs to be carefully documented within the ShibRack readme (that currently does not exist)

Other relevant PR associated with this change:

https://github.com/ausaccessfed/aaf-lipstick/issues/77
https://github.com/ausaccessfed/aaf-gumboot/issues/50
https://github.com/ausaccessfed/rapid-rack/issues/10

There may also be need to consider a shared_persistent_id value that is populated from auEduPersonSharedToken or in the future eduPersonUniqueId http://software.internet2.edu/eduperson/internet2-mace-dir-eduperson-201602.html#eduPersonUniqueId as opposed to our current reliance on calling this auEduPersonSharedToken


Improve Nix "stuff"

Update github actions on a daily basis.
New github workflow that updates flake inputs weekly.
Use upstream flake-utils (no need to use the fork)
Use gitignore.nix to filter out not needed source files. That
Use direnv to automatically enter the nix development environment.
Use pre-commit.nix to force rust and nix formatter.
Use rust-overlay to follow latest stable rust compiler.
Use naersk to load cargo dependencies from Cargo.lock file.

This is a similar change that was done in jormugandr, https://github.com/input-output-hk/jormungandr/pull/3894

Good stuff @garbas. Thanks


Do not require trailing commas for firmware definition

Couple of comments above (all suggestions really so feel free to say you prefer it how it is).
Ideally we'd support an arbitrary argc/argv style thing but what you've done here is a worthwhile improvement and there's no obvious/simple POSIX library function to split a string on ,. So unless you feel super motivated to write a comma separating parser lets just go with this approach for now.
Sadly we can't quite use wordexp(3) I think since it splits on spaces not , and the nested quoting would get quite "exciting" on the CLI I think.

Thanks!


Dynamic Size

Hi, I am no SVG expert. But for our application we need charts that can be resized based on the parent container. When the window resizes or a number of other event occur that impact the space available for the chart, it should size-to-fit.
Currently we have to set the width and height in the configuration of the chart. Now understand why that is, but at the same time, SVG also has support for different kinds of scaling, e.g. preserveAspectRatio.
I don't know if it is possible to preserve text scale and stroke width while spacing out ticks etc based on the space available. We would love to say { width: 100%, height: 100% } to avoid all the bookkeeping we have to do now.

Hi! I'm looking into creating a proper API for the resizing trouble! Thanks for letting me know though!


OCPCLOUD-2256,OCPCLOUD-2255: refactor: remove cluster-api-operator, rework assets/manifests

This PR implements the operator part of the work defined in the Installing Cluster API components in OpenShift enhancement.
Notably it:

removes the cluster-api-operator from the worklow systems responsible for installing CAPI components in OCP
introduces a new controller as a replacement for installing the CAPI components in the cluster
reworks the assets/manifests generation for the provider forks to happen in the provider repositories rather than in this operator repository

The Merge of this PR depends on:

[x] merge of https://github.com/openshift/cluster-api/pull/179
[x] merge of https://github.com/openshift/cluster-api-provider-aws/pull/471
[x] merge of https://github.com/openshift/cluster-api-provider-gcp/pull/209
[x] merge of https://github.com/openshift/cluster-api-provider-ibmcloud/pull/64
[x] merge of any other providers.. PRs TO be ADDED
[x] (TBD) update of openshfit/library-go now that the AggregationRule support PR merged

/assign @JoelSpeed

cc. @mdbooth

The assets job is expected to fail as there is no asset generation make target as no generation happening in this repo anymore.
I'll remove it from the presubmits once this and the relevant PRs are merged.

I can split out the vendor, I squashed everything because it was quite hard to keep it rebased on top of the changes coming from main with so many stacked (+20) commits.

@JoelSpeed modules vendoring is now separated into a different commit.
I'll squash it once approved.

/retest

/retest

/retest

/retest

/retest

/retest

/retest

/unhold

/test e2e-gcp-ovn-techpreview

/test images

A new CAPG image built with RHEL9 is out, let's try one more time.
/retest

/retest

@damdo How important is this failing test? Any chance we can override it?

No need to override it, it is optional @mdbooth
It looks like it failed again because the image used for CAPG in the last test run registry.build02.ci.openshift.org/ci-op-dhq91l6j/stable@sha256:44bceef247e1dad1b234e850f9509e15b37cf48387012969c0b09d5b96bfc4a6 is still rhel8:
[root@edf8af08eb9e /]# cat /etc/redhat-release
Red Hat Enterprise Linux release 8.6 (Ootpa)

hence failing with the known OCP rhel8->rhel9 wide issue

/retest

/test e2e-gcp-ovn-techpreview

/tide refresh

/retest

/approve
/lgtm


0.4.0

@flight-zorn thanks for initiating this. We are still working out a couple issues as seen in the milestone.

Hey @flight-zorn, can you elaborate what is this PR for? it seems to be that you merged all of 0.4 branch into master. If so can you please elaborate. Where there any conflicts that you had to resolve, etc?
All in all, it's a blessed change that we've been trying to push forward to, let's see if we can get this mission completed.

IMO, since there doesn't seem to be anything happening with the master branch and 0.3.3 I propose that we mark the current master branch as the 0.3.3 release so people can still download the 0.3.3 code and merge 0.4.0 into master. We can make the download link on the website download the latest release (0.3.3) while 0.4.0 gets wrapped up.

I agree, though let's finish up with some 0.4.0 cleaning and then work out the release logistics.
I'll open an issue for reviewing this items are must for 0.4.0 before we seal it off.
Also, not sure what this PR is for so I'm closing.


update README.md with additional purpose (+testing) and releases

These benchmarks test the compression speed/ratio of various builtin and external compressors.
To ensure that we test a consistent and representative set of data. I pre-built a .tar file containing 3 InnoDB files. The InnoDB files were built by loading this Wikipedia dataset into MySQL 8.
Right now the file is located here in DropBox.
I was advised by @deepthi to think about uploading this file to vitess-resources. I recommend not committing this file because it is so big. It will use up all of Vitess' LFS free storage and be a pain for anyone trying to clone the repo.
Instead I would attach the file to a new release. You could prepend the release name with testdata- if you want to keep it separate from build-related artifacts.

So sorry I completely overlooked this PR. I think you've nailed both the process and the documentation. Committing directly to a repository would indeed be a mistake, but attaching it to the release seems like the ideal middle ground.


Make sharpy compatible with multiple SC2 versions

somewhere should be a function called ping

Version can be get from the ping. Make some hacks in ActUpgrade to skip upgrades that don't exist in 4.10.
Reconfigure ALL_GAS in python-sc2 to ids in 4.10

Resolved.


Provide raw Envoy binaries outside of Docker

Issue Template
Title: Where can we download the standalone Envoy Binaries
Description:

We want to use Envoy in a standalone environment(windows subsystem for linux) without docker, can you please let us know

where can we download the Envoy binaries
How to get started using Envoy binaries in a docker less environment, i am assuming it will similar except for the docker part.

[optional Relevant Links:]

Any extra documentation required to understand the issue.

Bug Template
Title: One line description
Description:

What issue is being seen? Describe what should be happening instead of
the bug, for example: Envoy should not crash, the expected value isn't
returned, etc.

Repro steps:

Include sample requests, environment, etc. All data and inputs
required to reproduce the bug.

Note: The Envoy_collect tool
gathers a tarball with debug logs, config and the following admin
endpoints: /stats, /clusters and /server_info. Please note if there are
privacy concerns, sanitize the data prior to sharing the tarball/pasting.

Admin and Stats Output:

Include the admin output for the following endpoints: /stats,
/clusters, /routes, /server_info. For more information, refer to the
admin endpoint documentation.

Note: If there are privacy concerns, sanitize the data prior to
sharing.

Config:

Include the config used to configure Envoy.

Logs:

Include the access logs and the Envoy logs.

Note: If there are privacy concerns, sanitize the data prior to
sharing.

Call Stack:

If the Envoy binary is crashing, a call stack is required.
Please refer to the Bazel Stack trace documentation.

@mattklein123 how do I extract them out of container? Also is there docker containers for specific (stable) version of envoy (not just latest)?

So much contempt for a worse alternative to nginx just because someone had to make yet another product.
docker is not everything is it in fact worse than the previous default - no default.
It's a typical case of corporate fuckup and overcomplication, a typical example of overengineering and also typical for the state of everything today.
It's like there are intentional bricks that were put there.
Not everyone's daddy is working at silicon valley and not everyone is 16 years old and has time to learn a new way every 2 years.
I find this ignorance so infuriating that I could smash it all to pieces.
No one wants your envoy proxy, the ONLY reason it because it's being pushed down everyone's throat by grpc-web, because of obvious design flaws. Apart from that NO SANE PERSON uses it. Look at the complicated configuration alone.
It's beyond frustrating.
The same as k8s, hype hype, but when it comes to actually using it you're left alone and forced to use big tech companies clouds for ridiculous prices.

The previous comment/user was blocked due to violating our code of conduct.
With that said, I am going to reopen this issue and mark it help wanted. The maintainers cannot support every possible deployment scenario. We believe that offering Docker containers is a reasonable compromise. If someone in the community wants to work on the build/CI/etc. changes to provide raw binaries we are happy to support that work.

https://www.getenvoy.io/

@lizan @dio can we document getenvoy in our public docs here: https://www.envoyproxy.io/docs/envoy/latest/install/building#install-binaries and then we can call this resolved?

@lizan @dio can we document getenvoy in our public docs here: https://www.envoyproxy.io/docs/envoy/latest/install/building#install-binaries and then we can call this resolved?

I don't feel this helps, there are not prebuilt binaries or installers for Windows, the way you build the binaries is by using another dependency that some people wont have access to due to heavily locked down work environments.

@jbonnett92 see https://github.com/envoyproxy/envoy/milestone/36
this is something that is being actively worked on, even if progress is slow

@jbonnett92 see https://github.com/envoyproxy/envoy/milestone/36
this is something that is being actively worked on, even if progress is slow
Awesome, that you!

It seems like this issue has regressed, as GetEnvoy.io now redirects to https://www.envoyproxy.io/docs/envoy/latest/start/install which doesn't appear to include any links to plain binaries.

It seems like this issue has regressed

no regression - the binaries are now provided on the releases page
@jbonnett92

I don't feel this helps, there are no prebuilt binaries or installers for Windows

we are unlikely to provide windows binaries for the forseeable future - we are currently considering removal of windows support due to lack of maintenance (#28588 )

for whom to need extract envoy binary from docker containers:
docker cp    76533e32adc1:/usr/local/bin/envoy /usr/local/bin/envoy


tf.compat.v1.estimator.inputs AP changed to tf.estimator.inputs

. The old function call will throw an error.

Alright, I switched to the email address I used to sign the CLA. Now it is
signed.
On Fri, Dec 21, 2018, 13:31 googlebot<EMAIL_ADDRESS>wrote:

We found a Contributor License Agreement for you (the sender of this pull
request), but were unable to find agreements for all the commit author(s)
or Co-authors. If you authored these, maybe you used a different email
address in the git commits than was used to sign the CLA (login here
https://cla.developers.google.com/ to double check)? If these were
authored by someone else, then they will need to sign a CLA as well, and
confirm that they're okay with these being contributed to Google.
In order to pass this check, please resolve this problem and have the pull
request author add another comment and the bot will run again. If the bot
doesn't comment, it means it doesn't think anything has changed.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/pull/24511#issuecomment-449502832,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AH6E0GoKiUjuy5xfBQyL4w8IGpXbW2Agks5u7VNCgaJpZM4ZfHBj
.


[question] rpm-adapter does not generate sqlite DBs,  has any  plan to implement?

@lugeng good point! Sqlite operations should be much faster than using xml files, we definitely need to support it.

DB structure is described here

The SQLite export is deprecated in createrepo, and isn't used by any of the currently maintained RPM package managers. I wouldn't bother implementing it at all.


md to mat : missing some elements

Bug, feature request, or proposal:
Bug
What is the expected behavior?
When I use a tag starting with mat-, I expect it to behave like a material directive, and when I use a tag starting with md-, I don't expect it to behave like a material directive
What is the current behavior?
See above
What are the steps to reproduce?
The concerned tag is mat-card-actions, I need to use md-card-actions
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
2.0.0-beta.12

In beta.12, all md* directives are removed. Source from beta.12 tag,
https://github.com/angular/material2/blob/9fadf12c2941b739aa87e6d741b79dabc919dc61/src/lib/card/card.ts#L52-L67

Well then I don't know : here is with md :

And here it is with mat :

Can you make a stacblitz reproduction?
Are you sure you have no overriding global styles?
Does <mat-card-actions> have the .mat-card-actions class applied to it? What about <md-card-actions>?
Are you positive you're using beta.12? Consider removing node modules and reinstalling.

Oh ok, I tried to reproduce it on StackBlitz (thanks for it BTW, I was doing my best on Plunkr for reproduction), and it did the same.
It's only when I saw your 3) that I got it : there's a negative margin of -16px.
Since I'm using a 12px padding, that's why it seems "better" with md !
Sorry for bothering you, I'm closing this issue now.


Update for null safe

It would be interesting to update to null safe

Hello! :wave: Have you try out the rc? https://pub.dev/packages/faker/versions/2.0.0-rc.2


Proposal for final CodePipeline Actions scheme: naming and code organization

This PR contains what will (hopefully) be the final iteration of the way we structure our CodePipeline Actions.
The scheme is the following:

All Actions are in their dedicated modules, named after the service they represent integrations with (so, a CodeCommit Action lives in aws-codecommit-codepipeline, the 2 CodeBuild Actions live in aws-codebuild-codepipeline, etc.).
The names of the Actions do not include the word 'Pipeline'. The reason for that is that we will expect (and promote it in our docs, examples and code) that customer will import them with the word 'pipeline' included in the namespace prefix they use.

Examples:
import codebuildPipeline = require('@aws-cdk/aws-codebuild-codepipeline');
import codecommitPipeline = require('@aws-cdk/aws-codecommit-codepipeline');

new codecommitPipeline.SourceAction(sourceStage, 'source', {
    // ...
});
new codebuildPipeline.BuildAction(buildStage, 'build', {
    // ...
});

There is a new module, aws-codepipeline-aws-actions, that has all of the CodePipeline integrations packages (aws-codecommit-codepipeline, aws-codebuild-codepipeline, etc.) as dependencies. It re-exports all of the Action under the namespace of the integration service. This is in oder to aid in discoverability, and make it easier for customers to just get all of the integrations with one import.

Examples:
import codepipelineAwsActions = require('@aws-cdk/aws-codepipeline-aws-actions');

new codepipelineAwsActions.codecommit.SourceAction(sourceStage, 'Source', {
    // ...
});

new codepipelineAwsActions.codebuild.BuildAction(buildStage, 'Build', {
    // ...
});

Commits:

[BREAKING] Rename Lambda's PipelineInvokeAction to just InvokeAction.
[BREAKING] Rename CodeCommit's PipelineSource to SourceAction.
[BREAKING] Rename CodeBuild's PipelineBuildAction to simply BuildAction.
Introduce the 'aws-codepipeline-aws-actions' package.

By submitting this pull request, I confirm that my contribution is made under
the terms of the beta license.

Moved to #459 after fork problems when making the repo public.


EXDF Translations break /ac Macros

Bandaid fix is to remove Actions, PetActions, and CraftActions from the json file. You can also remove Status to fix /statusoff macros.

You can also use auto-translate functions so that your macros work regardless of which language you play the game in.
Try typing /ac cu and press Tab key, and you'll get a list of completion items. If you pick one from those, then it will work regardless of game language or whether you use EXDF transformation rules feature. Same goes for /statusoff.
The only two occurrences that I can think of where you can't use this is when you're using <recast.actionname> placeholder or using /quickchat "Nice job", where the former does not support auto-translate feature and the latter does not have an auto-translate dictionary item for some reason.

I had no idea you could use auto translates in macros. Thanks!


Using this with RxJava2

Not sure if this can be used together with RxJava2CallAdapterFactory, since then I can't use SmartCall in my interface. I have to use Observable, which means the SmartCacheFactory will not work.

Here's the simple implementation (in Kotlin) I came up with for wrapping a SmartCall into an Observable. I could potentially create a Factory for it, just not sure how to yet. Depending on if I have time, I'll do that and open a PR! But for now this works, for us:
class SmartCacheObservable<T>(private val call: SmartCall<T>): Observable<T>() {

    override fun subscribeActual(observer: Observer<in T>) {
        val call = call.clone()

        call.enqueue(object : Callback<T> {

            override fun onResponse(call: Call<T>?, response: Response<T>) {
                val body = response.body()

                if (body != null) {
                    observer.onNext(body)
                } else {
                    observer.onError(Throwable("Could not read response body!"))
                }

                // The current version of SmartCache will set the url to "http://localhost/" for
                // cached responses, we can use that to wait until the real network request
                // completes to call `observer.onComplete()`
                if (response.raw().request().url().host() != "localhost") {
                    observer.onComplete()
                }
            }

            override fun onFailure(call: Call<T>?, error: Throwable) {
                observer.onError(error)
                observer.onComplete()
            }
        })
    }
}

Hi ,  andreyrd  I am using retrofit 2 with java , i Need to show display data from cache before network call , As i am using rx java java so here i can not use SmartCacheFactory . do you have any solution for that

Hey @andreyrd , Thank you so much for your quick response , i will try to convert your SmartCall wrapper class to java

hello i too is facing this issue how can it be used with rxjava

@gzodx @dula34 @andreyrd Hey, I've released a new version with Retrofit 2.9, a function for checking if current response is loaded from disk, clearing cache, a filter for which responses should be cached etc.
Change the repo username to fikisipi and use SmartCache:2.9.0 from JitPack. I don't have experience with RxJava but I'd love to see a PR or help with adding that as well.


JSON parse can't deal with unicode control characters

I would've made a pull request, but I'm having trouble with repo permissions, so I figured this would just save me the headache.
There is a bug in FreeSWITCH that causes SOME messages (it seems very intermittent) to come through with unicode characters, and those characters are occasionally control characters. The JSON.parse fails on that, which causes an error to be emitted.

This is definitely a FreeSWITCH issue primarily, but digging into that is much harder than stripping the characters out on this end (for now). The characters always seem to pop up in the gruu portion of 'variable_sip_recover_contact'.

Maybe this is exactly why this error is being emitted in the first place, and if so, I guess no change would be necessary.

Adding this line right above the JSON.parse:
body = body.replace(/[\x00-\x1F\x7F-\x9F]/g, "");
strips out those characters and avoids this. In all cases for us, we still value the contents of this message, so error'ing out on it was not an option. I do plan to explore further into FreeSWITCH to hopefully get this fixed the right way, but in the meantime this is adequate for us, so I thought maybe it would be helpful to others.

Posted in 3.0.1.

Thanks for the quick response and addition! For anyone curious where this ends up on the FreeSWITCH end, I've opened an issue over there:
https://freeswitch.org/jira/browse/FS-7521


Is the version information correct?

I think the current zplug is ver. 1.0.0 or higher.
But zplug version says that I am ver. 0.1.9.. It's strange for me.

Just an idea.
First, my idea makes it mandatory to manage zplug by itself.
And, you make a tag with version information at each releases.
zplug should read and output the tag of its HEAD.

Exactly! I agree with your suggestion. In v2, I'll release zplug on GitHub Releases and make its tag.

It plans to tag at the time of the v2 release.


⬆ Upgrade vulkano

Suffering from this issue under arch linux https://github.com/google/shaderc-rs/issues/61.
Apparently they fixed it upstream and vulkano 0.14 seems to have picked it up.
upgrading vulkano seems to work fine.

Thank you for the PR!
It seems vulkano 0.16 can be usable without any code modifications, so I created another commit to bump deps.
(vulkano 0.17 or later requires newer winit but it requires huge user code changes.)


Use Optional as arguments type label

To support lower versions of Python

https://github.com/acheong08/EdgeGPT#requirements
Python 3.8+ is recommended but I suppose this doesn't hurt

Also to follow the style of conversation_style: Optional[ConversationStyle]

I also think this is more pythonic way


KAFKA-12323: Set timestamp in record context when punctuate

Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

@ableegoldman @vvcephei for reviews, thanks!

Cherry-picked to 2.8 / 2.7, cc RM @vvcephei


Refactor the gh_log module to make it a true wrapper

Description
Right now the gh_log module doesn't hide implementation details and exposes the spdlog library in the public API. Refactor the module so that it hides the implementation details and provide a good and solid public API.
Definition of done

All the spdlog includes are inside internal/backends files and not exposed to the public API;

Duplicate of https://github.com/WinterWind33/fish-and-plants/issues/94


Allow to dispatch an action on async form validation

redux-form doesn't seem to allow to dispatch an action on async validation for now.
However, I seperated ajax logic with async action and middleware like this:
const fetch = createAction('SEARCH_FETCH',
  (query) => api('GET', '/api/search', {query}));

// This returns a Promise for searching 'Hello, world!'
// and this also dispatches 'SEARCH_FETCH' when fetching is complete.
store.dispatch(fetch('Hello, world!'));
.then(result => {
  console.log(result);
});

If redux-form allows to dispatch an (async) action on form validation, I think it can seperate API call logic and validation logic.
const checkUsername = createAction('SIGNUP_CHECK_USERNAME',
  (username) => api('GET', '/api/signup/checkUsername', {username}));
function validateFormAsync(data, dispatch) {
  // In this case, checkUsername action is ignored by reducers
  return dispatch(checkUsername(data.username));
  .then(action => {
    if (action.error) {
      return {
        username: 'Internal server error'
      };
    }
    return {
     username: action.payload
    };
  });
}

Here's the source code of 'api' function: https://gist.github.com/yoo2001818/05aad13f1af7fb5eaf38

Sorry, but I'm not understanding exactly what you're asking/suggesting. You just want dispatch to be given to the asyncValidate function?

Basically, yes.

Fixed in v1.6.0.


Error on install generator and app load:  "missing keyword: :deprecator (ArgumentError)"

Environment

Ruby 3.3.5
Rails 7.2
Devise 4.8.1

Current behavior
When running rails generate devise:install
/Users/tbem/.gem/ruby/3.3.5/gems/activesupport-7.2.2/lib/active_support/deprecation/constant_accessor.rb:65:in `deprecate_constant': missing keyword: :deprecator (ArgumentError)
Expected behavior
create  config/initializers/devise.rb
create  config/locales/devise.en.yml

Sorry folks I guess this was solved on Devise 4.9.3


Django 1.11 removes django.forms.widgets.CheckboxChoiceInput

This line https://github.com/Aalto-LeTech/django-colortag/blob/master/django_colortag/widgets.py#L34 uses django.forms.widgets.CheckboxChoiceInput, but Django 1.11 does not have that class (1.10 still does). There are other checkbox-related widgets in Django that still exist in new Django versions. Could they be used to replace the problematic line in django-colortag?

Easiest is to copy the classes from django 1.10 to colortag. A better solution would be portin colortag to django template based widgets.

The widget class ColortagSelectMultiple(widgets.CheckboxSelectMultiple) is the only part in the public API affected by this issue, since class CheckboxColortagInput(CheckboxChoiceInput) and class CheckboxColortagRenderer(widgets.CheckboxFieldRenderer) should not be used anywhere outside the widgets.py. ColortagSelectMultiple could still inherit Django's CheckboxSelectMultiple widget, but instead of the old renderer class, it could use the new widget HTML templates (override the default template with a new one).
However, I can not find any use-case for ColortagSelectMultiple. None of the projects I am aware of seem to make any use of this widget. Why does the widget ColortagSelectMultiple even exist?

However, I can not find any use-case for ColortagSelectMultiple. None of the projects I am aware of seem to make any use of this widget. Why does the widget ColortagSelectMultiple even exist?

MOOC-Jutut/feedback/filters.py uses ColortagChoiceFilter, which uses ColortagChoiceField, which uses ColortagSelectMultiple.
With some effort, we can convert from widget classes to templates with their own names, as the template name is just a class variables. E.g.
 class TextInput(Input):
    input_type = 'text'
    template_name = 'django/forms/widgets/text.html'


Incorporate futures, coroutines, and detach callbacks (for requests).

An MPI_Request is a handle for an MPI operation which will complete in the future.
A std::future<T> is a handle for a C++ operation which will complete in the future.
They are very much the same. Futures should be incorporated in the implementation of the request wrapper. Specifically std::future<T>::then() which is a part of the C++ concurrency proposal would enable chaining non-blocking operations with a clean syntax.
Callbacks are an alternative to asynchrony; the user provides a function which is ran when the operation completes. Callbacks also enable chaining through nesting, today.

See mpi/extensions/detach.hpp and mpi/extensions/future.hpp.


WIP feat: 添加会议接口和汇报记录接口

Codecov Report

Merging #725 (4388919) into master (399d23f) will decrease coverage by 0.67%.
The diff coverage is 18.64%.

@@            Coverage Diff             @@
##           master     #725      +/-   ##
==========================================
- Coverage   75.06%   74.39%   -0.68%
==========================================
  Files         107      107
  Lines        5274     5323      +49
==========================================
+ Hits         3959     3960       +1
- Misses       1315     1363      +48

Flag
Coverage Δ

unittests
74.39% <18.64%> (-0.68%)
:arrow_down:

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

wechatpy/work/client/api/oa.py
32.85% <18.64%> (-10.36%)
:arrow_down:

wechatpy/pay/__init__.py
64.47% <0.00%> (-2.20%)
:arrow_down:

Continue to review full report at Codecov.

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


sdist upload has been deprecated for a while

Description

New release process.
Motivation and Context

python setup.py sdist upload has been deprecated for a while.
Have you tested this? If so, how?

By following it and getting a new version released.

I wish we had an automated way. :D No, all manually crafted.
How could this PR fail all CI builds?

Does this seem useful? https://github.com/apps/release-drafter
Not super powerful, but at least could automate some.


Fix typo

.Net Framework -> .NET Framework

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

Verified the changes.


[GHSA-9c47-m6qq-7p4h] Prototype Pollution in JSON5 via Parse Method

Updates

Affected products
Description
References

Comments
Includes information about a backport for v1 and fixes a typo in the Mitigation section.

Hi there @jdgregson and @jordanbtucker! A community member has suggested an improvement to your security advisory. If approved, this change will affect the global advisory listed at github.com/advisories. It will not affect the version listed in your project repository.
This change will be reviewed by our highly-trained Security Curation Team. If you have thoughts or feedback, please share them in a comment here! If this PR has already been closed, you can start a new community contribution for this advisory

Since @jordanbtucker already updated the project-specific advisory, shouldn't there be some sort of auto-sync in place (i.e. obviating the need for this PR)?

@ashkulz Updates to the global advisory database need to be vetted by security professionals to ensure its quality and accuracy.

@jordanbtucker out of the interest, how long it usually takes?

I guess people are yet to come back from the holidays :man_shrugging:

Looking forward to getting this merged to remove false positives on 1.0.2 version we upgraded to.

I would look at previous PRs in this database to get an idea of an ETA and current backlog.

For me those fixes for 2.2.2 and 1.0.2 are pretty much the same 🤔

v2: https://github.com/json5/json5/commit/7774c1097993bc3ce9f0ac4b722a32bf7d6871c8
v1: https://github.com/json5/json5/commit/62a65408408d40aeea14c7869ed327acead12972

@jordanbtucker In our apps, we use<EMAIL_ADDRESS>we still could see the vulnerability and its showing that it will be fixed in 2.2.2. so can you please help here by letting us know how long will it take to reflect in our apps or we need to change something from our end.
Thanks!

@tapasmitamishr We also have<EMAIL_ADDRESS>and our vulnerability scanner (trivy) stopped flagging that version. On some CI machine we had to update the scanner database for it to pick up the latest updates for this advisory, but I suspect this PR resolved the issue at the root.


Use 'gofmt -s' to simplify code

Signed-Off-By: Joe Handzik<EMAIL_ADDRESS>

@roclark One more and we're completely clean!

Looks good to me!


Wrong status of scheduler start/stop button

On Pi reboot/start the scheduler start/stop button status doesn't show the correct state, because of the wrong process string. If you press then "Start" on the sheduler page again, the schedule process is running twice, which leads to a weird behavior of the scheduler.
Signed-off-by: hasenbolle<EMAIL_ADDRESS>

Btw: Im running Raspbian Wheezy.

This was caused by psgrep not working non sudo in Jessie and the awk technique was dependent on how schedule was started
The change suggested here would also not work all the time as the command string varies according to subfolder and depending on where the scheduler is started from
I've updated the technique to find the pid so it should work under all cases.


Update service-fabric-set-up-continuous-integration.md

Update author metadata.

Hi @mthalman-msft, I'm your friendly neighborhood Azure Pull Request Bot (You can call me AZPRBOT). Thanks for your contribution!

It looks like you're working at Microsoft (mthalman). If you're full-time, we DON'T require a contribution license agreement.

If you are a vendor, DO please sign the electronic contribution license agreement. It will take 2 minutes and there's no faxing! https://cla.azure.com.

TTYL, AZPRBOT;

@tysonn: please merge


Enhance and create detailed documentation for scancode-config.yml

We need to have detailed documentation for scancode-config.yml fields and syntax with concrete examples such we have a well-rounded and guided experience for users.
We have no proper documentation for these fields:

"Ignored patterns": today: Provide one or more path patterns to be ignored, one per line.
"License score": today: Do not return license matches with a score lower than this score. A number between 0 and 100.
"Attribution template": Custom attribution template.

We need to also track some important data attributes to guide scanning and integration with other AboutCode tools:

[x] product name: to use for integration with DejaCode as an alternative to using ABOUT files for this https://github.com/nexB/aboutcode-toolkit/issues/557
[x] product version: to use when linking back and integrating with DejaCode
[ ] specific list of package type/ecosystems in use including paths to the product package manifests and lockfiles as an alternative to https://github.com/nexB/dependency-inspector/issues/2#issuecomment-2088667239

We may want to also exclude certain package dependency scopes

We may also want to include one or more fields to identify where SCIO should send notifications about the status of a project, including link(s) to the result files.   working title of the new field could be notification_address .

The help for existing settings fields is being enhanced at https://github.com/nexB/scancode.io/pull/1229

The product name and version fields were added in the settings.

Now about:

specific list of package type/ecosystems in use including paths to the product package manifests and lockfiles as an alternative to "Create a Lockfile checker and generator  dependency-inspector#2 (comment)"

@pombredanne  Could you enter a detailed issue about the implementation you have in mind, including concrete data examples? I have no clues about what is required here.

Some notes:

for now, the product version is static, and the config file will be stored in the git repo (or provided additionally). Updating the product version will implying editing the config file.

For dependency scopes, I would like to be able to flag as ignored certain a dependency scopes of a given package type. For instance the config file could contain this:
ignored_dependency_scopes:
   - package_type: npm
     scope: devDependencies
   - package_type: pypi
     scope: tests

These are actual scope names. There are no wildcards. Only exact matched strings
The question is then to determine what we do with this:

We collect (and in the future resolve) all dependencies even if for ignored scope, and we pass along these ignores in the scan results for filtering in DejaCode
We do not collect (and in the future do not resolve) ignored dependencies from the type and scope (meaning no record is created in SCIO)
We collect (and in the future resolve) all dependencies, but we filter out ignored scoped from reporting

2.) is solution that looks the cleanest and most obvious approach and is consistent with paths, also the fastest.

see related issue https://github.com/nexB/scancode.io/issues/1236

@pombredanne provide a downloadable YAML template/sample scancode-config.yml file in the documentation.

Which style/content should we adopt for such template? Here's a few ideas:

No content:

product_name:
product_version:
ignored_patterns:
ignored_dependency_scopes:

No content with docs (no examples):

# The product name of this project, as specified within the DejaCode application.
product_name:

# The product version of this project, as specified within the DejaCode application.
product_version:

# Provide one or more path patterns to be ignored.
# Each pattern should follow the syntax of Unix shell-style wildcards:
# - Use ``*`` to match multiple characters.
# - Use ``?`` to match a single character.
ignored_patterns:

# Specify certain dependency scopes to be ignored for a given package type.
ignored_dependency_scopes:

Commented with concrete examples:

#product_name: My Product Name
#product_version: '1.0'

#ignored_patterns:
#  - '*.tmp'
#  - 'tests/*'

#ignored_dependency_scopes:
# - package_type: npm
#   scope: devDependencies
# - package_type: pypi
#   scope: tests

Commented with concrete examples and inline docs:

# The product name of this project, as specified within the DejaCode application.
#product_name: My Product Name

# The product version of this project, as specified within the DejaCode application.
#product_version: '1.0'

# Provide one or more path patterns to be ignored.
# Each pattern should follow the syntax of Unix shell-style wildcards:
# - Use ``*`` to match multiple characters.
# - Use ``?`` to match a single character.
#ignored_patterns:
#  - '*.tmp'
#  - 'tests/*'

# Specify certain dependency scopes to be ignored for a given package type.
#ignored_dependency_scopes:
# - package_type: npm
#   scope: devDependencies
# - package_type: pypi
#   scope: tests

Commented with concrete examples and inline docs:

this is the best IMHO


Transfer ownership of Discord.js Documentation

Details

Project URL: http://discordjs.readthedocs.io/en/latest/index.html
Read the Docs username (if applicable): hydrabolt

Hello, I'm the maintainer of the discord.js project and a while back, we used to use readthedocs to write our documentation. We then switched to using JSDoc for our code, but we're again thinking of switching back to readthedocs to maybe write some guides and tips for users.
In this time period, user @Macdja38 used the documentation site to host documentation for his fork of our project, which seems to only be in use by himself (at this moment in time). I've asked him multiple times to rename the site or move the documentation elsewhere because it is confusing our users who stumble onto the old documentation and then ask for support using the old documentation in our support server; looking at my chat history with him, it seems the first time I've asked him to make a change was the 21st April.
While he has made some effort to point users to the new documentation, his redirect links only work on the homepage, so it's not much use.
I believe I have tried to be cooperative with macdja and I've been asking him for several months to consider renaming the project so we can reclaim the project URL for the official development of discord.js, but it seems like this is not going to happen. I'd like to point out that my copyright is also on the bottom of the current readthedocs documentation.
If you could help, I'd like a transfer of the http://discordjs.readthedocs.io/ project's ownership to myself so we can put it to better use and also back to the library's official developers' hands.
Thanks

Any update on this?

@hydrabolt Can you go through the DCMA takedown policy?
https://docs.readthedocs.io/en/latest/dmca/index.html

Hello readthedocs team,
I certainly do not want to be the booman and call out a sloppy way of handling this issue, but looking at the date of this issue and follow-up email conversations, which are all available if needed, I have to ask myself: does it even matter?
We followed the procedure inquired and filled out a DMCA takedown to the old doc site (http://discordjs.readthedocs.io/en/latest/) which WE (the maintainers of the project) do not have access to in any kind of way. You state as follows:

The author of the content in question will be asked to make changes to the content specified in the takedown request. The author will have 24 hours to make these changes. The copyright holder will be notified if and when this process begins

Additionally:

The author must notify Read the Docs that changes have been made within 24 hours of receiving a takedown request. If the author does not respond to this request, the default action will be to disable the Read the Docs project and remove any hosted versions

We waited a solid 2 months before sending another email asking what the status to the takedown is. The only response we got was: "We are still waiting for contact and resolution here [...]"
Now I have to ask, what are we waiting on? The DMCA takedown policy clearly states 24 hours. This is an issue that has been dragging on for over 2 months.
Adding to that there has even been another issue created #3133 that is referring to our doc site, hosted by your service, which we have no control over. In this issue you linked (http://docs.readthedocs.io/en/latest/abandoned-projects.html) the article to abandoned projects which states as follows:

Owner is unreachable (see Reachability)
The project has no proper documentation being served (no successful builds) or does not have any releases within the past twelve months
No activity from the owner on the project’s home page (or no home page found).

Now I do agree that the second point mentioned might not be entirely true, since there are docs hosted on it, but they are majorly outdated for a version we the maintainers do not support anymore. We have no access to the docs site, let me remind you of that fact. We cannot change it, we cannot take it down, we simply cannot do anything but watch how our users get access to documentation for our library, that is outdated by several months, via a simple Google search.
After 7 months of trying to reach the new author of our docs page and trying to resolve this issue, we are no further, so we decided to reach out to readthedocs to maybe get our issue resolved by a higher authority. But after issuing a DMCA takedown and two more months we are no further than we were before.
I would gladly engage into a conversation regarding this issue or even better just showing compliance to the DMCA takedown policy.
Thank you.

Does https://github.com/macdja38/discord.js/pull/8 solves the issue?
All the pages https://discordjs.readthedocs.io/en/latest/index.html now have this warning

No it doesn't.
The code in the branch he forked is not maintained anymore and will in most cases probably not even work anymore. Everything about this "branch" (which still resides in our repository btw, but then the docsite got snatched away from his fork) is not maintained anymore and potentially risky to use.
So no, we still would like to have full control over the docs site which is ours in the first place any way, and not some person who barely maintains a fork that is effectively harming is because he refuses to cooperate with us, but also with you. Again I would like you to look at the date of this issue, not to mention the emails that got sent forth and back between you, us the maintainers and the aggressor.
There's clear evidence that this is harmful behaviour and I for god knows do not understand how it is "impossible" to restore a docsite to the rightful owner of a project, compared to a fork.

ok, sorry for the late response. I think @humitos may help to clarify some things here.

Sorry for the slow response here. We currently don't have a policy in place that lets us take a project name away from an active user of that project on Read the Docs.
It sounds like we should have a policy in place, and from the research I've done, generally people will do this when the name in question is an owned trademark. That is the only way to really prove ownership, especially since we support multiple ecosystems with often conflicting namespaces. Do y'all have the name discord.js trademarked?

as neither of the two parties have filed for a trademark, they are under first-to-use trademark law, which means @hydrabolt holds the trademark as @macdja38's project and docs are a fork of @hydrabolt's work under the same name.

I think we're regressing here. We've already established that the user is not active and his project is not active.
I first emailed you guys in October, and I have been told 2 weeks ago that you guys are in the process of renaming the docs as suggested, an update on this would be nice.

I've already been in touch with everyone and we have a solution, I need to finalize the cutover this week.
the discordjs project is going to become discordjs-v8, as the project is named in the docs. discord the namespace will free up afterwards.

The https://discordjs.readthedocs.io project is deleted, can we close this issue?

Yep, sorry this has been resolved for a while now, will close


Version 0.7.1 mismatch with readme.md

The newest version installed by cocoapods is 0.7.1
According to readme.md Gen<T> should have method  fromElements(in:) but in fact there is only fromElementsIn().
Which also throws error No '...' candidates produce the expected contextual result type 'ClosedRange<R>'
let lowercaseChars = Gen<Character>.fromElementsIn("a"..."z")

Officially SwiftCheck is not available in cocoapods.
What's more, if you want to use ClosedRange<Characters> in fromElementsIn it should looks like
let lowercaseChars: Gen<Character> = Gen<Character>.fromElementsIn("a"..."z")

But I'm not sure why ilowercaseChars should be explicity Gen<Character>.

Cocoapods broke this repository every time I tried to migrate and push a new version. I'll check this afternoon and try again.

This explains your confusion too: I recently went through and refactored some prototypes to use labels and updated the README (but not your version in pods).  The README is correct, and the prototype you cite is formally deprecated.

I've switched to Carthage and it is working just fine 👍


fix invalid toc items

try to fix some toc yaml syntax errors

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

We're in the process of moving this commit to the private repository so we can use validation and staging to verify the proposed changes.

@OsmondJiang Private repo PR 71378 replaces this pull request. We moved the commit to the private repo so we can validate formatting changes by using automated validation and staging. We'll close this PR now.
Thank you for your contribution.


Cleanup stacktrace for panics

Purpose
$subject:
Current stacktrace:
error: {ballerina/http}ListenerStartupError message=failed to start server connector '<IP_ADDRESS>:8080': Address already in use cause=null
	at ballerina.http.$value$Listener:start(service_endpoint.bal:90)
	   ballerina.http.$value$Listener:__start(service_endpoint.bal:37)
	   ___init:..<init>(.:4)
	   ___init:..<init>(.:65535)

Updated stacktrace:
error: {ballerina/http}ListenerStartupError message=failed to start server connector '<IP_ADDRESS>:8080': Address already in use
	at ballerina.http.Listener:start(service_endpoint.bal:90)
	   ballerina.http.Listener:__start(service_endpoint.bal:37)
	   .<start>(.:4)

Fixes https://github.com/ballerina-platform/ballerina-lang/issues/17296
Check List

[x] Read the Contributing Guide
[ ] Required Balo version update
[ ] Updated Change Log
[ ] Checked Tooling Support (#)
[ ] Added necessary tests

[ ] Unit Tests
[ ] Spec Conformance Tests
[ ] Integration Tests
[ ] Ballerina By Example Tests

[ ] Increased Test Coverage
[ ] Added necessary documentation

[ ] API documentation
[ ] Module documentation in Module.md files
[ ] Ballerina By Examples

Codecov Report

Merging #17873 into master will increase coverage by 4.95%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master   #17873      +/-   ##
==========================================
+ Coverage   15.14%    20.1%   +4.95%
==========================================
  Files          46       51       +5
  Lines        1208     1328     +120
  Branches      189      209      +20
==========================================
+ Hits          183      267      +84
- Misses       1011     1047      +36
  Partials       14       14

Impacted Files
Coverage Δ

...s/vscode/src/project-tree-view/project-overview.ts
0% <0%> (ø)
:arrow_up:

composer/packages/tracing/src/ToolBar.tsx
71.05% <0%> (ø)

composer/packages/tracing/src/TraceList.tsx
94.44% <0%> (ø)

composer/packages/tracing/src/DetailView.tsx
79.31% <0%> (ø)

composer/packages/tracing/src/TraceLogs.tsx
70.83% <0%> (ø)

composer/packages/tracing/src/index.ts
0% <0%> (ø)

Continue to review full report at Codecov.

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


bundle viz fails with NoMethodError

After running bundle viz I get this:
/home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/graph.rb:38:in `block in _populate_relations': undefined method `runtime_dependencies' for nil:NilClass (NoMethodError)
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/2.1.0/set.rb:263:in `each_key'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/2.1.0/set.rb:263:in `each'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/graph.rb:37:in `_populate_relations'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/graph.rb:19:in `initialize'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/cli/viz.rb:11:in `new'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/cli/viz.rb:11:in `run'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/cli.rb:321:in `viz'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/vendor/thor/command.rb:27:in `run'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/vendor/thor/invocation.rb:121:in `invoke_command'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/vendor/thor.rb:363:in `dispatch'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/vendor/thor/base.rb:440:in `start'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/cli.rb:9:in `start'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/bin/bundle:20:in `block in <top (required)>'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/lib/bundler/friendly_errors.rb:5:in `with_friendly_errors'
	from /home/hauleth/.rbenv/versions/2.1.2/lib/ruby/gems/2.1.0/gems/bundler-1.7.3/bin/bundle:18:in `<top (required)>'
	from /home/hauleth/.rbenv/versions/2.1.2/bin/bundle:23:in `load'
	from /home/hauleth/.rbenv/versions/2.1.2/bin/bundle:23:in `<main>'

Any idea what is wrong?

I have this issue. I'm not quite sure I follow why this is happening, but is there a reliable workaround?

@aprescott Can you fill an issue ? It is the easiest way to have all requirements to reproduce it and possibly fix it.

My issue is basically exactly as described here, with potentially different versions. ruby 2.2.2p95, rubygems 2.4.6, bundler 1.9.5, rails 4.2.1. I can open another issue, though, if the duplication is fine. (I'd just be linking to this issue anyway.)

The file https://github.com/bundler/bundler/blob/master/ISSUES.md has specific instructions for what we need to know in order to try to reproduce your problem. Please read the file and follow the instructions.

On May 6, 2015, at 7:25 PM, Adam Prescott<EMAIL_ADDRESS>wrote:
My issue is basically exactly as described here, with potentially different versions. ruby 2.2.2p95, rubygems 2.4.6, bundler 1.9.5, rails 4.2.1. I can open another issue, though, if the duplication is fine. (I'd just be linking to this issue anyway.)
—
Reply to this email directly or view it on GitHub https://github.com/bundler/bundler/issues/3217#issuecomment-99561685.

Apologies for the noise. I dug into this some more and I can't provide more than what you already know with the commit linked in this issue. It's a similar problem with an rc1 pre-release dependency and dependency.to_spec returning nil within _populate_relations. Specifically, backbone-on-rails <IP_ADDRESS> using eco 1.0.0, which uses eco-source 1.1.0.rc.1 (whose to_spec returns nil).

I believe this is fixed now and can be closed.

just for the record and it may help someone. I had this output:
bundle viz                                                                                ✭
――― ERROR REPORT TEMPLATE ―――――――――――――――――――――――――――――――――――――――――――――――――――――――
- What did you do?
- What did you expect to happen?
- What happened instead?

Error details

    NoMethodError: undefined method `runtime_dependencies' for nil:NilClass
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/graph.rb:39:in `block in _populate_relations'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/2.2.0/set.rb:283:in `each_key'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/2.2.0/set.rb:283:in `each'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/graph.rb:38:in `_populate_relations'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/graph.rb:20:in `initialize'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/cli/viz.rb:11:in `new'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/cli/viz.rb:11:in `run'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/cli.rb:336:in `viz'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/vendor/thor/lib/thor.rb:359:in `dispatch'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/vendor/thor/lib/thor/base.rb:440:in `start'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/cli.rb:10:in `start'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/bin/bundle:20:in `block in <top (required)>'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/lib/bundler/friendly_errors.rb:7:in `with_friendly_errors'
    /Users/andwen/.rbenv/versions/2.2.2/lib/ruby/gems/2.2.0/gems/bundler-1.9.4/bin/bundle:18:in `<top (required)>'
    /Users/andwen/.rbenv/versions/2.2.2/bin/bundle:23:in `load'
    /Users/andwen/.rbenv/versions/2.2.2/bin/bundle:23:in `<main>'

Environment

    Bundler   1.9.4
    Rubygems  2.4.5
    Ruby      2.2.2p95 (2015-04-13 revision 50295) [x86_64-darwin14]
    GEM_HOME  /Users/andwen/project/sumcumo/ace/vendor/ruby/2.2.0
    GEM_PATH
    Git       2.4.5

Bundler settings

    path
      Set for your local app (/Users/andwen/project/sumcumo/ace/.bundle/config): "vendor"
    disable_shared_gems
      Set for your local app (/Users/andwen/project/sumcumo/ace/.bundle/config): "1"
    cache_all
      Set for your local app (/Users/andwen/project/sumcumo/ace/.bundle/config): "true"
――― TEMPLATE END ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

Unfortunately, an unexpected error occurred, and Bundler cannot continue.

First, try this link to see if there are any existing issue reports for this error:
https://github.com/bundler/bundler/search?q=undefined+method+%60runtime_dependencies%27+for+nil%3ANilClass&type=Issues

If there aren't any reports for this error yet, please create copy and paste the report template above into a new issue. Don't forget to anonymize any private data! The new issue form is located at:
https://github.com/bundler/bundler/issues/new

After upgrading to bundler 1.10.5, the problem was gone and the graphic was created.
Cheers
Andy