Help Please - Gyroscope or Accelerometer?

Hi everyone,
I am working on a charades-inspired game (just like Heads Up!) where the user tilts their phone down if they guess a word correctly or up to pass. I'm confused about which sensor will work best for this logic. I assume Gyroscope, since that measures rotational changes and I am looking to pull the next card only if the phone tilts up or down, however, when I added this into my code, the cards change sporadically.
Then, I tried Accelerometer but when I tilt my phone down, pretty much all the cards run up in a matter of seconds (I'm guessing because the motion is in the direction of gravity?). It could also be the z-values I have are not correct.
Any suggestions/help you can provide is greatly appreciated. Thank you!

The sensor gives you just the raw data, so just how fast you are tilting, not how much tilt you currently have. If you want to have a "look down" computation you need the values added up over time to see at which state in relative to the start you are. I personally get x,y,z confused all the time, so I would suggest doing the adding for all values separately and logging it to see which one changes the most.
Let me know if this works for you. I would really appreciate it if you could as soon as you found a solution write a tutorial into our docs :) I am sure it will help a lot of people!

Hi @DanielMSchmidt , thanks for responding! I think you might be onto something here, but I'd like to make sure I understand what you're suggesting.

If you want to have a "look down" computation you need the values added up over time to see at which state in relative to the start you are.

Can you please explain what you're thinking here a bit more? If the values are how fast the phone is tilting (so rates), how does the difference in rates tell me which state I am in? Wouldn't the result be a rate as well? What I'm trying to achieve with the logic is that the card displayed on the screen changes after the phone is tilted down, so would using the difference in values be inconsistent depending on how quickly or slowly a person tilts their phone? I could be misunderstanding.

Let me know if this works for you. I would really appreciate it if you could as soon as you found a solution write a tutorial into our docs :) I am sure it will help a lot of people!

Absolutely! I'd definitely share a solution if I find one :)


Support additional package names for plugins

Is your feature request related to a problem? Please describe.
Presently, the DataPrepper only loads plugins from the com.amazon.dataprepper.plugins Java package. We have found that we can add new plugins and make them part of DataPrepper by putting our customer plugins in that same package.
However, as plugin authors, we don't want to write almost all of our code in one Java package - com.myorg.project - and then put just the plugins into the com.amazon.dataprepper.plugins package.
Describe the solution you'd like
DataPrepper should be able to search other packages for plugins.
Provide a mechanism whereby a plugin author can write a plugin in any package name the plugin author desires.
Additional context
Copied from ODFE Data Prepper: https://github.com/opendistro-for-elasticsearch/data-prepper/issues/680

I propose solving this problem by use of a metadata file in the plugin jars. This will be especially useful after Data Prepper use a directory structure (#305).
The plugin framework will look for a file: META-INF/data-prepper.plugins.
This file will need to have the desired plugin package(s):
org.opensearch.dataprepper.plugin.packages=org.myorganization.mypluginpackage

It could even be a list of packages:
org.opensearch.dataprepper.plugin.packages=\
org.myorganization.mypluginpackage1,\
org.myorganization.mypluginpackage2


Update to 6.8.0

@conda-forge-admin please rerender

Hi! This is the friendly automated conda-forge-linting service.
I just wanted to let you know that I linted all conda-recipes in your PR (recipe/meta.yaml) and found it was in an excellent condition.

Hi! This is the friendly automated conda-forge-webservice.
I tried to rerender for you, but it looks like there was nothing to do.
This message was generated by GitHub actions workflow run https://github.com/conda-forge/conda-forge-webservices/actions/runs/11248843837.

@conda-forge-admin please rerender


After the Continue configuration is done, display a popup with instructions how to use the chat

After the Continue configuration is done, if the continue configuration contains several models, we need to display a popup with instructions how to use the chat, i.e. select our Model, since we have no control of that selection in Continue's chat webview

Fixed with #121


Recommended hardware requirements

Hi Steve,
I was just wondering if there's a recommended hardware requirements for deploying the docker container?
I used Amazon EC2 t2.large and the memory seems to be pegged at around 150%-200% consistently. Also, the reports takes about 30 mins after the Jenkins jobs finished before showing up on Dependency Track.
Thanks,
Adeline

Yes, metrics. Looking forward to the new version. Thanks so much for the prompt response!


missing image in footer

as attached

https://www.sleepbus.org/images/ACNC-Registered-Charity-Logo_reverse_300.png

was missing from master branch only. resolved


Support display of available video tracks as options and to swap among them

The PR hosts the code changes to support the following:

Display available video tracks as a drop-down under the video , track names will be displayed in the drop-down.

User can swap between video tracks by clicking on the track name in the dropdown , the video track will be changed without page refresh.

Subscribe to a particular track by appending the track in the URL or selecting a track from the dropdown list.
- The current way to subscribe to a namespace , this would default subscribe to the first video track along with audio track
https://SERVERIP:4321/watch/bbb?server=SERVERIP:4443
       - To subscribe to a specfic track , append the track number at the end of the URL as below:
          https://SERVERIP:4321/watch/bbb?server=SERVERIP:4443**_&track=1_** [ Track number start from 0 ]

Tracks selected would be retained on page-reload.

Send unsubscribe request for a particular track to moq-relay.

When a new track is selected from the drop down , unsubscribe is sent to moq-relay for the current track and subscribe is sent to the selected track.
As of now relay responds with a code 1(SUBSRIBE_ERROR) , cancelled to an unsubscribe request from moq-js , need to explore moq-rs on the same , to send the appropriate response.

During UT an error was encountered wherein VideoDecoder expects a key frame immediately after a configure() or flush() for a avc , changes were done to wait for keyframe after a configure , before the first call to decode.

Due to this initial wait for key frame , at times it takes few seconds for the video playback to start , we need to explore if there are any alternate way to make VideoDecoder not demand a key frame immediately after a configure() or flush()

UT
https://github.com/user-attachments/assets/03d91b20-d6e1-4dfa-a65b-20478ad4dfe8


Help

I'm getting this error over and over, i reinstalled the whole project 2 times but the module is still missing. i have no idea how to solve this so can someone please help me?

Tried pip install -r requirements.txt ?


Overlay unusable with Hardware Acceleration enabled

OS: Windows 10 x64
CPU: AMD Ryzen 5 2600 @ 3,4Ghz
GPU: Radeon RX 580 8GB
RAM: 16GB
Resolution Screen 1: 2560x1440 (PoE runs on this)
Resolution Screen 2: 1920x1080
After I first installed PoE Overlay everything was working fine until I tried Ctrl+d. The overlay popped up extremely slowly and was unresponsive. The focus would often stay on the game allowing me to move while the overlay was up. Occasionally I managed to get a response from the overlay after many seconds of waiting.
Disabling Hardware Acceleration fixed all the issues.

Hi, thanks for creating an issue. Please see following explanation:

Hardware acceleration may causes issues because the chrome version may not be compatible with the used hardware/ drivers. As there are finite possibilities of hardware/ drivers etc. the easiest way to solve this is by disabling the hardware acceleration. Another user with this problem disabled for example NVIDIA G-Sync to resolve his issues.

Glad you got it working. I'll close this issue for now. Feel free to reopen if needed.


Amazon Personalize User Segmentation - Required Updates

For the user segmentation Personalize example (see: https://github.com/aws-samples/amazon-personalize-samples/blob/master/next_steps/core_use_cases/user_segmentation/user_segmentation_example.ipynb) there are several outstanding issues preventing the notebook from being run successfully as-written.

The current Prime Pantry dataset links are dead and must be updated to the latest links provided by UCSD.

In the first cell of the "Load review data and build interaction dataset" section, reading the JSON into a DataFrame reliably causes Kernel Panic (reproduced 3/3 times on an m5d.xlarge instance), believed to be due to overwhelming the memory available. One solution is to load the dataset into a list of chunked smaller DataFrames then concatenate them once the dataset is fully loaded.

The first cell of the "Get the Personalize API model Json and Personalize Boto3 Client" section references the downloading of a private Amazon internal file external users will not have access to that manually adds Personalize as an available service in the CLI and is not required or runnable. This must be removed.

The entire historical dataset from 2000-08-09 to 2018-10-05 with approximately 1.7 million interactions is used for training the model (minus the 5% holdout for testing). Due to the size of this training dataset in number of users and interactions the resulting training of the Solution and Batch Segment jobs are more expensive than most customers will be comfortable with for a demo. The dataset size must be reduced to prevent an unpleasant billing surprise to customers.

Update 1 - added 4th issue related to dataset size after reviewing Personalize cost of running through the demo in entirety.


ErrorException at http://demo.mage2.website/checkout

Hello, I just want to report an exception in you demo at http://demo.mage2.website/checkout. It throws an exception when I click the Checkout option:
ErrorException in a291b517d72834e382dd0d2b9c90edae4c8de36a.php line 258: Invalid argument supplied for foreach() (View: /var/www/demo/modules/base/Mage2/Checkout/views/checkout/new-index.blade.php)

PS: Great work. I will try out install it.
AugustoSL

This bug should be fixed too. Thanks again for raising the issue.


Update ip-per-container.md

add clarification about why the 6 bits used for containerID are divided into two groups of 5 bits, one for Mesos and the other for Docker containers

@fernandosanchezmunoz I incorporated your edit here: https://github.com/dcos/dcos-docs/pull/569


push communication-rooms recordings

fix https://github.com/Azure/azure-sdk-for-js/issues/28656

API change check
API changes are not detected in this pull request.


Proposal: more lenient subscript methods over Collections

swift-evolution thread:

https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160509/017488.html
discussion since the first draft:

https://lists.swift.org/pipermail/swift-evolution/Week-of-Mon-20160411/014676.html
gmane

Rendered Markdown

@luish The update of your proposal to Swift 3 turned out really nice!
Please find below just a couple of suggestions, if you will.
Cheers!
extension Collection where Index: Comparable {

    subscript(clamping bounds: Range<Index>) -> SubSequence {
        let clamped = bounds.clamped(to: startIndex ..< endIndex) // SUGGESTION: remove parens around range argument
        return self[clamped]
    }

    subscript(clamping bounds: ClosedRange<Index>) -> SubSequence {
        let range = bounds.lowerBound ..< index(bounds.upperBound, offsetBy: 1)
        let clamped = range.clamped(to: startIndex ..< endIndex) // SUGGESTION: remove parens around range argument
        return self[clamped]
    }

    subscript(checking bounds: Range<Index>) -> SubSequence? {
        let range = startIndex ... endIndex  // SUGGESTION: rename `indice' to `range'
        return range.contains(bounds.lowerBound) && range.contains(bounds.upperBound) ? self[bounds] : nil
    }

}

Done, @adrfer! Cheers!! 👍

On alternatives:

throwable alternative is described in this proposal: https://github.com/apple/swift-evolution/pull/218
stackoverflow most popular answer to this issue is using the subscript name safe: https://stackoverflow.com/a/30593673/1033581

I'm closing out PRs for proposals that are out of scope for Swift 4 stage 1. When we open up the process to the point where this proposal can be in scope, please re-open the pull request.


[Bug]: AWS SSO via credential_process not supported

Steps to Reproduce

Configure AWS profile with credential_process (using a tool like Granted

$ cat ~/.aws/config
[profile My-Account/SuperUser]
granted_sso_start_url      = https://example.awsapps.com/start/
granted_sso_region         = us-east-1
granted_sso_account_id     =<PHONE_NUMBER>66
granted_sso_role_name      = SuperUser
common_fate_generated_from = aws-sso
credential_process         = granted credential-process --profile My-Account/SuperUser

Attempt an operation with a step* binary using AWSKMS:

step-kms-plugin:
$ step kms create --json --kms 'awskms:region=us-east-1' step-ca-test
Error: failed to create key: awskms CreateKeyWithContext failed: NoCredentialProviders: no valid providers in chain. Deprecated.
	For verbose messaging see aws.Config.CredentialsChainVerboseErrors
exit status 1

step certificate create (pre-created KMS key):
$ step certificate create --profile root-ca \
   --kms 'awskms:region=us-east-1' \
   --key 'awskms:key-id=1234567-abcd-1234-dcba-1234567890' \
   "Smallstep Root CA" root_ca.crt

failed to get public key: command "/Users/gralaw/bin/step-kms-plugin key --kms awskms:region=us-east-1 awskms:key-id=f60e6f04-ea3f-4984-b4e6-c2f3f7279d12" failed with:
Error: open awskms:key-id=f60e6f04-ea3f-4984-b4e6-c2f3f7279d12: awskms GetPublicKeyWithContext failed: NoCredentialProviders: no valid providers in chain. Deprecated.
	For verbose messaging see aws.Config.CredentialsChainVerboseErrors

WORKAROUND: manually export STS session credentials from credential_process:

$ granted credential-process --profile My-Account/SuperUser
{"Version":1,"AccessKeyId":"AKIAIOSFODNN7EXAMPLE","SecretAccessKey":"wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY","SessionToken":"AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtpZ3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE","Expiration":"2024-01-12T04:57:27-05:00"}

$ export AWS_ACCESS_KEY_ID="AKIAIOSFODNN7EXAMPLE"
$ export AWS_SECRET_ACCESS_KEY="wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY"
$ export AWS_SESSION_TOKEN="AQoEXAMPLEH4aoAH0gNCAPyJxz4BlCFFxWNE1OPTgk5TthT+FvwqnKwRcOIfrRh3c/LTo6UDdyJwOOvEVPvLXCrrrUtdnniCEXAMPLE/IvU1dYUg2RVAJBanLiHb4IgRmpRV3zrkuWJOgQs8IZZaIv2BXIa2R4OlgkBN9bkUDNCJiBeb/AXlzBBko7b15fjrBs2+cTQtpZ3CYWFXG8C5zqx37wnOE49mRl/+OtkIKGO7fAE"

$ step kms create --json --kms 'awskms:region=us-east-1' step-ca-test
{
  "name": "awskms:key-id=1234567-abcd-1234-dcba-1234567890",
  "publicKey": "-----BEGIN PUBLIC KEY-----\nMFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAE3b1V3/ikBR/pmFI7xFJ4pEKGwS+rpOw7//pveoHgx/FVwuAaOaVcw/PlThZb7/jircsnrugsr7wpjolyVAUHsw==\n-----END PUBLIC KEY-----\n"
}

NOTE: Examples are derived from actual command runs, but all values/IDs replaced with example values for security.
Your Environment

OS - macOS Sonoma 14.1.2 (23B92)
Version:

$ step --version
Smallstep CLI/0.25.1 (darwin/arm64)
Release Date: 2023-11-29 09:17 UTC

$ step-kms-plugin version
🔐 step-kms-plugin/0.9.2 (darwin/arm64)
   Release Date: 2023-11-10T22:20:48Z

Expected Behavior
Step should support AWS SSO credentials configured by credential_process in addition to the normal AWS SSO workflow (aws sso login).
Actual Behavior
See reproduction for full details.  AWS Go SDK returns NoCredentialProviders error.
Additional Context
AWS Go SDK v2 supports this via: https://docs.aws.amazon.com/sdk-for-go/api/aws/credentials/processcreds/
Contributing
Vote on this issue by adding a 👍 reaction.
To contribute a fix for this issue, leave a comment (and link to your pull request, if you've opened one already).

Hi, @gclawes, I moved the issue to the step-km-plugin so it can be fixed with a new version of crypto once https://github.com/smallstep/crypto/pull/408 gets merged and tagged.

This issue is now fixed in the main branch.
Note that if you have more than one profile in ~/.aws/config you will need to select the right one like this `step kms create --json 'awskms:profile=foo;name=my-key'

@maraino tools like Granted set the AWS_PROFILE environment variable, will that work as an alternative to  'awskms:profile=foo;...?

@maraino tools like Granted set the AWS_PROFILE environment variable, will that work as an alternative to 'awskms:profile=foo;...?

Yes, that works.


Correct tags for the divertor monoblock model

Reason

The tags are incorrect or not defined
Design

Change name tag  from "SAM Generic PBR Model" to "Divertor Monoblock"
Add image tag
Add description tag

Impact

Improved rendering of the model in the search engine

this is fixed already,just need the website to update

Ok I missed that. Thanks!


feat: require Drawbridge username to match OIDC nickname

This is an alternative/follow-up on #306, where there is an added requirement: the Drawbridge username has to match the OIDC nickname claim (which by GitHub is set to be identical to their GitHub username).
However, this does not prevent people using other users they are mentioned in.
This still allows for vanity/company names to be created on Drawbridge by administrators, and then managed by users via the normal APIs, it just prevents those users from getting created by normal users.
A future improvement could be to add an admin API, or allow certain OIDC subjects to create usernames that are not themselves.

This should wait for https://github.com/profianinc/drawbridge/pull/312, but is otherwise done.

With the latest change, this becomes a bit more tricky (due to us no longer getting the userinfo at this moment).
If we still want to add this restriction, I can fix this, but I don't think it's required at this point.


User Management for public interface

It would be nice to have an user management script built in yourls so they can do what they want with their links, just like the admin panel but the users should be only able to do actions with their own links.

Please, search before... #1255


AQL query editor uses _system database

my environment running ArangoDB

[ x ] self-compiled devel branch

this is a web interface-related issue:
I'm using the web interface with this browser: Firefox    running on this OS: Ubuntu Linux

[ x ] authentication is enabled?

These are the steps to reproduce:

open the browser on http://<IP_ADDRESS>:8529
log in as root
use database [ ] _system [ x ] other: any other than _system
click to "Queries"
issue the following query in the AQL query editor FOR i IN 1..2000 RETURN i

Inspecting the network traffic executed for this query, one can see that the original query request correctly goes to http://<IP_ADDRESS>:8529/_db//_api/cursor
However, when the web interface tries to delete the cursor on the server, it sends a request to http://<IP_ADDRESS>:8529/_api/cursor/, which is lacking the correct database name.
Thus deleting the cursor fails for all queries executed outside the _system database.
Fix: prefix URL correctly with database name.

Fixed in 3.0.9 and devel.

3.0.10 is available for download now.


Build step hangs at "Checking validity of types .."

Describe the bug
When I run yarn build (or npm run build) on a newly cloned repository, the build process hangs at info - Checking validity of types ... This stops me from deploying the solution to Vercel or any other host.
To Reproduce
Steps to reproduce the behavior:

npx degit timlrx/tailwind-nextjs-starter-blog#typescript
yarn install
yarn build

Expected behavior
The site should build without hanging.
Terminal output
darbio@192-168-1-110 test % npx degit timlrx/tailwind-nextjs-starter-blog#typescript
> cloned timlrx/tailwind-nextjs-starter-blog#typescript
darbio@192-168-1-110 test % yarn install
yarn install v1.22.17
warning ../../../package.json: No license field
info No lockfile found.
warning package-lock.json found. Your project contains lock files generated by tools other than Yarn. It is advised not to mix package managers in order to avoid resolution inconsistencies caused by unsynchronized lock files. To clear this warning, remove package-lock.json.
[1/4] 🔍  Resolving packages...
info There appears to be trouble with your network connection. Retrying...
warning @mailchimp/mailchimp_marketing ><EMAIL_ADDRESS>Please upgrade to v7.0.2+ of superagent.  We have fixed numerous issues with streams, form-data, attach(), filesystem errors not bubbling up (ENOENT on attach()), and all tests are now passing.  See the releases tab for more information at <https://github.com/visionmedia/superagent/releases>.
warning @mailchimp/mailchimp_marketing > superagent ><EMAIL_ADDRESS>Please upgrade to latest, formidable@v2 or formidable@v3! Check these notes: https://bit.ly/2ZEqIau
[2/4] 🚚  Fetching packages...
[3/4] 🔗  Linking dependencies...
warning " ><EMAIL_ADDRESS>has unmet peer dependency<EMAIL_ADDRESS>|| ^5.0.0".
[4/4] 🔨  Building fresh packages...
success Saved lockfile.
$ husky install
husky - not a Git repository, skipping hooks installation
✨  Done in 199.79s.
darbio@192-168-1-110 test % yarn build
yarn run v1.22.17
warning ../../../package.json: No license field
$ next build && node ./scripts/generate-sitemap
info  - Checking validity of types ..

Same here, replicated with a fresh install.

Try using npm

I tested and found pnpm met the same problem, npm can run flawlessly.
But I would be happy to see support for pnpm + Typescript, it saves time and storage.

Update: pnpm seemed to be working fine after updated to 6.32.x
TypeScript check no longer hangs

I have created a blog application with next-mdx-remote. It (would) works fine, but...
Just, I have utilized a function from this repository, namely remark-code-title.ts file which is the exact same as https://github.com/timlrx/tailwind-nextjs-starter-blog/blob/master/lib/remark-code-title.js. I needed to change the file extension as ts since I am working typescript environment.
When I import this file as a Remark plugin in my application in local, build step hangs at "Checking validity of types in my local, and even in the Vercel build.
I had made many changes in my application, when it hanged, It was really dificult to find the bug, then I found the problem is remark-code-title.ts file.

What I did to overcome the problem that I depicted above:

Uninstall nodejs completely (I had installed it via homebrew before)
Install nodejs v16.14.2 via nvm
delete node_modules and package-lock.json
add typescript to package.json as devDependencies without ^
I mean "typescript": "4.6.3"
npm install in order to install all packages again
Now it is okey.  I use remark-code-title.js file as a remark plugin. I don't see any hang issue in my local and in vercel.


Figure out home page routing for subdomains

In next.config.js I've added some rewrite rules to handle subdomains.  The desired outcome is:
Source: https://ironwood.yoursite.church/
Destination: https://yoursite.church/ironwood/
Source: https://ironwood.yoursite.church/some-page
Destination: https://yoursite.church/ironwood/some-page
I can get all pages to work except for the home page.  Right now this will work:
http://ironwood.localhost:3000/some-page
http://ironwood.localhost:3000/ironwood
It's the second rule doing this.  The first rule doesn't work at all.  We need to get that first rule (home page) working.  Once it does, just update the destination on the second rule to "/:subdomain/:path" for all subpages to work.

Let's hold off on this.  Vercel doesn't accept the wildcard domains.  I think this is going to have to be done Cloudfront instead


[Visual Requirements - Sample> Product Video]: Luminosity ratio of selected "Download" and "Picture in Picture" menu-item border with respect to background color is 1.32:1 which is less than 3:1.

https://microsoft.visualstudio.com/OS/_workitems/edit/30959012

This issue is not repro, hence closing this issue.


Add lifecycle to POD under test

signed-off-by: salah hamadi<EMAIL_ADDRESS>

@jun-rh please merge this again. When I merged David's changes, my modification was overwritten.


Update nestedcontent.css to fix #48

removed 30% width for label

Why?

Sorry, just realized you referenced #48 in the title :)

@dipeshhirani Thanks for the PR, sorry it took so long to merge it in.


Skip existing files when transferring

Is your feature request related to a problem? Please describe.
When I transfer a large number of files, some file transfers may fail, I would choose to re-transfer them all directly, but all files will be retransferred
Describe the solution you'd like
Maybe the files already existing should be automatically skipped
Describe alternatives you've considered
No response
Additional context
No response

+1. If I am transferring a directory with more than 500 files there is a roughly 50% chance the transfer will fail and I have to start over. If it’s more than 1500 files, it’s pretty much a 100% chance the transfer will fail. “Skip existing files” would be huge.

+1
This is definitely a needed featature


RenameFolders

Description of the new feature / enhancement
Allowing to rename folders
Scenario when this would be used?
same like file rename
Supporting information
No response

PowerRename works on files and folders.
Might be related to #22196 and/or #20065 ?


Use null stream in tests to reduce verbosity

In tests for parsing command line, instead of using System.err or System.out we should start using a print stream that does nothing. This will help to reduce the log file in travis and in the command line.

Closed by #168


OCTO-2088: Implement multiple testing correction in ExpAn

Bonferroni correction for confidence intervals. For more explanations please refer to OCTO-2088.

Coverage decreased (-0.07%) to 91.888% when pulling cc5d82ffbec047bb251a9e4e5ce1b899d6c23613 on daryaded_expan into f1045d59fe80c9a058c80d0e657391236ca2ba7b on dev.

unit tests will be added shortly

Coverage decreased (-0.07%) to 91.888% when pulling a03f5fc6ed96de8c8f3db57fcbcf727bb95adb56 on daryaded_expan into f1045d59fe80c9a058c80d0e657391236ca2ba7b on dev.

Coverage decreased (-0.08%) to 91.876% when pulling 0666e822696a1cb352a69546e43647206066b387 on daryaded_expan into f1045d59fe80c9a058c80d0e657391236ca2ba7b on dev.

Coverage decreased (-0.08%) to 91.876% when pulling 19a2487837869605ca087c3418ea8a50740a9e4c on daryaded_expan into f1045d59fe80c9a058c80d0e657391236ca2ba7b on dev.

Coverage decreased (-0.08%) to 91.876% when pulling ad0d3a26f00c91fee3527fc7070cff8e82482678 on daryaded_expan into f1045d59fe80c9a058c80d0e657391236ca2ba7b on dev.

I merged this pull request due to no other comments.


Automated cherry pick of #8884: fix(region): compatible aliyun fin oss

Cherry pick of #8884 on release/3.5.
#8884: fix(region): compatible aliyun fin oss

/lgtm
/approve


Tracklytics new feature propositions

No tracker implementations

Implementation should be up to the client, there are many different trackers and each can be used differently.
Remove fabric and mixpanel
Provide more flexible public interface for clients to be able to add any tracker they want easily. (Current implementation is good enough though). Signature can be a little different.

Attribute
Scope: Method, Parameter
Use Attribute to add attributes with dynamic values. There are 2 ways to set this value.

A return value from the method
Method parameter which is passed via method.

Both option accepts null
@Attribute("key") String someMethod(){
   return "value";
}

void someMethod(@Attribute("key") String value){
}

@Attribute("key1") void someMethod(@Attribute("key2") String value1){
   return "value2"
}

Attribute also has a default value option. When the expected value is null, default value will be used
@Attribute(value = "key", defaultValue="value") String someMethod(){
   return null";
}

FixedAttribute
Scope: Class, Method
Use it to add fixed values for the attributes
@FixedAttribute(key="Screen Name", value="Login")
public class LoginActivity {

  @FixedAttribute(key="key", value="value") public void foo(){
  }
}

FixedAttributes
Scope: Class, Method
Use it to add multiple attributes at once. Java 7 or lower API's don't support repeated annotations.
@FixedAttributes({
  @FixedAttribute(key="key1", value="value1"),
  @FixedAttribute(key="key2", value="value2")
})
public void foo(){
}

Super attributes
Sometimes, you may need to have an application scope attribute and you may want to have this attribute for each event.
Attribute and FixedAttribute have an option to make the attribute super. As default it is false, thereby enabling this flag will make the attribute super and it will kept in memory in entire time.
@Attribute(key="key", isSuper=true)
//or
@FixedAttribute(key="key", value="value", isSuper=true)

Deprecated

Track

Added in 1.0.0


Login customisation

I am using example 7 and want to allow registration only via the “Sign up a new tenant” option, not through the standard ASP.NET library.
Additionally, I would like to adjust the standard registration routine so that, when people try to access it, they are always redirected to the login page, and I would also like to hide the register button on the login page. Since the login and register pages were not present in the project, I added them using the following command:
dotnet aspnet-codegenerator identity -dc ApplicationDbContext --files "Account.Register;Account.Login;Account.ResetPassword"
The issue I’m facing now is that no matter what I modify, the application still doesn’t use the pages I customized. Instead, it keeps using the default ones that were already in place. How can I ensure that my application uses my pages and follows my custom routines

Hi @Viktor-Mihalenko,
I have never used the dotnet aspnet-codegenerator so I can't comment on that.
I should say that the AuthP library doesn't have any ASP.NET Core frontend features, e.g. pages, logins, etc. apart from AuthP code in "Sign up for a new tenant" and the "Invite new user feature" features. Both of these features uses AuthP's Add New User adapter to work with different types of logins.
You might find the article Three ways to securely add new users to an application using the AuthP library which shows different ways for a new user can register to an AuthP app.
I would also suggest you try things out on Example3 as its the simplest multi-tenant applications first.


Top navigation bar is colliding with Notiifcation Area on Pixel 4a 5g - CalyxOS, even after 0.6.2 update

Finally updated to the 0.6 line of updates, and am having collisions with the top of LMS and my phone's Notification Area. I updated to 0.6.2 to see if that would fix the problem, but no dice. I'm only able to access Volume/Info/Menu by pressing right at the bottom of the respective areas. The collision also is causing the player icons to be completely covered by my phone's camera cutout (it's quite comical, actually).
Info: App 0.6.2
Phone: Pixel 4a 5g
Os: Calyx OS 5.9.0
Android Version: 14
LMS Material: 5.2.1
Screenshot included. Camera notch not included (use your imagination 😉)
Will gladly provide other info/test things if needed
Edit: Also, forgot to mention. I'm on the latest version of the Material Skin, and "Fullscreen" is set to "OFF" in Applications Settings.

I was browsing the Lyrion Forums, and happened upon this response from you to someone else. Is this the same issue I'm seeing? If so, then ignore this issue, since it seems you're aware. Also, in the future, do you prefer Github Issues or Forum responses for letting you know about bugs more?
https://forums.slimdevices.com/forum/user-forums/3rd-party-software/106269-announce-material-skin?p=1721048#post1721048

I actually prefer issues here, as it groups the info together - plus less chance of it being forgotten! However, posting on the forum is fine - I read it often. Feel free to post links on forum to here, and vice versa.


DRILL-7701: EVF V2 Scan Framework

DRILL-7701: EVF V2 Scan Framework
Description
Revises the scan framework to use the revised schema resolution introduced in DRILL-7696.
In EVF, the scan has three layers:

The operator layer which handles the Volcano-style iterator RecordBatch API.
The scan framework (this PR) which handles the details of schema, building batches, populating implicit columns, filling in missing columns and so on.
The schema resolution mechanism (DRILL-7696) which figures out projection, column names, etc.

By splitting the scan into these layers, it turns out to be easier to upgrade one layer without making wholesale changes to others.
In this PR, the ad-hoc classes of EVF V1 are renamed and restructured into a few simple concepts:

A scan builder, as in EVF V1.
The scan lifecycle that coordinates work across readers (like the former ScanSchemaOrchestrator)
A reader lifecycle which, along with the SchemaNegotiator, does all the "back office" setup and book-keeping for the reader.
A number of helper classes to handle things like implicit columns, missing columns, and so on.

This version learns from V1 to reduce the reader from three to two operations. The open() call of the V1 reader is merged into the constructor for V2. This allows many more reader fields to be declared final and should further simplify readers.
As in V1, the lifecycle comes in two "versions" a base "scan" version which is agnostic about the data source, and a "file" version which adds support for the DrillFileSystem and implicit columns.
At present, no code uses V2; future PRs will switch existing readers over to this version one by one.
Code is in the v3 package. The goal is to eventually replace existing code and move the code here up a level to eliminate the "v3" naming.
Documentation
No user-visible changes (except that described in DRILL-7696.)
Developers will need to be aware of the slight differences to build a reader using V2 EVF vs. V1. Those details will appear in the first PR that performs a conversion. Extensive Javadoc appears in the code.
Testing
Added new unit tests to parallel (and eventually replace) those for the V1 framework. Reran all unit tests to ensure no regressions.

The "Run checkstyle" says it failed, but the logs say it succeeded. There is some noise about a cache issue at the end:
2020-04-19T06:23:26.3640834Z [INFO] BUILD SUCCESS
2020-04-19T06:23:26.6763662Z Post job cleanup.
2020-04-19T06:23:27.0378284Z Cache hit occurred on the primary key Linux-mysql, not saving cache.
2020-04-19T06:23:31.9539889Z Post job cleanup.
2020-04-19T06:23:32.0119974Z Cache hit occurred on the primary key Linux-maven-718e2ef8e71b6018590d5853d57ac011477249339160e3843beeeb9cc88a2ecd, not saving cache.
2020-04-19T06:23:32.0233683Z Post job cleanup.

@paul-rogers, build failed due to this issue:
[WARNING] Missing header in: /home/runner/work/drill/drill/exec/java-exec/src/main/java/org/apache/drill/exec/physical/impl/scan/v3/file/FileSchemaNegotiatorImpl.java

+1, please fix check style issue and commit.

@vvysotskyi, thanks for pointing my silly mistake. Two questions. First, why did the build claim to succeed if the header is missing? Second, what option do I have to turn on to check headers in my own builds? Evidently mvn clean install runs check-style but not the header checks.

@paul-rogers, yes regular build will succeed if license headers are incorrect. I think it was done to speed up the build since usually, there are no new classes are introduced.
To run a check for license headers, please either add two properties to build command: mvn clean install -Drat.skip=false -Dlicense.skip=false or run trigger plugin goal: mvn license:check -Dlicense.skip=false.
For details please refer to this doc: https://github.com/apache/drill/blob/master/docs/dev/LicenseHeaders.md.

@vvysotskyi, thanks! I've added the magic flags to my full build script so I can catch the issues before PR.
You are right; I now recall we did remove (or postpone) the checkstyle and license checks. Before, if working fast on figuring out a solution, time would be lost as builds would fail for work-in-progress code. The checkstyle checks are now done after the test run, which is very helpful. I wonder, can the license checks be run at that time also?

Squashed commits.

I think the checkstyle checks are applied for regular build without tests.


test: Cypress - added tags - @tag.Settings

Description

Added tags

cypress/e2e/Regression/ClientSide/UserProfile/ - @tag.Settings
cypress/e2e/Regression/ClientSide/VisualTests/ - @tag.Settings
cypress/e2e/Regression/ClientSide/Walkthrough/ - @tag.Binding

Type of change

Chore (housekeeping or task changes that don't impact user perception)

Testing

/ok-to-test<EMAIL_ADDRESS>@tag.Binding"

How Has This Been Tested?

[ ] Manual
[ ] Cypress

Checklist:
Dev activity

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] PR is being merged under a feature flag

QA activity:

[ ] Speedbreak features have been covered
[ ] Test plan covers all impacted features and areas of interest
[ ] Test plan has been peer reviewed by project stakeholders and other QA members
[ ] Manually tested functionality on DP
[ ] We had an implementation alignment call with stakeholders post QA Round 2
[ ] Cypress test cases have been added and approved by SDET/manual QA
[ ] Added Test Plan Approved label after Cypress tests were reviewed
[ ] Added Test Plan Approved label after JUnit tests were reviewed

Summary by CodeRabbit

Tests

Enhanced the "Update User Picture" end-to-end test to include checks for "Remove" text and file upload functionality.
Introduced a new test case to handle and validate error messages for invalid file uploads.
Updated the "Update User's Name" test suite with a settings tag for better categorization.

/ok-to-test<EMAIL_ADDRESS>@tag.Binding"


Checklist release review

Review for release
Readiness

[x] One or more scenarios for a design pattern have been identified as a
useful unit of functionality to publish.
[x] A functioning component or components delivering those scenarios have been
delivered and merged to main.
[x] The component or components have completed an
accessibility review. #4363
[x] One or more design maintainers have approved the implementation for those
scenarios, preferably via
design review.

Engineering review

[x] Breaking changes have only been introduced with prior approval, discussion
and are documented in release notes. Deprecation notices and/or feature
flags are included in the prior major version.
[x] The implementation takes into account, and does not impair, remaining and
anticipated design scenarios.
[ ] Public component features (names, props, etc) are consistent with
Carbon-defined conventions and are consistent internally. Where there
isn’t an existing convention to apply, ensure robust precedents are being
established.
[x] The UI produced is

[x] responsive,
[x] translatable[^1],
[x] cross-browser,
[x] and responds to the currently set Carbon theme.

[x] Components are functional components using hooks.
[x] Public components which produce DOM structures support className.
[x] Public components support a ref (via React.forwardRef).
[x] Public component supports a Devtools attribute
[x] All significant DOM elements have meaningful classes[^2] and include the
package or Carbon prefix (no hardcoded prefixes).
[x] Additional attributes that are not identified as props (such as title,
aria-*, etc) are passed through to an appropriate DOM node of the
component as HTML attributes.
[x] No warnings, errors or log messages in the console.
[ ] Each public component JS is exported in /src/components/index.js, each
public component SCSS is included in /src/components/_index.scss, and
each public component has a flag in package-settings.js.
[x] Each public component SCSS lists all of the Carbon and IBM Products
components imported and used by the JavaScript code and explicitly imports
the SCSS for each of these components.

Standards

[ ] No linter warnings or errors are produced.
[ ] Carbon tokens (theme, layout, motion) are used unless the design specifies
otherwise.
[ ] All components utilizing motion must include reduced-motion queries for
accessibility purposes.
[ ] Code is formatted according to prettier rules (no use of
//prettier-ignore).
[ ] Code is clear, maintainable and follows standard React practices and the
code guidelines.
[ ] Copyright header in every source file (js, css, scss etc.) with the
appropriate years.

Testing

[ ] There is a set of test cases for the components.
[ ] The tests exercise all inputs (props, slots, etc) and verify appropriate
outputs.
[ ] The tests validate the behaviors and interactions defined in the design
where practical.
[ ] The tests achieve at least 80% coverage.
[ ] No warnings, errors, or log messages in the test output.

Documentation

[ ] Source code is satisfactorily commented and provides DocGen comments for
all public components and their props.
[ ] There is a story for each design scenario. The stories expose all relevant
props and actions, and additional usage documentation and code samples are
available on the Docs story along with the props table.
[ ] There is an example (or multiple sandboxes if appropriate) on CodeSandbox
and Stackblitz for the components.

[^1]: Any labels, text, or other strings within a component should use a prop.
[^2]:
See Carbon’s Developer Handbook for guidance on class names.

@paul-balchin-ibm We originally had this assigned to you, but wondering if we should have someone else review since this is work you’ve done initially. (I think you tend to build the component with all these in mind anyway, so better to get fresh eyes on it.)

[ ] showToggle is not necessarily a toggle but rather a button to expand the checklist component, this may also include some renaming for the toggleLabel and toggleLabelAlign props as well
[ ] ChecklistChart includes some hard coded hex values, if possible we should pull these values in from Carbon
[ ] Checklist styles missing from _index-with-carbon.scss
[ ] Checklist/_carbon-imports.scss includes AboutModal in comment


Check callback before calling it in no-error case.

It appears to be an optional parameter because we check it before calling it in every other case.

@reconbot I made the change you suggested, & also updated the drain and flush callbacks since they followed the same pattern.
The update and close callbacks follow a similarly convoluted pattern but they do some other work before calling callback in the no-error case, so I left them alone.

Squashed.


Workflow: Consider allowing right click selecting through

Workflow might be improved if right click to select is passed through the modal tool. Would mean needing another way to exit modal tool with a mouse interaction.

Decided this is the way to go, individual selection is important for manipulation. Still have not decided how to exit out of modal with a mouse cleanly.

I think I'm fine with no other way to exit the modal through the mouse other than right clicking outside the region. Closing task.


Question

I have a problem, how can I contact you? THANK YOU

Report your problem  here please

I tried with the crypter, but it doesn't work with my metasploit payload.
It worked well with PayGen.

i m not working on PayGen anymore

Well that's a shame :/
I am looking for a paygen download link?

i deleted it for some reasons

To create the payload as paygen it was first PSH then converted to py?


Links don't get underlined in _index.md

Hey,
Just started tinkering with hugo-prose today. I appreciate the minimalism of this theme and the fact that it's a WIP but I actually really like that, so that I can learn and make it my own.
Setting up my _index.md I noticed that the URLs don't get highlighted, which does happen in posts, see below:

I was wondering if this is by design/choice and how to change it/fix it, rather than manually underlining the links

Found the culprit...
https://github.com/yihui/hugo-prose/blob/5b24f88f8e51180020844042e279c7519e0c8e14/static/css/style.css#L145-L148
Changed text-decoration to underlined

Or remove that line, since underlined is the default.


Refactor Ledger::update_block_requests

The third PR in the Ledger::update_block_requests refactoring series (#1456).

LGTM. Note I will do some small modifications to simplify the logic. The expected behavior will remain unchanged.


Add saf.utils.salt.MasterClient and saf.utils.salt.MinionClient

Fixes #70

Codecov Report
Patch coverage: 100.00% and project coverage change: -0.76 :warning:

Comparison is base (89081d9) 83.88% compared to head (85bbdb4) 83.12%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #71      +/-   ##
==========================================
- Coverage   83.88%   83.12%   -0.76%
==========================================
  Files          48       50       +2
  Lines        1787     1831      +44
  Branches      213      186      -27
==========================================
+ Hits         1499     1522      +23
- Misses        228      254      +26
+ Partials       60       55       -5

Flag
Coverage Δ

Linux
83.01% <100.00%> (+0.73%)
:arrow_up:

Windows
?

core
82.79% <100.00%> (-0.57%)
:arrow_down:

examples
58.88% <ø> (-8.39%)
:arrow_down:

macOS
?

src
76.80% <100.00%> (-1.68%)
:arrow_down:

tests
90.93% <100.00%> (+0.11%)
:arrow_up:

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

Impacted Files
Coverage Δ

src/saf/utils/salt.py
100.00% <100.00%> (ø)

tests/e2e/utils/test_salt_client.py
100.00% <100.00%> (ø)

tests/unit/utils/test_salt_client.py
100.00% <100.00%> (ø)

... and 9 files with indirect coverage changes

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


add examples.

add asvc, clinkv2, marlin, merkletree, poseidon, rescue, spartan examples.

please split these examples
please modify test to examples for aSVC
please clean code of print for all examples


Mention the ipaddress gem requirement in the docs

fix issue #128

@rski would you mind squashing those two commits down to one?

done and done. thanks for being so patient with me

@rski that goes without saying!
thank you very much for this patch!


Schema migrator should lock schema before migration

This change addresses 3 issues to make schema migration less awful.

Schema migrator should not run concurrently on multiple threads.
Migrator acquires an exclusive table lock to avoid it.

Applying migration scripts should not skip migration scripts that are
not applied yet but older than the latest applied version. This is
because a pull-request that has larger version of migration script
could be merged earlier than another pull-request. Even with this
case, because obviously there're no dependency between those two
pull-requests (this is an assumption), all of the migration scripts
should be applied.

Migration definition files should be separated into files so that
commit to DatabaseMigrator.java file doesn't cause many conflicts
that are not obvious to merge.

@danielnorberg can you comment about change? This is a short-term solution so that we can run at least 2 ~ 3 servers.

LGTM 👍

👍


Reorder the columns in analytics tables

Automated message from Dropbox CLA bot
@umkay, it looks like you've already signed the Dropbox CLA. Thanks!

This looks great!  Can you just move the value field in the ordering changes?

@timabbott fixed, ptal

Merged, after fixing the commit message, adding a comment, and dropping the extra commit.  Thanks @umkay!


IHostedService startup documentation

Documentation page says

When a host starts, it calls IHostedService.StartAsync on each implementation of IHostedService that it finds in the DI container.

However that's not what the code in Microsoft.Extensions.Hosting/src/Internal/Host.cs does. IHostedService implementations have to be registered with the service container by adding them to the instance of IEnumerable<IHostedService> bound in the container. Simply registering a class or object implementing IHostedService with AddSingleton is insufficient.

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

ID: c5f1eeee-d500-82bf-0d0a-b4e0d5d5c175
Version Independent ID: 2373a3df-6ea3-50c7-d63d-61c51d572511
Content: .NET Generic Host
Content Source: aspnetcore/fundamentals/host/generic-host.md
Product: aspnet-core
Technology: aspnetcore-fundamentals
GitHub Login: @Rick-Anderson
Microsoft Alias: riande

Hello @atykhyy ... You seem to be looking in the wrong spot. and the API moved several months ago. See ...
https://github.com/dotnet/runtime/blob/master/src/libraries/Microsoft.Extensions.Hosting/src/Internal/Host.cs#L55
I don't think I understand your remark tho if you still have a complaint about the way in which this is phrased. The topic is accurate AFAICT.

btw - there's a full topic on hosted services that provides a lot more detail on the developer-registered services ...
https://docs.microsoft.com/aspnet/core/fundamentals/host/hosted-services

Thank you. Existing wording seems to imply that Host looks through all service descriptors in the container to find ones whose types implement IHostedService ("each implementation of IHostedService that it finds in the DI container"). This would mean that e.g. calling services.AddSingleton<MyHostedService> () will cause MyHostedService to be started/stopped by the host. However, this is not what actually happens. Hosted services must be specially registered with the DI container for the host to start/stop them. This can be done either with the AddHostedService extension methods, or directly with TryAddEnumerable.

I see what you mean now. At first, I thought you were focusing on the dev taking action on registration, not how all hosted services are registered/discovered.
I still don't think that phrase "that it finds" implies anything in particular about how a registration was made. I think ur reading too far into the text for an introductory paragraph in a fundamentals topic. This text is only meant to provide a general remark on getting hosted services started. A dev can look at reference source and the topic (cross-linked at the bottom of this article) for more info.
However, this concept could be written more specifically. I'd caution tho that it would be easy to get too far into the weeds here for what is supposed to be just a broad overview of the host. Perhaps, a small change would do the trick.

When a host starts, it calls IHostedService.StartAsync on each implementation of IHostedService registered in the DI container's collection of hosted services.

We'll see if Rick wants to make a change like that. Rick, you can assign me if ur busy and want to see something along those lines. I wouldn't want to go much further tho in this context. I mean calling out AddHostedService and direct registration seems like too much :cow2:🔔 to me in this context.

@atykhyy, you'd also be welcome to make the change, too, if Rick wants to press forward with it. If so, wait until he looks and confirms that the change (and what it should be exactly) is stated here.

When a host starts, it calls IHostedService.StartAsync on each implementation of IHostedService registered in the DI container's collection of hosted services.

LGTM

@atykhyy ... Do you want to submit a PR?
If so, use the "Edit" (pencil) on the topic and follow the prompts to submit the change.
Search the whole topic for multiple lines that might need an update. We hold multiple versions of a topic in the same file. This sentence might appear two or more times.
When you open the PR, put ...
Fixes #18996

... in the opening comment so that this issue will automatically close when the PR merges.


A single CX4CBDDS baseline with two different installables

We(SNA) are working in two baselines; a maintenance 1.x baseline with ACE+TAO+CIAO+DAnCE support and a new 2.x baseline with AXCIOMA support. We see ourselves maintaining the 1.x baseline for another year or two while SNA 2.x gains adoption once released. As such, we’ll want to keep the SNA 1.x baseline at the CX 1.5.x level. If we move to CX 1.6.x, we’d be providing AXCIOMA support prematurely and lose the marketability of our new SNA 2.x baseline. As you’ll see in the spreadsheet, I’ve added a column titled “NGC request for CX version delivered in” with 1.5.x and 1.6.x as the two options. To reiterate, I see the association between SNA and CX as the following:
•	SNA 1.x -> CX4CBDDS 1.5.x
•	SNA 2.x -> CX4CBDDS 1.6.x
We would like the fixes for most bugs found in 1.5.x to be included in both 1.5.x and 1.6.x CX baselines. New features and enhancements will primarily only go into the 1.6.x CX baseline unless our users strongly desire it in the SNA 1.x baseline (like model merging improvements if any are made that are not tied specifically to the new development tool). I could not find a 1.5.x milestone/branch in GitHub so this may be something we need to add.

Proposed approach:
•	Keep a single code base
•	Produce two separate installables from the same source/build: ATCD-only (aka SNAv1) and ATCD+AXCIOMA (SNAv2)

The difference between the two would be minuscule: an extra plugin/fragment that enables AXCIOMA UI contributions. I believe there are only 2 or 3 UI contributions that we have to hide/enable in order to do this.

Adopting this strategy has several advantages:
•	We avoid the cost of maintaining two branches. (Just about every issue we have addressed recently affects both branches.)
•	AXCIOMA early adopters (who I presume are also the key support people for the SNAv1 users) will be confident that their installation is compatible with SNAv1 users, without having to keep two separate CX versions installed.
•	Updating an SNAv1 user to SNAv2 is a trivial task.

More from email conversation:
"Other than potentially hiding any extra AXCIOMA UI contributions, a common CX baseline that supports both ATCD and AXCIOMA was hopefully conveyed in the SOW language for the last sub-contract to cover AXCIOMA additions.  Users should be able to install CX 1.6.x and continue using SNA1.  At least that was the intent per requirements in the AXCIOMA part of the SOW." - Mark
"I think we are all of the same understanding. A single 1.6.x baseline with two types of installables should work for our use-case. As long as we (SNA) have the build instructions to produce the different installables, I think we’ll be able to provide 1.6.x to both SNA 1 and SNA 2 customers, with the SNA 1 customers ONLY getting the ATCD pieces and the SNA 2 customers getting both ATCD and AXCIOMA." - Michael

More from email conversation:
"Other than potentially hiding any extra AXCIOMA UI contributions, a common CX baseline that supports both ATCD and AXCIOMA was hopefully conveyed in the SOW language for the last sub-contract to cover AXCIOMA additions.  Users should be able to install CX 1.6.x and continue using SNA1.  At least that was the intent per requirements in the AXCIOMA part of the SOW." - Mark
"I think we are all of the same understanding. A single 1.6.x baseline with two types of installables should work for our use-case. As long as we (SNA) have the build instructions to produce the different installables, I think we’ll be able to provide 1.6.x to both SNA 1 and SNA 2 customers, with the SNA 1 customers ONLY getting the ATCD pieces and the SNA 2 customers getting both ATCD and AXCIOMA." - Michael

"I would like to add that the request is slightly more generic.
One of the features we discussed was improving model merging, and ideas for addressing this including moving to a text-based model.  Such a change would be pretty large, and require migration tools.  Not something we would want to enforce on an effort that is more mature.
The point being, some changes being discussed are largely invisible or minor to adopting efforts, and others are more invasive.  We need to make sure we can support both.  It’s hard for me to imagine that SOME of the changes we are discussing would not necessitate the need for multiple branches within the CX product." - Kyle


PR: testing new code to read files from gateway's user home directory

this is for issue #8; works on my own machine but need to deploy to hub for real testing...

sorry, i think i didn't properly update the bin/ directory...fixing


Integrate scorecard generation into the django UI

Make the scorecard generation a report generator form in the UI allowing anybody to launch a report run. Also see #511

This feature has been incorporated into staging.

Needs PR into staging


Ease/soften requirements versions

Hi,
Currently, this package has locked various its dependencies of various other packages.
This'll cause version conflicts with user's project / other packages.
It'll be better if the version requirements be loosen more, or even better remove those requirements.

also got conflicts with other packages. but dead community ┑(￣Д ￣)┍


1.0.1 Scheme count, app verification errors

Hi all,
After reading about the release of 1.0.1 in this thread, I thought the issue may be solved but it doesn't appear to fix it for me.
I am running Xcode 10.1, and version 1.0.1 of the plugin.
I get the error The app bundle may contain only one scheme, 2 found; when I remove the __xctestrun_metadata__ dict and associated keys from the build_products.zip file and re-package, I get the following error:
app verification failed: There must be only one .xctestrun files in the ZIP file.
There's definitely only one .xctestrun file in my ZIP - that and contents of the Debug-iphoneos folder are the only two items in there.
I tried uploading the ZIP manually via Firebase Console however it gives me the same error (there's a Stack Overflow issue here about it).
Any suggestions?

Hi John, it works perfectly for me , can you attach your .xctestrun file to see if this different?

@johnrogers Hi, that does not appear to be a plugin issue. The plugin finds all files with .xctestrun extension in the archive and check if there are more than one. Can you verify by inspecting the zip file? Since both the plugin and FTL are reporting the same issue, it is likely that the archive is messed up.
I would suggest you to clean the xcode workspace first before building. Keeping multiple build variants is a sure way of getting into this problem.

Hey guys.
Definitely only one .xctestrun file in there, along with one Debug-iphoneos folder. The ZIP file is exactly as output from scan - here are the relevant lines of my fast file:
    scan(slack_url: ENV["SLACK_URL"],
      slack_message: "@here :rotating_light: test failures :rotating_light:",
      slack_only_on_failure: true,
      open_report: false,
      scheme: "<redacted>",
      clean: true,
      skip_detect_devices: true,
      build_for_testing: true,
      sdk: 'iphoneos',
      fail_build: false,
      should_zip_build_products: true
    )

    firebase_test_lab_ios_xctest(
      gcp_project: '<redacted>',
      devices: [
        {
            ios_model_id: 'iphonex',
            ios_version_id: '11.2',
            locale: 'en_US',
            orientation: 'portrait'
        }
      ])

Terminal output at the end of scan:
[09:41:24]: Zipping build products
[09:41:24]: $ cd '/Users/john/Library/Developer/Xcode/DerivedData/<redacted>-ffpetwiwlsslogdbnggaguwiwsmh/Build/Products' && rm -f '/Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip' && zip -r '/Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip' *
[09:41:37]: Succesfully zipped build products: /Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip
[09:41:37]: ------------------------------------------
[09:41:37]: --- Step: firebase_test_lab_ios_xctest ---
[09:41:37]: ------------------------------------------
+------------------------------+------------------------------------------------------------------------------------+
|                                                   Lane Context                                                    |
+------------------------------+------------------------------------------------------------------------------------+
| DEFAULT_PLATFORM             | ios                                                                                |
| PLATFORM_NAME                | ios                                                                                |
| LANE_NAME                    | ios test                                                                           |
| SCAN_ZIP_BUILD_PRODUCTS_PATH | /Users/john/Developer/deputy-kiosk-swift/fastlane/test_output/build_products.zip   |
| SCAN_DERIVED_DATA_PATH       | /Users/john/Library/Developer/Xcode/DerivedData/kiosk-ffpetwiwlsslogdbnggaguwiwsmh |
| SCAN_GENERATED_PLIST_FILES   | []                                                                                |
| SCAN_GENERATED_PLIST_FILE    |                                                                                |
+------------------------------+------------------------------------------------------------------------------------+
[09:41:37]: The app bundle may contain only one scheme, 2 found

+------+------------------------------+-------------+
|                 fastlane summary                  |
+------+------------------------------+-------------+
| Step | Action                       | Time (in s) |
+------+------------------------------+-------------+
| 1    | default_platform             | 0           |
| 2    | cocoapods                    | 57          |
| 3    | scan                         | 287         |
| 💥   | firebase_test_lab_ios_xctest | 0           |
+------+------------------------------+-------------+

[09:41:37]: fastlane finished with errors

[!] The app bundle may contain only one scheme, 2 found

The clean: true parameter passed to scan should take care of the cleaning process, right? I'm trying to set this up to be run in a CI environment.
Again, this is using v1.0.1 of the plugin. Any ideas?

Hey guys.
Definitely only one .xctestrun file in there, along with one Debug-iphoneos folder. The ZIP file is exactly as output from scan - here are the relevant lines of my fast file:
    scan(slack_url: ENV["SLACK_URL"],
      slack_message: "@here :rotating_light: test failures :rotating_light:",
      slack_only_on_failure: true,
      open_report: false,
      scheme: "<redacted>",
      clean: true,
      skip_detect_devices: true,
      build_for_testing: true,
      sdk: 'iphoneos',
      fail_build: false,
      should_zip_build_products: true
    )

    firebase_test_lab_ios_xctest(
      gcp_project: '<redacted>',
      devices: [
        {
            ios_model_id: 'iphonex',
            ios_version_id: '11.2',
            locale: 'en_US',
            orientation: 'portrait'
        }
      ])

Terminal output at the end of scan:
[09:41:24]: Zipping build products
[09:41:24]: $ cd '/Users/john/Library/Developer/Xcode/DerivedData/<redacted>-ffpetwiwlsslogdbnggaguwiwsmh/Build/Products' && rm -f '/Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip' && zip -r '/Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip' *
[09:41:37]: Succesfully zipped build products: /Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip
[09:41:37]: ------------------------------------------
[09:41:37]: --- Step: firebase_test_lab_ios_xctest ---
[09:41:37]: ------------------------------------------
+------------------------------+------------------------------------------------------------------------------------+
|                                                   Lane Context                                                    |
+------------------------------+------------------------------------------------------------------------------------+
| DEFAULT_PLATFORM             | ios                                                                                |
| PLATFORM_NAME                | ios                                                                                |
| LANE_NAME                    | ios test                                                                           |
| SCAN_ZIP_BUILD_PRODUCTS_PATH | /Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip   |
| SCAN_DERIVED_DATA_PATH       | /Users/john/Library/Developer/Xcode/DerivedData/<redacted>-ffpetwiwlsslogdbnggaguwiwsmh |
| SCAN_GENERATED_PLIST_FILES   | []                                                                                |
| SCAN_GENERATED_PLIST_FILE    |                                                                                |
+------------------------------+------------------------------------------------------------------------------------+
[09:41:37]: The app bundle may contain only one scheme, 2 found

+------+------------------------------+-------------+
|                 fastlane summary                  |
+------+------------------------------+-------------+
| Step | Action                       | Time (in s) |
+------+------------------------------+-------------+
| 1    | default_platform             | 0           |
| 2    | cocoapods                    | 57          |
| 3    | scan                         | 287         |
| 💥   | firebase_test_lab_ios_xctest | 0           |
+------+------------------------------+-------------+

[09:41:37]: fastlane finished with errors

[!] The app bundle may contain only one scheme, 2 found

The clean: true parameter passed to scan should take care of the cleaning process, right? I'm trying to set this up to be run in a CI environment.
Again, this is using v1.0.1 of the plugin. Any ideas?

Hey guys.
Definitely only one .xctestrun file in there, along with one Debug-iphoneos folder. The ZIP file is exactly as output from scan - here are the relevant lines of my fast file:
    scan(slack_url: ENV["SLACK_URL"],
      slack_message: "@here :rotating_light: test failures :rotating_light:",
      slack_only_on_failure: true,
      open_report: false,
      scheme: "<redacted>",
      clean: true,
      skip_detect_devices: true,
      build_for_testing: true,
      sdk: 'iphoneos',
      fail_build: false,
      should_zip_build_products: true
    )

    firebase_test_lab_ios_xctest(
      gcp_project: '<redacted>',
      devices: [
        {
            ios_model_id: 'iphonex',
            ios_version_id: '11.2',
            locale: 'en_US',
            orientation: 'portrait'
        }
      ])

Terminal output at the end of scan:
[✔] 🚀
+-----------------------------------+---------+------------------------------+
|                                Used plugins                                |
+-----------------------------------+---------+------------------------------+
| Plugin                            | Version | Action                       |
+-----------------------------------+---------+------------------------------+
| fastlane-plugin-trainer           | 0.4.0   | trainer                      |
| fastlane-plugin-firebase_test_lab | 1.0.1   | firebase_test_lab_ios_xctest |
+-----------------------------------+---------+------------------------------+

... <scan build process> ...

[09:41:24]: Zipping build products
[09:41:24]: $ cd '/Users/john/Library/Developer/Xcode/DerivedData/<redacted>-ffpetwiwlsslogdbnggaguwiwsmh/Build/Products' && rm -f '/Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip' && zip -r '/Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip' *
[09:41:37]: Succesfully zipped build products: /Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip
[09:41:37]: ------------------------------------------
[09:41:37]: --- Step: firebase_test_lab_ios_xctest ---
[09:41:37]: ------------------------------------------
+------------------------------+------------------------------------------------------------------------------------+
|                                                   Lane Context                                                    |
+------------------------------+------------------------------------------------------------------------------------+
| DEFAULT_PLATFORM             | ios                                                                                |
| PLATFORM_NAME                | ios                                                                                |
| LANE_NAME                    | ios test                                                                           |
| SCAN_ZIP_BUILD_PRODUCTS_PATH | /Users/john/Developer/<redacted>/fastlane/test_output/build_products.zip   |
| SCAN_DERIVED_DATA_PATH       | /Users/john/Library/Developer/Xcode/DerivedData/<redacted>-ffpetwiwlsslogdbnggaguwiwsmh |
| SCAN_GENERATED_PLIST_FILES   | []                                                                                |
| SCAN_GENERATED_PLIST_FILE    |                                                                                |
+------------------------------+------------------------------------------------------------------------------------+
[09:41:37]: The app bundle may contain only one scheme, 2 found

+------+------------------------------+-------------+
|                 fastlane summary                  |
+------+------------------------------+-------------+
| Step | Action                       | Time (in s) |
+------+------------------------------+-------------+
| 1    | default_platform             | 0           |
| 2    | cocoapods                    | 57          |
| 3    | scan                         | 287         |
| 💥   | firebase_test_lab_ios_xctest | 0           |
+------+------------------------------+-------------+

[09:41:37]: fastlane finished with errors

[!] The app bundle may contain only one scheme, 2 found

After unzipping the ZIP file that scan produced:
⋊> ~/D/d/f/t/build_products on feature/ui_tests ⨯ pwd                                                                                09:49:14
/Users/john/Developer/<redacted>/fastlane/test_output/build_products
⋊> ~/D/d/f/t/build_products on feature/ui_tests ⨯ ls                                                                                09:49:30
Debug-iphoneos                      <redacted>_iphoneos12.1-arm64e.xctestrun

The clean: true parameter passed to scan should take care of the cleaning process, right? I'm trying to set this up to be run in a CI environment.
Again, this is using v1.0.1 of the plugin. Any ideas?

Hi @johnrogers, thanks for the description, but it's important what's in the xctestrun file, can you please attach it? The plugin counts the number of schemes present in that file, it should only consist of one key with your scheme and one key with xctestrun_metadata

@johnrogers Yeah that log shows there's only one .xctestrun, that's why it's not showing the "multiple .xctestrun files" error, but instead the "multiple schemes" error. Can you open the .xctestrun file and see what's in it

Ok, I'm getting somewhere. I wasn't specifying the correct scheme in scan's scheme parameter.
I've hit another snag though - I am getting the following error:
The app bundle is not a UI test bundle. Did you build with build-for-testing argument?
Here is the complete output (minus redacted) from my .xctestrun file:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>__xctestrun_metadata__</key>
	<dict>
		<key>FormatVersion</key>
		<integer>1</integer>
	</dict>
	<key>redactedUITests</key>
	<dict>
		<key>BundleIdentifiersForCrashReportEmphasis</key>
		<array>
			<string>redacted</string>
			<string>redacted</string>
			<string>redacted</string>
		</array>
		<key>CommandLineArguments</key>
		<array/>
		<key>DependentProductPaths</key>
		<array>
			<string>__TESTROOT__/Debug-iphoneos/redacted.framework</string>
			<string>__TESTROOT__/Debug-iphoneos/redacted-Runner.app/PlugIns/redacted.xctest</string>
			<string>__TESTROOT__/Debug-iphoneos/redacted.app</string>
		</array>
		<key>EnvironmentVariables</key>
		<dict>
			<key>OS_ACTIVITY_DT_MODE</key>
			<string>YES</string>
			<key>SQLITE_ENABLE_THREAD_ASSERTIONS</key>
			<string>1</string>
			<key>TESTS_USE_DEMO</key>
			<string>1</string>
		</dict>
		<key>IsUITestBundle</key>
		<true/>
		<key>IsXCTRunnerHostedTestBundle</key>
		<true/>
		<key>ProductModuleName</key>
		<string>redactedUITests</string>
		<key>RunOrder</key>
		<integer>0</integer>
		<key>SystemAttachmentLifetime</key>
		<string>deleteOnSuccess</string>
		<key>TestBundlePath</key>
		<string>__TESTHOST__/PlugIns/redactedUITests.xctest</string>
		<key>TestHostBundleIdentifier</key>
		<string>com.apple.test.redactedUITests-Runner</string>
		<key>TestHostPath</key>
		<string>__TESTROOT__/Debug-iphoneos/redactedUITests-Runner.app</string>
		<key>TestingEnvironmentVariables</key>
		<dict>
			<key>DYLD_FRAMEWORK_PATH</key>
			<string></string>
		</dict>
		<key>ToolchainsSettingValue</key>
		<array/>
		<key>UITargetAppCommandLineArguments</key>
		<array/>
		<key>UITargetAppPath</key>
		<string>__TESTROOT__/Debug-iphoneos/redcated.app</string>
		<key>UserAttachmentLifetime</key>
		<string>deleteOnSuccess</string>
	</dict>
</dict>
</plist>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
	<key>__xctestrun_metadata__</key>
	<dict>
		<key>FormatVersion</key>
		<integer>1</integer>
	</dict>
	<key>redactedUITests</key>
	<dict>
		<key>BundleIdentifiersForCrashReportEmphasis</key>
		<array>
			<string>redacted</string>
			<string>redacted</string>
			<string>redacted</string>
		</array>
		<key>CommandLineArguments</key>
		<array/>
		<key>DependentProductPaths</key>
		<array>
			<string>__TESTROOT__/Debug-iphoneos/redacted.framework</string>
			<string>__TESTROOT__/Debug-iphoneos/redacted-Runner.app/PlugIns/redacted.xctest</string>
			<string>__TESTROOT__/Debug-iphoneos/redacted.app</string>
		</array>
		<key>EnvironmentVariables</key>
		<dict>
			<key>OS_ACTIVITY_DT_MODE</key>
			<string>YES</string>
			<key>SQLITE_ENABLE_THREAD_ASSERTIONS</key>
			<string>1</string>
			<key>TESTS_USE_DEMO</key>
			<string>1</string>
		</dict>
		<key>IsUITestBundle</key>
		<true/>
		<key>IsXCTRunnerHostedTestBundle</key>
		<true/>
		<key>ProductModuleName</key>
		<string>redactedUITests</string>
		<key>RunOrder</key>
		<integer>0</integer>
		<key>SystemAttachmentLifetime</key>
		<string>deleteOnSuccess</string>
		<key>TestBundlePath</key>
		<string>__TESTHOST__/PlugIns/redactedUITests.xctest</string>
		<key>TestHostBundleIdentifier</key>
		<string>com.apple.test.redactedUITests-Runner</string>
		<key>TestHostPath</key>
		<string>__TESTROOT__/Debug-iphoneos/redactedUITests-Runner.app</string>
		<key>TestingEnvironmentVariables</key>
		<dict>
			<key>DYLD_FRAMEWORK_PATH</key>
			<string></string>
		</dict>
		<key>ToolchainsSettingValue</key>
		<array/>
		<key>UITargetAppCommandLineArguments</key>
		<array/>
		<key>UITargetAppPath</key>
		<string>__TESTROOT__/Debug-iphoneos/redcated.app</string>
		<key>UserAttachmentLifetime</key>
		<string>deleteOnSuccess</string>
	</dict>
</dict>
</plist>

I did some digging into the plugin's source, and found this section of code in ios_validation.rb:
conf = Plist.parse_xml(xctestrun_files.first.get_input_stream)
            size = conf.size
            if conf['__xctestrun_metadata__']
              size -= 1
            end
            unless size == 1
              UI.user_error!("The app bundle may contain only one scheme, #{size} found")
            end
            _, scheme_conf = conf.first
            unless scheme_conf["IsUITestBundle"]
              UI.user_error!("The app bundle is not a UI test bundle. Did you build with build-for-testing argument?")
            endconf = Plist.parse_xml(xctestrun_files.first.get_input_stream)
            size = conf.size
            if conf['__xctestrun_metadata__']
              size -= 1
            end
            unless size == 1
              UI.user_error!("The app bundle may contain only one scheme, #{size} found")
            end
            _, scheme_conf = conf.first
            unless scheme_conf["IsUITestBundle"]
              UI.user_error!("The app bundle is not a UI test bundle. Did you build with build-for-testing argument?")
            end

Now, I'm not that great with Ruby, but it looks like conf is an array of keys and their values - it's checking to see if __xctestrun_metadata__ is present and reducing the size in order to detect the number of schemas, however, this line:
scheme_conf = conf.first
Looks like it's assigning the first key-value pair to scheme_conf. In the case of my .xctestrun file, this would be __xctestrun_metadata__.
Or am I missing something here? I've tried the build process several time and every time it comes out true for IsUITestBundle.

I've created a PR to demonstrate a fix (works for me). It seems to me that we're better off selecting the schema that's not __xctestrun_metadata__, right?

Not specifically plugin-related, but...
Now we've worked out a fix for the plugin, I have to work out why Test Lab is telling me that I have an invalid ZIP file. Whether I use the plugin or the manual upload via Firebase Console, I get an error telling me that I should only have one xctestrun file in my ZIP file along with the contents of the Products folder.
Given that the validation is passing on the plugin, I really can't fathom this error. I've double checked the ZIP millions of times and tried a few different ways of packaging it. Sent a message to Firebase help but not hopeful I'll get a quick reply. Any ideas?

@johnrogers Maybe you can try-out without the fail_build-option in scan, i don't use that one.
One tip: The Firebase Community on Slack is very active, its firebase-community.slack.com, there is a special channel for test-lab.

@johnrogers Maybe you can try-out without the fail_build-option in scan, i don't use that one.
One tip: The Firebase Community on Slack is very active, its firebase-community.slack.com, there is a special channel for test-lab.

Thanks Marty. They're onto it!
Issue track here: https://issuetracker.google.com/issues/121101228


How to get current version in header "Accept"

The method
\Api::getVersion()

get the API_VERSION in .env, I think it's mean "default version".
But how to get current version?
application/x.myapi.v1+json
application/x.myapi.v2+json

Thanks.

Good point, I don't think there's a way for you to grab it right now without a few steps.
Would require grabbing an Accept parser instance and parsing it yourself. I'll add this information on to the router so you can grab it for the current request.

This was added in.
With the current request instance you can grab the current version, subtype, and format.
$request->version(); // v2
$request->subtype(); // myapi
$request->format(); // json


Slow import towards of the gz file

I tried importing E002 from bitsnoop, it imported the first 1,347,223 fine at a rate of 1,000 - 5,000 a second but torrents after that loaded extremely slow at a rate of about 100 a second. I've using a Macbook Pro 2010 with 8GB RAM and a 265GB SSD, I also had about 4GB of free RAM and over 100GB of free disk space so I don't think I was hitting any IO limits.
➜  bitcannon  ./bitcannon_darwin_amd64 ../b3_all.txt.gz
2015/10/11 15:54:24 [OK!] Connecting to Mongo at <IP_ADDRESS>
2015/10/11 15:54:24 [OK!] Attempting to parse
2015/10/11 15:54:24 ../b3_all.txt.gz
2015/10/11 15:54:24 [OK!] File opened
2015/10/11 15:54:24 [OK!] Extension is valid
2015/10/11 15:54:24 [OK!] GZip detected, unzipping enabled
2015/10/11 15:54:24 [OK!] Reading initialized
2015/10/11 16:25:16 [OK!] Reading completed
2015/10/11 16:25:16       1646925 torrents imported
2015/10/11 16:25:16       21386348 torrents skipped
2015/10/11 16:25:16

Press enter to quit...

I'm pretty sure this is just due to mongodb indexing. Indexing is necessary to have search queries run in under a couple seconds instead of 2-3 minutes (Yes, it actually took that long before I enabled indexing.)
I don't think there's much that can be done. At the beginning mongodb doesn't have much indexing work to do, but it's probably piling up as it goes along.

That's fine, just thought I'd report it incase there was an easy fix. Shall I close this?


Info for .Net Core apps?

There's a note on the 'Creating a package' page that says "This topic applies to project types other than .NET Core projects using Visual Studio 2017 and NuGet 4.0+."  That note then says to reference two other pages for information on .NET Core projects.  However, neither of those pages have anything specific to .NET Core projects either.

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

ID: f35f4267-e5e3-ddcf-d3e4-479fb233ce9f
Version Independent ID: 6d49d66f-f777-7e44-3a45-723e3ad09a59
Content: How to create a NuGet package
Content Source: docs/create-packages/Creating-a-Package.md
Product: nuget
GitHub Login: @karann-msft
Microsoft Alias: karann

A .NET Standard library or a .NET Core library are both SDK-style projects and the steps to create a NuGet package are similar. The only difference is you'd start with File > New > Project, expand the Visual C# > .NET Core node, select the "Class Library (.NET Core)" template.
Let us know if you run into any issues.

NOT the point of my post at all. There's a "Note" on https://github.com/NuGet/docs.microsoft.com-nuget/blob/master/docs/create-packages/Creating-a-Package.md that points out the specified documentation doesn't apply to .Net Core projects then refers the reader to other documentation which also doesn't cover the topic. Fix the docs.


jshint randomly shows prejudice against single quotes

The following code:
['el', 'frameElement', 'menubar', 'opener', 'pr', 'sc', 'si', 'pos'].forEach(function(name) {
  Object.defineProperty(window, name, {
    set: function(x) {
      console.log('tried to set window.'+name+' to', x);
    }
  });
});

gets this output from jshint:
test.js: line 1, col 2, Strings must use doublequote.
test.js: line 1, col 8, Strings must use doublequote.
test.js: line 1, col 24, Strings must use doublequote.
test.js: line 1, col 35, Strings must use doublequote.
test.js: line 1, col 45, Strings must use doublequote.
test.js: line 1, col 51, Strings must use doublequote.
test.js: line 1, col 57, Strings must use doublequote.
test.js: line 1, col 63, Strings must use doublequote.

8 errors

If you remove an item from the list on line 1, you get no errors instead.
jshint v2.6.0

Starting to look into this bug - so far it looks like it only occurs when the array is the first identifier on the page and array.length >= 8
which is super weird.

What version are you using? JSHint has deprecated style-centric rules, in favor of encouraging the use of JSCS.
cc @mikesherov

I'm using jshint 2.6.0 installed from NPM.

@rwaldron, perhaps it's time we discuss removal strategy?

@rwaldron @mikesherov no I don't believe this is actually a style-checker issue, I think it's a real bug.
Addressed by this pr: https://github.com/jshint/jshint/pull/2200
The problem is the parser is being thrown into JSON mode when it shouldn't be, but it is right that in that mode it should throw errors at single quotes. I would love some insight into where the magic number 15 comes from:
https://github.com/jshint/jshint/blob/8a231e29422deddd8aef5e9bd65632a9bebf4528/src/jshint.js#L4612
I can't really imagine a situation where this would be needed -- or at least we can up the limit (>100).

ironically even adding 'use strict' would have kept this from being noticed :)

Released in 2.6.1