Potential bug in fsspec.utils.infer_storage_options

Hi,
I was trying to parse urlpath abfs://my-container/test.csv with fsspec.utils.infer_storage_options and expected to get storage options dictionary with path value equal to my-container/test.csv as it returns for example for s3 protocol.
However, the result is:
{'protocol': 'abfs', 'path': '/test.csv', 'host': 'my-container'}

Is it required to update the following if statement with Azure-related protocols?
https://github.com/intake/filesystem_spec/blob/cc7cbc0cc58c96c427708c1e9a98b0d6c99bd1f0/fsspec/utils.py#L71

Hi folks,
Any updates?


Improve autogen

Reduce duplication between the 2 ABIs by:

Allowing functions whose name isn't just like CPython's with an 'H' added to be auto-generated.
Moving other duplicated implementations to common/implementation.h

Sadly, dealing with names like HPy_Foo required adding another macro. (autogen could only create implementations for HPyFoo_Bar so far)

_HPy_IMPL_NAME(_GetAttr) wouldn't work, it would generate ctx__GetAttr (with 2 underscores) for the universal ABI. I don't think it's possible to follow our conventions so far with a single macro.


Fixed issues in the User Defaults article

Added a missing dot to Xamarin.iOS
Apple is referred to as a singular entity in other parts of the documentation (suggest => suggests). Also, recommends fits better since Apple quite strongly tells developers not to use the Synchronize method: "... this method is unnecessary and shouldn't be used".
Added the missing letter to NSRegistrationDomain
Fixed some unclear/incorrect wording

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.:x: HankiDesign sign nowYou have signed the CLA already but the status is still pending? Let us recheck it.


Add empty slots to Expr and Node classes.

See issue #1268.
Consistently uses __slots__ in class hierarchies, even when empty.

Hm it'd be great to have a test. Maybe something as simple as
assert Expr.__slots__ == ()
assert Node.__slots__ == ()

When you're ready to merge please also add a tiny release note blurb to docs/source/whatsnew/0.5.0.txt

I agree a test would be good, but it feels strange to test an internal detail like "does this class have an empty __slots__."  It feels like testing the API for a private method.  I don't know of any better way to test for this, though, so I'll add the asserts you mention.

Yes that test is definitely a bit awkward. If there's a way to test it using the user facing API, by all means

When you're ready to merge please also add a tiny release note blurb to docs/source/whatsnew/0.5.0.txt

Should that be 0.8.4.txt?  The latest tag I see is 0.8.3.

Sorry I meant 0.9.0. I've moved the version to a new minor version since we're dropping support for things.

@kwmsmith merge master back into your branch it should be passing now


Waiting to reconnect..

I've tried everything but can't get it to work.

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

ID: 9564a660-e978-17e0-b1ab-885eb9345046
Version Independent ID: 97c67bc0-5e7d-01ff-f4ba-1c626820614c
Content: Setting Up Network Debugging of a Virtual Machine Host
Content Source: windows-driver-docs-pr/debugger/setting-up-network-debugging-of-a-virtual-machine-host.md
Service: windows-hardware
GitHub Login: @DOMARS
Microsoft Alias: domars

Closed Issue 503 as a dupe of this one. Comment from 503 was:
"I can't get it to connect...sigh. I've tried restarting the target, opening firewalls."

I don't see a question about the documentation here, so I am closing this Issue as not actionable. If you have a question about using the debugger, your best bet is to look for help in Stack Overflow, the Windows Hardware WDK and driver development forum, or the OSR NTDEV forum. This feedback mechanism is for requests about the documentation.
We are working on a new KDNET VM debugging topic that may be helpful. Hope to have that published in a week or so. It will be called "Setting Up Network Debugging of a Virtual Machine - KDNET".


Assignment Slide only for presentation

Cf. #342
A Slide for an assignment should be possible even the won't be an election this session. Then the candidating system should be disabled.

I prefered to close this issue. It's not a useful feature which OpenSlides should support.


Deprecation warning: moment construction falls back to js Date.

min and max both accept string types when they should accept Date type per material spec.
This also appears to be causing some issues with Moment.JS as you can see from the console in your CodePen example.

@gigablox The issue you mentioned with moment.js it's just a deprecation warning, resolved in version 0.7.2.
Min and Max will be set up as two-way binding.

Awesome, yea the min max is currently broken in your example, but I'm glad you're aware of it. Looking forward to 7.2! Great work on this btw.


On first save, no quality score shows

It shows only on second save

Works fine for me. Which MW version are you using? I am on 1.35.2

Well, I see what happens here - isPageScoreable() checks for the article type, but apparently it wasn't saved yet by MediaWiki. I'm not even sure there's a solution for it, so let's a label for "stalled" issues and carry on.

No relevant for Nischay - our problem


Instructions for setting up .npmrc on Linux/Mac are incomplete

The instructions about how to set up NPM credentials for Mac or Linux are incomplete; as written we'll create an .npmrc file that specifies "username", "email" and _password" -- but not "_authToken" which is mandatory at least for accessing NPM feeds for 1st-party (Microsoft-owned) instances of Azure DevOps.
I'm not sure if this is true for customer ADO instances, but logically it must be at least a configurable setting.
The 3rd party tool better-vsts-npm-auth provides a more thorough solution, if we can't work with the authors of that package to provide a 1st-party equivalent it should at least get a mention as an option.

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

ID: 4a25fb7f-d07f-f92e-55db-a44d41bd6e51
Version Independent ID: 63828151-7f31-7abc-7a52-c4538815e368
Content: Set up your client's npmrc - Azure Artifacts
Content Source: docs/artifacts/npm/npmrc.md
Product: devops
Technology: devops-artifacts
GitHub Login: @ramiMSFT
Microsoft Alias: rabououn

Further information on this has been reported under https://github.com/MicrosoftDocs/azure-devops-docs/issues/9086.

@crhaglun Thank you for your feedback! Take a look at the updated steps here


Qwel exe patch 1, remove imgbot's commits

Fixes Issue

Changes proposed

Check List (Check all the applicable boxes)

[ ] My code follows the code style of this project.
[ ] My change requires changes to the documentation.
[ ] I have updated the documentation accordingly.
[ ] All new and existing tests passed.
[ ] This PR does not contain plagiarized content.
[ ] The title of my pull request is a short description of the requested changes.

Screenshots

Note to reviewers

Wrong repo, sorry


Add basic drivetrain support

Also adds code for the NAVX gyroscope

This change is

Will take a look after hw 😛

why am i not allowed to merge my own freakin branch

Comments from Reviewable

I made it so you can't do that.

Comments from Reviewable

And don't you DARE review it yourself.

Review status: 0 of 5 files reviewed at latest revision, all discussions resolved.

Comments from Reviewable

Did you not totally review the last like 4 PR's yourself tho :P

BEFORE I added this 😛

We can just use Githubs built in code review so we dont have to go to reviewable u know

It just seems to bloat the process and make me open more tabs

Reviewed 5 of 5 files at r1.
Review status: all files reviewed at latest revision, 2 unresolved discussions.

src/main/java/org/usfirst/frc/team4828/DriveTrain.java, line 50 at r1 (raw file):

    public void mecanumDrive(double x, double y, double rotation, double gyroAngle) {
        // Negate y for the joystick.
        y = -y;

What's this for? I don't have much bg info on mecanums...

src/main/java/org/usfirst/frc/team4828/Robot.java, line 26 at r1 (raw file):

    public void autonomousInit() {
        super.autonomousInit();
        System.out.println("Entering auton...");

TECHNICALLY not entering auton yet, that's in periodic, but that's just my perfectionist showing.

Comments from Reviewable

src/main/java/org/usfirst/frc/team4828/DriveTrain.java, line 50 at r1 (raw file):
Previously, CheezBallzPi (Jackie Chen) wrote…
What's this for? I don't have much bg info on mecanums...

it's copied from wpilib, i can explain the math to u later if u want, also we can write unit tests for the supporting math functions

Comments from Reviewable

I'm gonna try both probs this week or next

Review status: all files reviewed at latest revision, 1 unresolved discussion.

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

Comments from Reviewable

src/main/java/org/usfirst/frc/team4828/Robot.java, line 26 at r1 (raw file):
Previously, CheezBallzPi (Jackie Chen) wrote…
TECHNICALLY not entering auton yet, that's in periodic, but that's just my perfectionist showing.

Wait what, it enters auton at the beginning of auton init right?

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

src/main/java/org/usfirst/frc/team4828/Robot.java, line 26 at r1 (raw file):
Previously, P1n3appl3 (Joseph Ryan) wrote…
Wait what, it enters auton at the beginning of auton init right?

It gets ready for auton, but the actual AUTON is in periodic. I think.

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

src/main/java/org/usfirst/frc/team4828/Robot.java, line 26 at r1 (raw file):
Previously, CheezBallzPi (Jackie Chen) wrote…
It gets ready for auton, but the actual AUTON is in periodic. I think.

OK

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

src/main/java/org/usfirst/frc/team4828/Robot.java, line 26 at r1 (raw file):
Previously, CheezBallzPi (Jackie Chen) wrote…
OK

LGTM

Comments from Reviewable

Review status: all files reviewed at latest revision, 1 unresolved discussion.

src/main/java/org/usfirst/frc/team4828/Robot.java, line 26 at r1 (raw file):
Previously, CheezBallzPi (Jackie Chen) wrote…
LGTM

pls end...

Comments from Reviewable

src/main/java/org/usfirst/frc/team4828/Robot.java, line 26 at r1 (raw file):
Previously, CheezBallzPi (Jackie Chen) wrote…
pls end...

This is why we should use githubs instead i keep having to open this crap

Comments from Reviewable

Please switch to the default GitHub built-in review system. It produces so much less bloat in the comments of the PR.

@alebcay I've already killed Reviewable. We are on the path to unbloatedness.


Rezabekf/output bucket logical

Issue #, if available:
#12
Description of changes:
This PR adds LogBucket and DemoBucket logical id to Outputs to enable extension for analytics solution. See Issue #12 for more details.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Buckets were added to the stack outputs in version 2.4.0


Am I just an idiot?

I love this tool, but for the life of me, I cannot figure out how to create a new project, or how to add a new endpoint to an existing project.  What is wrong with me?

There is no save button on the Socket tab, only on the Request tab....this is when using the Beta version, but I can't pull down your new code that might be having it - will it be pushed to the beta version soon?

On the socket tab I'm not planning to put a "save" button. You'll see a a list of previously made connections below the socket URL filed. From there you'll be able to choose one of the URLs.
Also URL autocomplete function has been added to the websockets.
As per saving the request with a project, it's in the "save" menu. Projects are abstract in ARC and generally are just a name for a group of requests. So they don't actually have special treatment. Just check the "save in a project" checkbox in the save dialog.


ODIS Combiner Node Version Bug

Build uses node version > 10, but GCP Cloud function only accepts node 10. We've been manually changing this line before deployment which is not a sustainable fix.
Builds
  "engines": {
    "node": ">=10"
  }

Deploys
  "engines": {
    "node": "10"
  }

According to this https://cloud.google.com/appengine/docs/standard/nodejs/runtime#node.js-14, we can't do match since

The engines.node property is optional, but if present, the value must be compatible with the Node.js version specified in your app.yaml file.

I would consider upgrading node.js version in Combiner (I believe this our service).
@codyborn @alecps


EBS CSI Driver - deployed with incorrect trust relationship

Describe the bug
Update (6/21//2022):
In further troubleshooting, it was discovered that the Addon is deploying an incorrect trust relationship with the OIDC sub as:
system:serviceaccount:kube-system:aws-ebs-csi-driver
When I manually update this to match the ebs-csi documentation (https://docs.aws.amazon.com/eks/latest/userguide/csi-iam-role.html) it works, here is the correct sub:
system:serviceaccount:kube-system:ebs-csi-controller-sa
EBS CSI Addon Version: 1.6.2
K8 Cluster version: 1.21
When attempting to create a new volume, PVC is reporting the following auth error:
"failed to provision volume with StorageClass "ebs-sc": rpc error: code = Internal desc = Could not create volume "pvc-93e1b143-5f66-4ddd-85fb-6bd293e4d866": could not create volume in EC2: WebIdentityErr: failed to retrieve credentials caused by: AccessDenied: Not authorized to perform sts:AssumeRoleWithWebIdentity status code: 403, request id:"
using example Dynamic Provisioning manifests from: https://docs.aws.amazon.com/eks/latest/userguide/ebs-sample-app.html
Expected Behavior
PVC and volume should have created
Current Behavior
Auth Error assuming Web Identity
Reproduction Steps
Stood up new cluster, specified k8 version 1.21, ebs csi addon version 1.6.2.
Cluster and default gp2 strorage class verified and created by default.
Deploy example Dynamic Provisioning manifests from this doc: https://docs.aws.amazon.com/eks/latest/userguide/ebs-sample-app.html
Possible Solution
Modify the sub in the OIDC trust relationship for the ebs-csi service account from:
system:serviceaccount:kube-system:aws-ebs-csi-driver
to this:
system:serviceaccount:kube-system:ebs-csi-controller-sa
Additional Information/Context
No response
CDK CLI Version
2.20
EKS Blueprints Version
1.0.1
Node.js Version
16
Environment details (OS name and version, etc.)
MACOS
Other information
No response

This issue is fixed now with this merge, Please validate and close the issue.

When will 1.0.5 be released? Assuming this fix would be part of it. I'm experiencing the same error.
Btw, thanks for the workaround, daveschmidt86!

We are finalizing the quality assurance for the next batch of changes (1.1.0 release) targeting early next week.

@daveschmidt86  this is fixed in 1.1.0, if you get a chance, please verify.

@daveschmidt86 closing the issue, we can reopen if you discover any defective behavior.


challenge(formatter): noInitializerWithDefinite rule

Summary

This PR removes the bogus marking of TypeScript variable definitions with definite assertions that are initialized and instead moves it to a new lint rule noInitializerWithDefinite.

[yashsingh1]: Hi there, I was working on the typescript/definite/definite test case and traced the problem to definite declarations being marked as bogus by the parser here: https://github.com/biomejs/biome/blob/main/crates/biome_js_parser/src/syntax/stmt.rs#L1393. Would it be reasonable to not enter bogus mode as this can be considered as a compiler error instead of a syntax error?
[ematipico]: I think it's possible to change that, and create a syntax rule inside our analyzer
We already do that for a couple of cases https://github.com/biomejs/biome/blob/main/crates/biome_js_analyze/src/syntax/correctness/no_super_without_extends.rs

(https://discord.com/channels/1132231889290285117/1132602615570649110/1175767286968242266)
Test Plan

I added some test cases on biome_js_analyze and also have 100% Prettier Similarity for typescript/definite/definite.

I guess you need to run just ready or just codegen.


Ninapro regression

NinaPro DB2 support added. Different features such as filtering and feature extraction tested to work with both regression flag on and off. Default regression (dataglove) is False so old codes should work without the need to change. Preferably merge into a new branch if more test is required.

So basically, adding something like the OfflineDataHandler to prepare_data, to have a fully independent dataglove dataset seperate from EMG raw data?

So basically, adding something like the OfflineDataHandler to prepare_data, to have a fully independent dataglove dataset seperate from EMG raw data?

@AmirRezaHariri Not 100% sure what you mean here. It should all be stored in the OfflineDataHandler that is returned by prepare_data. I'm suggesting that you change how data are stored in the OfflineDataHandler so EMG data is stored in data and cyberglove labels are stored in another field. I haven't tested this code, so your mileage may vary, but you could try something like this:
regex_filters = [
    RegexFilter(left_bound = "/C", right_bound="R", values = classes_values, description='classes'),
    RegexFilter(left_bound = "R", right_bound=".csv", values = reps_values, description='reps'),
    RegexFilter(left_bound="DB2_s", right_bound="/",values=subjects_values, description='subjects')
]
metadata_fetchers = [
    ColumnFetcher('cyberglove', column_mask=[idx for idx in range(self.EMG_LEN, self.EMG_LEN + self.DATAGLOVE_LEN)])
]
emg_column_mask = [idx for idx in range(self.EMG_LEN)]
odh = OfflineDataHandler()
odh.get_data(folder_location=self.dataset_folder, regex_filters=regex_filters, metadata_fetchers=metadata_fetchers, delimiter=",", data_column=emg_column_mask)
return odh

This way you create a mask to grab the cyberglove data and store that in a cyberglove parameter, then create a separate mask just to grab EMG data. Then you can parse the cyberglove data however you want. If you wanted to just take the last value within that window, for example, you could do this: odh.parse_windows(window_size, window_inc, metadata_operations={'cyberglove': 'last_sample'}).

@cbmorrell got it.


AttributeError: module 'bf4py' has no attribute 'general'

Whenever I restart my computer, reopen VSCode and run the script where I use bf4py, I get this Error Message:
AttributeError: module 'bf4py' has no attribute 'general'
I already tried deleting the folder containing your scripts, and reinstall them. But that does not seem to help.

I tried your solution, but it didn't seem to work. Hence I tried to use other older Python versions and for different versions I had different errors.
Also I tried to see the available functions for bf4py using the console. There I always got the following output and none of the functions listed in the readme file.

Can you make sense of this and have an idea how to resolve this issue?
Your help would be greatly appreciated.

I have no idea why it's not working, to be honest. Maybe you can try the following and remove the first two lines of the python files being interpreter commands:
#!/usr/bin/env python3
-- coding: utf-8 --


Add explicit type annotation to Val, Let

Sadly, this still doesn't solve the LLVM issue for me on #449
Even when merging this PR here I still get
opt: ./out/strings.ll:13764:9: error: multiple definition of local value named 'tmp31441_4389'
        %tmp31441_4389 = load %Pos, ptr %tmp31441_4389p_4562
        ^

on
run --backend llvm examples/stdlib/string/strings.effekt

@phischu @b-studios
The next minified example is:
interface MyException {
  def myraise(): Nothing
}

def myDefault[T]{d: => T}{body: => T / MyException} = try { body() } with MyException {
  def myraise() = d()
}

def main() = {
  try {
    myDefault { val t = do myraise(); t }{ 0 };
    ()
  } with MyException {
    def myraise() = ()
  }
}

I think the problem is here:
https://github.com/effekt-lang/effekt/blob/2739c4791191fc18aab554d443ed3fa81d556f25/effekt/shared/src/main/scala/effekt/core/PolymorphismBoxing.scala#L187
https://github.com/effekt-lang/effekt/blob/2739c4791191fc18aab554d443ed3fa81d556f25/effekt/shared/src/main/scala/effekt/core/PolymorphismBoxing.scala#L218
https://github.com/effekt-lang/effekt/blob/2739c4791191fc18aab554d443ed3fa81d556f25/effekt/shared/src/main/scala/effekt/core/PolymorphismBoxing.scala#L226
Where now, we also need to check the paramaters and potentially box/unbox those.
This is only due to subtyping, which was added recently (for parametric polymorphism, representations of ValueTypes match up after instantiation, and BlockTypes do, too - since we do not instantiate implicitly! - this is however no longer true for subtyping).

@b-studios Now, the StdlibLLVMTests pass for me (when merging fix/boxing-nothing with refactor/stdlib).

Can you add the new minified example to the hotfix?

This suggests to me that using PolymorphismBoxing to also deal with Nothing and Any was maybe not a good idea.

I merged it into #449 and it indeed resolves the problems with the LLVM backend there. Let's keep boxing on our list and try to clean this up in the future.


GHA Docker:  API rate limit exceeded

It looks like my GH token is not getting passed to the Dockerfile when it's run through the GHA workflow.
https://github.com/RajLabMSSM/echolocatoR/actions/runs/3369321084/jobs/5588841392#step:33:1415
Skipping install of 'echodata' from a github remote, the SHA1 (d94fe146) has not changed since last install.
  Use `force = TRUE` to force installation
* checking for file ‘/tmp/RtmpMzIvoK/remotes7397696c0/RajLabMSSM-echoconda-3904b0b/DESCRIPTION’ ... OK
* preparing ‘echoconda’:
* checking DESCRIPTION meta-information ... OK
* checking for LF line-endings in source and make files and shell scripts
* checking for empty or unneeded directories
Omitted ‘LazyData’ from DESCRIPTION
* building ‘echoconda_0.99.8.tar.gz’

Installing package into ‘/usr/local/lib/R/site-library’
(as ‘lib’ is unspecified)
* installing *source* package ‘echoconda’ ...
** using non-staged installation via StagedInstall field
** R
** inst
** byte-compile and prepare package for lazy loading
** help
*** installing help indices
** building package indices
** installing vignettes
** testing if installed package can be loaded
* DONE (echoconda)
Downloading GitHub repo RajLabMSSM/downloadR@HEAD
Error: Failed to install 'unknown package' from GitHub:
  HTTP error 403.
  API rate limit exceeded for <IP_ADDRESS>. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)

  Rate limit remaining: 0/60
  Rate limit reset at: 2022-11-01 13:20:07 UTC

  To increase your GitHub API rate limit
  - Use `usethis::create_github_token()` to create a Personal Access Token.
  - Use `usethis::edit_r_environ()` and add the token as `GITHUB_PAT`.
Execution halted
The command '/bin/sh -c Rscript -e 'options(download.file.method= "libcurl");                 if(!require("BiocManager")) install.packages("BiocManager");                 if(!require("AnVIL"))  {BiocManager::install("AnVIL", ask = FALSE)};                 AnVIL::install(c("remotes","devtools"));                 try({remotes::install_github("bergant/rapiclient")});                 bioc_ver <- BiocManager::version();                 options(repos = c(AnVIL::repositories(),                                  AnVIL = file.path("https://bioconductordocker.blob.core.windows.net/packages",bioc_ver,"bioc"),                                  CRAN = "https://cran.rstudio.com/"),                                  download.file.method = "libcurl", Ncpus = 2);                 deps <- remotes::dev_package_deps(dependencies = TRUE)$package;                 AnVIL::install(pkgs = deps,  ask = FALSE);                 deps_left <- deps[!deps %in% rownames(installed.packages())];                 if(length(deps_left)>0) devtools::install_dev_deps(dependencies = TRUE, upgrade = "never");'' returned a non-zero code: 1
Error: exit status 1
Usage:
exit status 1
  github-actions build-push [flags]

Flags:
  -h, --help   help for build-push

Related:
https://github.com/docker/build-push-action/issues/715

For some reason this is happening again...
Error: Failed to install 'unknown package' from GitHub:
  Failed to install 'echodata' from GitHub:
  HTTP error 403.
  API rate limit exceeded for <IP_ADDRESS>. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)

Hi! This is happening to me currently. I really would love for this to work for current research. Can anyone help?

@eshults89 this is actually a bit different from your issue, though the root cause is similar (not having the GitHub token set up)

Resolved by current version of rworkflows:
https://github.com/neurogenomics/rworkflows


docs: restore work-avoidance page

Signed-off-by: mikutas<EMAIL_ADDRESS>https://argoproj.github.io/argo-workflows/work-avoidance/ (404)
Is it deleted accidentally (in #8562) ?

It appears this is where it happened: https://github.com/argoproj/argo-workflows/commit/c2f450622d93dd18ddcba8aee85543b9d020a831#diff-cb9fc269fdf9cc076fc7f14092fe63f69f0275d24e3d2e8b41c8f1ce01b3314b
There was a reorganization to the page so I think it must have accidentally been removed then. (let us know if you see anything else this might have happened to there)
By the way, your Lint error should be fixed in master now.


[galaxy] Support for 18.01

Ads support for 18.01 on the galaxy chart (not galaxy stable).

Thanks @pcm32!!!


[docs] core/edit_context.dart

Summary
As I wanted to learn about and gain a deep understanding of the super_editor API in general, I explored the individual parts of the source code.
In this process, I figured it would be very useful to add public member API docs accordingly and contribute them back to the project.
Part
In this pull request in particular, I am only adding documentation to the core/edit_context.dart file, exclusively. This should hopefully make it easier to review the individual parts of my contribution.
Guidelines
Because we need to have a common standard for documentation in order to make the developer experience when researching about the API coherent, I strictly followed Effective Dart.
In this case, the relevant articles are:

Effective Dart: Documentation
And Effective Dart for a general overview.

Assertions
I do consider assertions as part of docs in the scope of these pull request. This is because I feel they have a documenting value and can enforce what the docs state using debug-time warnings.
Imports
Any added imports in the docs changes have been made in order to create references to members from other files to allow the analyzer to recognize them. This is necessary for code navigation e.g.
This means that if I added an import to 'package:super_editor/src/default_editor/text.dart', then this happened because [TextNodePosition] was referenced in the docs.
Meta
I do think enforcing these rules to ensure coherency is important as well, which is why we should consider adding meta documentation for: how to contribute and which guidelines to follow. This might also involve adding the public_member_api_docs lint rule.
Full contribution
To query the related PRs that make up this effort of contributing docs, you can use this query.
Reviews
I hope that these contributions can be merged with the existing efforts. I tried to really understand what the API does and how and why it works the way it does and why it has been designed the way it has been designed.
Nonetheless, my documentation should of course be thoroughly reviewed. I am not sure who is best-suited for each individual review. cc @matthew-carroll @salihgueler

Hi @creativecreatorormaybenot, thank you for your contribution. In my opinion, these changes and your proposals should be addressed in an issue first and after the decisions there, it should be added as a PR.
I think of this way for each PR and change of yours that you opened up now. My suggestion would be opening discussion in the issue and then creating PRs.
@matthew-carroll what do you think?

@salihgueler @creativecreatorormaybenot - For added doc comments, those are probably fine in PRs. I'll take a look at these when I get a chance.
For broader recommendations about stylistic practices or other constraints, I agree with @salihgueler that we should start with a ticket and discussion. From there, if a suggestion is accepted, it should first be reflected in the contributing guide. Then it can be applied to the source code.

In my opinion, these changes and your proposals should be addressed in an issue first and after the decisions there, it should be added as a PR.

Hi @salihgueler, thanks for taking a look.
The reason I wrote this docs was mainly because I wanted to gain a deep understanding of the inner workings and I figured I could contribute by filling in the gaps in the docs along the way. So in this batch, there was no pain in doing it, even if it turns out it is not useful for the repo :)
If there are immediate issues with them, I can make the necessary changes or we do not have to go forward with them at all.
I will for sure await any feedback from yours and @matthew-carroll's side before opening new PRs 👍 We can also collect it in an issue if that helps.

For these first few PRs, I simply used the style that I usually use when writing code myself, for open source, or even contributing to flutter/flutter 🙂

Thanks a lot for the in-depth review @matthew-carroll. I rephrased and moved docs to address all of your concerns.


PX4Flow not detected on boot

I have PX4FLow connected to Pixhawk via I2C.
Everything is fine on a cold boot initiated by plugging in USB.
But on a cold boot from battery/power module, the flow module is not detected.
Inserting a 4 second delay into rc.sensors prior to "px4flow start" fixed the problem (3 seconds is not enough).

Hi @kd0aij,
This may be related to https://github.com/PX4/Firmware/issues/2001#issuecomment-93524623
The HW should be here next week for me to test.

Thanks David. Wish I had seen that a few days ago!

David, I tried to order the FLOW thru 3DR and it was back-ordered for who knows how long. I bought 2 from the UK distributor. Let me know if you need to borrow one. I can ship one out to you today.

@pkocmoud Thank you I may need to take you up on the offer. I am checking on an ETA and will let you know.

@pkocmoud Thank you again, but the hw is on it's way here.

I suspect the quick fix would be to have the px4flow driver try for a few seconds before it gives up. However, understanding the power sequencing would be great.

The board arrived - Duh- I forgot to ask for the j-tag connector to be added. I have some Samtec .05 ordered and will look at this as soon as I can debug it.
Would somebody please describe the cabling setup. A photo would work.
David

I just followed these setup instructions:
https://pixhawk.org/modules/px4flow
and connected px4flow I2C to pixhawk I2C.
Just be sure you orient px4flow Y axis toward front of vehicle, or change
SENS_FLOW_ROT to reflect the actual orientation.
On Mon, May 11, 2015 at 11:08 AM, David Sidrane<EMAIL_ADDRESS>wrote:

The board arrived - Duh- I forgot to ask for the j-tag connector to be
added. I have some Samtec .05 ordered and will look at this as soon as I
can debug it.
Would somebody please describe the cabling setup. A photo would work.
David
—
Reply to this email directly or view it on GitHub
https://github.com/PX4/Firmware/issues/2145#issuecomment-100980597.

--
Mark Whitehorn
<EMAIL_ADDRESS>

@kd0aij @pkocmoud @LorenzMeier
I have tested with PX4FMUV2 with ONLY the power module connected.  Test was conducted by disconnecting my bench power supply.
PX4 Firmware c06ba047e2ded236b8ce5e17694dfca8b8d6f067
With

Old PX4 flow bootloader - https://github.com/PX4/Flow/blob/master/px4flow_bl.elf
Current  Bootloder https://github.com/PX4/Bootloader/commit/a8c0160397062d1760f35ef8eda84ef0db709e63
New Bootloader https://github.com/PX4/Bootloader/tree/vetting

I can not reproduce a failure. By Failure I an referring to not recieiving  [PX4FLOW] on I2C bus 1 at 0x42 (bus: 100 KHz, max: 400 KHz) from this [issue]  (https://github.com/PX4/Firmware/issues/2001#issuecomment-91478230)
There was a bug in the booloader (built after Feb 2014 and before  Mar 27 2015 - on the current master) that could have caused AN issue - a boot without USB connected could hang in the uab library code.  But since a delay fixed the issue as reported by   @h46incon I do not think that was the root cause.
Was there a change in any startup script timing?

@kd0aij - Would you be able to re-test with current PX4 Firmware at c06ba047e2ded236b8ce5e17694dfca8b8d6f067 and see if the problem still exists. If So the I would like you to try the Boorloader from  at https://github.com/PX4/Bootloader/tree/vetting fdc247e and let me know if it fixes the issue.

problem still present with latest master
nsh> ver all
FW git-hash: c06ba047e2ded236b8ce5e17694dfca8b8d6f067
Build datetime: May 18 2015 19:58:49
cold boot with USB power:
sercon: Registering CDC/ACM serial driver
sercon: Successfully registered the CDC/ACM serial driver
[i] microSD mounted: /fs/microsd
nshterm [6:70]
param: selected parameter default file /fs/mtd_params
[param] Loaded: /fs/mtd_params
[rgbled] on I2C bus 2 at 0x55 (bus: 100 KHz, max: 100 KHz)
nsh: pca8574: command not found
 1:   SYS_USE_IO: match
 4010: + SYS_AUTOSTART: match
px4io: CRCs match
dataman: Power on restart, data manager file '/fs/microsd/dataman' size is 1015s
[MS5611_SPI] on SPI bus 4 at 2 (11000 KHz)
ms5611: no device on bus 4
[MS5611_SPI] on SPI bus 1 at 3 (11000 KHz)
ms5611: no device on bus 1
ms5611: no device on bus 2
<adc> init done
ver hwcmp match: PX4FMU_V2
hmc5883: no device on bus 2
hmc5883: no device on bus 1
mpu6000: driver start failed
[MPU6000] on SPI bus 1 at 4 (1000 KHz)
[L3GD20] on SPI bus 1 at 1 (11000 KHz)
[LSM303D] on SPI bus 1 at 2 (11000 KHz)
meas_airspeed: no MS4525 airspeed sensor connected
ets_airspeed: no ETS airspeed sensor connected
ets_airspeed: no ETS airspeed sensor connected
**** [PX4FLOW] on I2C bus 1 at 0x42 (bus: 100 KHz, max: 400 KHz)*******************
telem> PREFLIGHT FAIL: MAG #0 UNCALIBRATED
telem> Not ready to fly: Sensors need inspection
commander: INVAL: ARMING_STATE_STANDBY_ERROR - ARMING_STATE_STANDBY
[px4io] default PWM output device
mavlink_if0: mode: 0, data rate: 1000 B/s on /dev/ttyS1 @ 57600B
ver hwcmp match: PX4FMU_V2
[i] MULTICOPTER
+ MAV_TYPE: unchanged
[px4io] mixer sent
[i] Mixer: /etc/mixers/quad_x.main.mix on /dev/pwm_output0
 1: + INAV_ENABLED: match
attitude_estimator_q: started
.
[i] Addons script: /fs/microsd/etc/extras.txt
sdlog2: log buffer size: 22528 bytes
waiting 4 seconds for PX4Flow to boot
navigator: Could not clear geofence
navigator: offboard mission updated: dataman_id=0, count=0, current_seq=0
mavlink_if0: DISABLING HARDWARE FLOW CONTROL
telem> settings autosaved
position_estimator_inav: baro offs: 1582
****px4flow: already started ****************************************************************

NuttShell (NSH)
nsh>

cold boot from battery:
sercon: Registering CDC/ACM serial driver
sercon: Successfully registered the CDC/ACM serial driver
[i] microSD mounted: /fs/microsd
nshterm [6:70]
param: selected parameter default file /fs/mtd_params
[param] Loaded: /fs/mtd_params
[rgbled] on I2C bus 2 at 0x55 (bus: 100 KHz, max: 100 KHz)
nsh: pca8574: command not found
 1:   SYS_USE_IO: match
 4010: + SYS_AUTOSTART: match
px4io: CRCs match
dataman: Power on restart, data manager file '/fs/microsd/dataman' size is 1015s
[MS5611_SPI] on SPI bus 4 at 2 (11000 KHz)
ms5611: no device on bus 4
[MS5611_SPI] on SPI bus 1 at 3 (11000 KHz)
ms5611: no device on bus 1
ms5611: no device on bus 2
<adc> init done
ver hwcmp match: PX4FMU_V2
hmc5883: no device on bus 2
hmc5883: no device on bus 1
mpu6000: driver start failed
[MPU6000] on SPI bus 1 at 4 (1000 KHz)
[L3GD20] on SPI bus 1 at 1 (11000 KHz)
[LSM303D] on SPI bus 1 at 2 (11000 KHz)
meas_airspeed: no MS4525 airspeed sensor connected
ets_airspeed: no ETS airspeed sensor connected
ets_airspeed: no ETS airspeed sensor connected
****px4flow: no PX4 FLOW connected****************************************************************
telem> PREFLIGHT FAIL: MAG #0 UNCALIBRATED
telem> Not ready to fly: Sensors need inspection
commander: INVAL: ARMING_STATE_STANDBY_ERROR - ARMING_STATE_STANDBY
[px4io] default PWM output device
mavlink_if0: mode: 0, data rate: 1000 B/s on /dev/ttyS1 @ 57600B
ver hwcmp match: PX4FMU_V2
[i] MULTICOPTER
+ MAV_TYPE: unchanged
[px4io] mixer sent
[i] Mixer: /etc/mixers/quad_x.main.mix on /dev/pwm_output0
 1: + INAV_ENABLED: match
attitude_estimator_q: started
.
[i] Addons script: /fs/microsd/etc/extras.txt
****waiting 4 seconds for PX4Flow to boot****************************************************
navigator: Could not clear geofence
navigator: offboard mission updated: dataman_id=0, count=0, current_seq=0
sdlog2: log buffer size: 22528 bytes
mavlink_if0: DISABLING HARDWARE FLOW CONTROL
telem> settings autosaved
position_estimator_inav: baro offs: 1583
[PX4FLOW] on I2C bus 1 at 0x42 (bus: 100 KHz, max: 400 KHz)
****PX4Flow start succeeded*********************************************************************

NuttShell (NSH)
nsh>

@davids5
The startup messges above show that the Flow module is not detected without a 4 second pause when booting from battery.
Do you mean to replace the bootloader in the FMU or the PX4Flow?
There are no instructions for the Flow module... will it require installing a JTAG connector?

@kd0aij Thank you. I guess we need to understand the difference between our two systems. Can you sent me your parameters, any diffs to scripts  and a list of what is connected to what io.
I only have debug port, CAN 1 and the px4 flow connected.
I was speaking of the px4flow's bootloader - yes you have to add the connector to use the jtag (I can Send you one if need be)
I'm on a mobile device, I will check the schematics tomorrow and see if there's a way to do it over the serial port using BOOT0/1

The only change I've made to startup is to add extras.txt:
nsh> cat /fs/microsd/etc/extras.txt
# Check for flow sensor
echo "waiting 4 seconds for PX4Flow to boot"
sleep 4
if px4flow start
then
        echo "PX4Flow start succeeded"
fi

The PX4Flow and external mag are connected via I2C splitter, but behavior is the same with external mag disconnected.
Here is the parameter file: https://copy.com/ZaRALrEZUJqGX6Ow
I hope the bootloader doesn't need to change (or that it can by upgraded over USB), so existing users won't have to buy a JTAG probe and solder a connector.

Mark, can you query the board for the boot loader version you have?
From: Mark Whitehorn<EMAIL_ADDRESS>Sent: Tuesday, May 19, 2015 10:04 AM
To: PX4/Firmware
Cc: Phillip J. Kocmoud
Subject: Re: [Firmware] PX4Flow not detected on boot (#2145)
The only change I've made to startup is to add extras.txt:
nsh> cat /fs/microsd/etc/extras.txt
Check for flow sensor
echo "waiting 4 seconds for PX4Flow to boot"
sleep 4
if px4flow start
then
    echo "PX4Flow start succeeded"

fi
The PX4Flow and external mag are connected via I2C splitter, but behavior is the same with external mag disconnected.
Here is the parameter file: https://copy.com/ZaRALrEZUJqGX6Ow
I hope the bootloader doesn't need to change (or that it can by upgraded over USB), so existing users won't have to buy a JTAG probe and solder a connector.
—
Reply to this email directly or view it on GitHubhttps://github.com/PX4/Firmware/issues/2145#issuecomment-103538901.

Don't know how to do that...
On Tue, May 19, 2015 at 9:11 AM, pkocmoud<EMAIL_ADDRESS>wrote:

Mark, can you query the board for the boot loader version you have?
From: Mark Whitehorn<EMAIL_ADDRESS>Sent: Tuesday, May 19, 2015 10:04 AM
To: PX4/Firmware
Cc: Phillip J. Kocmoud
Subject: Re: [Firmware] PX4Flow not detected on boot (#2145)
The only change I've made to startup is to add extras.txt:
nsh> cat /fs/microsd/etc/extras.txt
Check for flow sensor
echo "waiting 4 seconds for PX4Flow to boot"
sleep 4
if px4flow start
then
echo "PX4Flow start succeeded"
fi
The PX4Flow and external mag are connected via I2C splitter, but behavior
is the same with external mag disconnected.
Here is the parameter file: https://copy.com/ZaRALrEZUJqGX6Ow
I hope the bootloader doesn't need to change (or that it can by upgraded
over USB), so existing users won't have to buy a JTAG probe and solder a
connector.
—
Reply to this email directly or view it on GitHub<
https://github.com/PX4/Firmware/issues/2145#issuecomment-103538901>.
—
Reply to this email directly or view it on GitHub
https://github.com/PX4/Firmware/issues/2145#issuecomment-103541272.

--
Mark Whitehorn
<EMAIL_ADDRESS>

@davids5 BTW, USB is not connected to my PX4Flow in normal operation, just I2C

@kd0aij
[POWERMOD]
|
[FMUV2]----i2c---[PX4FLOWV1]
|> > - FTDI debug cable (1)
|>> - FTDI debug cable (2)
So the only connections at power application are Power Module. PX4FLOW with 12" I2C cable and Arming Switch. Then I add the FTTDI debug cable.
The trace below was with your parameters downloaded from GCS then all USB disconnected
and the FTDI cable unplugged - connect power 6.0 V lab supply to the POWER module. Then plug in the FTDI cable. (Just to prevent back feed powering)
þ=f¸sercon: Registering CDC/ACM serial driver
sercon: Successfully registered the CDC/ACM serial driver
[i] microSD mounted: /fs/microsd
nshterm [6:70]
param: selected parameter default file /fs/mtd_params
[param] Loaded: /fs/mtd_params
[rgbled] on I2C bus 2 at 0x55 (bus: 100 KHz, max: 100 KHz)
nsh: pca8574: command not found
 1:   SYS_USE_IO: match
 4010: + SYS_AUTOSTART: match
px4io: CRCs match
dataman: Power on restart, data manager file '/fs/microsd/dataman' size is 101504 bytes
[MS5611_SPI] on SPI bus 4 at 2 (11000 KHz)
ms5611: no device on bus 4
[MS5611_SPI] on SPI bus 1 at 3 (11000 KHz)
ms5611: no device on bus 1
ms5611: no device on bus 2
<adc> init done
ver hwcmp match: PX4FMU_V2
hmc5883: no device on bus 2
hmc5883: no device on bus 1
mpu6000: driver start failed
[MPU6000] on SPI bus 1 at 4 (1000 KHz)
[L3GD20] on SPI bus 1 at 1 (11000 KHz)
[LSM303D] on SPI bus 1 at 2 (11000 KHz)
meas_airspeed: no MS4525 airspeed sensor connected
ets_airspeed: no ETS airspeed sensor connected
ets_airspeed: no ETS airspeed sensor connected
[PX4FLOW] on I2C bus 1 at 0x42 (bus: 100 KHz, max: 400 KHz)
telem> PREFLIGHT FAIL: MAG #0 UNCALIBRATED
telem> Not ready to fly: Sensors need inspection
commander: INVAL: ARMING_STATE_STANDBY_ERROR - ARMING_STATE_STANDBY
[px4io] default PWM output device
mavlink_if0: mode: 0, data rate: 1000 B/s on /dev/ttyS1 @ 57600B
ver hwcmp match: PX4FMU_V2
[i] MULTICOPTER
+ MAV_TYPE: unchanged
[px4io] mixer sent
[i] Mixer: /etc/mixers/quad_x.main.mix on /dev/pwm_output0
 1: + INAV_ENABLED: match
attitude_estimator_q: started
.

NuttShell (NSH)
nsh> navigator: Could not clear geofence
navigator: offboard mission updated: dataman_id=0, count=0, current_seq=0
mavlink_if0: DISABLING HARDWARE FLOW CONTROL
sdlog2: log buffer size: 22528 bytes
telem> settings autosaved
position_estimator_inav: baro offs: 117
ver all
HW arch: PX4FMU_V2
FW git-hash: c06ba047e2ded236b8ce5e17694dfca8b8d6f067
Build datetime: May 18 2015 13:26:56
Toolchain: 4.8.4 20140725 (release) [ARM/embedded-4_8-branch revision 213147]
MCU: STM32F42x, rev. A

WARNING   WARNING   WARNING!
Revision A has a silicon errata
This device can only utilize a maximum of 1MB flash safely!
http://px4.io/help/errata

UID: 26001A:34324708:31323533

So what is different?
What model number is your Power Module?
What is the Voltage of your Batteries into the PM?

the power module is the one that comes with the Pixhawk; I can't see a model number on it.
I'm using both 3S and 4S LiPo packs on this quad, 3S for these tests.
Are you using the latest master PX4Flow firmware aad67ed ?

@kd0aij Can you measure the voltage into the PM?
I followed you original setup using GCS and it flashed the board. Not Sure of the version .
But I just built Flow master locally and and downloaded aad67ed, Same behaviour as before.
I am not convinced it is that bootloader. But lets rule it out - Try this:
Option 1) Can you solder? - If So supply the USB V5 (pin1) from the i2c (pin1) with a jumper wire.
Option 2) Plug the flow into a Phone Charger at the same time as the PM is connected.
I can not see a definitive way to determine the version of the bootloader. On Windows you can run usbview and see if the descriptors are messed up. That would represent the bootloader that is in master as a bin file (I was calling old)

OK, I've also demonstrated the problem flashing via QGC and make upload.
I'm not sure why connecting USB pin1 to I2C pin1 is of interest, since
there's nothing connected to the Flow's USB port in either test scenario.
In both cases, the Flow is powered via I2C;
But maybe you mean connecting the FMU's USB pin1 to the Flow's I2C pin1...
I'll just check whether I2C power is delayed when booting from battery.
On Tue, May 19, 2015 at 2:54 PM, David Sidrane<EMAIL_ADDRESS>wrote:

@kd0aij https://github.com/kd0aij Can you measure the voltage into the
PM?
I followed you original setup using GCS and it flashed the board. Not Sure
of the version .
But I just built Flow master locally and and downloaded aad67ed, Same
behaviour as before.
I am not convinced it is that bootloader. But lets rule it out - Try this:
Option 1) Can you solder? - If So supply the USB V5 (pin1) from the i2c
(pin1) with a jumper wire.
Option 2) Plug the flow into a Phone Charger at the same time as the PM is
connected.
I can not see a definitive way to determine the version of the bootloader.
On Windows you can run usbview and see if the descriptors are messed up.
That would represent the bootloader that is in master as a bin file (I was
calling old)
—
Reply to this email directly or view it on GitHub
https://github.com/PX4/Firmware/issues/2145#issuecomment-103664993.

--
Mark Whitehorn
<EMAIL_ADDRESS>

@kd0aij are you on Skype? Please call me david_s5

[SOLVED] Sort - of
With @kd0aij we have determined that his flow does not skip the 5 seconds of boot delay on his hardware even when powered off of ONLY i2c.
We do not know the cause as of yet. It might be an older bootloader.  You can simply determine if you have the issues by powering the Flow only via I2C and observer the orange LED. If it blinks rapidly for ~ 5 Seconds -  the PX4Flow is entering Bootloader mode, at power on, and you you will need to use  Mark's fix
cat /fs/microsd/etc/extras.txt
# Check for flow sensor
echo "waiting 4 seconds for PX4Flow to boot"
sleep 4
if px4flow start
then
        echo "PX4Flow start succeeded"
fi

We will determine if a bootloader upgrade will solve the issues and determine the best way to deploy the new Bootloader.
David

@kd0aij A change to the driver would be welcome which exits the start handler with return code 0, tries to connect for 5 seconds and eventually gives up. I don't want to put the sleep solution which holds up the overall boot into master though.

I'm unable to see the PX4Flow with the BlackMagic probe and gdb "mon swdp_scan" command.
Is the procedure the same as for PX4FMU and IO?

Hi @kd0aij
Yes
Here is what I get.
top                                           BOTTOM
[BM]-------CABLE-----------------[PX4FLOW]
^Pin 1 (red)------------------------^Pin 1 (red)
01:35:39 {vetting} ~/mainline/Bootloader$ arm-none-eabi-gdb px4flow_bl.elf
GNU gdb (GNU Tools for ARM Embedded Processors) <IP_ADDRESS>40731-cvs
Copyright (C) 2013 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "--host=i686-linux-gnu --target=arm-none-eabi".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from
mainline/Bootloader/px4flow_bl.elf...done.
(gdb) target extended-remote /dev/ttyACM0
Remote debugging using /dev/ttyACM0
(gdb)  mon swdp_scan
Target voltage: 3.3V
Available Targets:
No. Att Driver
 1      STM32F4xx
(gdb) mon
Black Magic Probe (Firmware 1.5-00279-gfd9eef8, build 20141028)
Copyright (C) 2011  Black Sphere Technologies Ltd.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>

Then I have to conclude there's something wrong with my PX4Flow module, or give up trying to solder JTAG connectors :)  But they work on my FMUv1 and PX4IO boards... 2 out of 3 ain't bad, I guess.

Update: This is a problem in some flow boards and their boot loader. We need a workaround for the firmware driver.

This is fixed on master and beta, closing.

I'm experiencing a possibly related issue.  I just got my PX4FLOW the other day and I updated it to the latest stable release via QGC.  My Pixhawk is also updated to latest stable also via QGC.  I can talk to the PX4FLOW direct via USB and get an image in QGC, and see the variables change as expected in the analyze tab.
If I plug it into the Pixhawk via an I2C hub, along with the GPS magnetometer, and power the system up (either via USB or via battery) - neither the PX4FLOW or the mag work.  I see the LEDs on the PX4FLOW board blink quite dimly a few times, then they stop.  I haven't had a chance yet to put a scope on SDA/SCL to see the state of the I2C bus.
However, if I boot it up with just the GPS mag connected to the I2C bus and boot it up, it works as expected.  Once booted, if I then hot-plug the PX4FLOW onto the I2C bus and then do 'px4flow start' from nsh, it detects it and seems to work just fine.
Any thoughts?  It's a brand new PX4FLOW direct from 3DR, so I'd hope it would be up to date in terms of bootloader, etc.

I'm having the same issue as tangentaudio. Has this ever been fixed?

@rhamrah the console. See https://dev.px4.io/en/debug/system_console.html

@rhamrah the console. See https://dev.px4.io/en/debug/system_console.html

Thanks David, it really helped. Could you please let me know of your ideas/comments on the question I asked in #10671 ?


There's an absence of tests

Is there an opportunity for unit tests within this library?

I’ll close this in support of the comments here. I’m comforted given the fact that this is just a wrapper.


Current state + Vue3 support

Hey 👋🏻
Is there any Vue3 support planned for the library?
Also - what is the current plan of further support for the libraray?

Hi there, there are no plans of doing any updates for this project.


Create a League Client client

An LCU client would be nice.

Work has started in features/LeagueClient.


Can L515 be used in industrial buildings with fog？

Hi @Zhang-Qinghui
I want to point you to some documentation around the L515 camera in order for you to determine if the camera fits the environment you are looking at:
https://www.intelrealsense.com/download/13061/
https://www.intelrealsense.com/optimizing-the-lidar-camera-l515-range/
Have a look at both of these locations and read through the material.  This should give you a better understanding of the L515 camera.

Thanks for your reply. In the document you posted, I didn't see any information about whether L515 can be used in a foggy environment. I just want to know whether the L515 can be used in a foggy environment. Looking forward to your reply.

Hi @Zhang-Qinghui
We believe that a foggy environment wouldn't be ideal for the L515 camera.  Anything that can block or refract the laser pattern that the L515 camera uses to determine depth will cause issues in determining depth.  We suggested reading the document so that you have an understanding of the technology behind the camera.  We also suggest you validate in the environment you plan on operating the camera in.
*If we don’t hear from you in 7 days, this issue will be closed.


Simplify CMake scripts and follow modern conventions

This patch series rewrites the CMake build scripts for AMCL to both simplify
and shorten them and to follow common conventions that will make usage
of AMCL by downstream projects much easier.  It also fixes several minor bugs in the examples and test code that were identified during the rewrite.
First, the prior build scripts were extremely verbose.  The AMCL curve
and RSA parameters were repeated in the CMakeLists.txt in each
subdirectory.  The "string(REPLACE ...)" and "configure_file(...)"
commands to expand a template source file with these parameters were
repeated for every single template file.  This repetition was both
error prone when adding new curves and obscured the interesting
details in the various build scripts.
Secondly, the scripts did not build the project in a modern,
"standard" way.  For example: Install paths were hardcoded, rather
than using the GNUInstallDirs module, breaking installation on
multi-arch systems. Unnecessary properties were set when the default
would suffice, e.g., install file permissions. Built libraries were
copied around the build tree to let the Python tests execute, rather
than simply setting the LD_LIBRARY_PATH (or equivalent) environment
variable for the test. CMake *config.cmake and pkgconfig *.pc files
were not exported to simplify importing by downstream users. And more.
Fixing these issues one pull request at a time isn't feasible, so this
commit modernizes the CMake usage in one go:

ACML curve and RSA parameters are defined in one location,
cmake/AMCLParameters.cmake

Functions for expanding template files given a curve name or RSA
level are defined in one location, cmake/AMCLExpand.cmake

Templated source files are differentiated from actual source files
in the standard fasion, a '.in' suffix. E.g., *.c.in or *.h.in.

Expanded template files are placed in the build directory, but
complete source files are not needlessly copied to the build
directory.

All supported RSA levels and curves are built by default. This
simplifies packaging for distributions. The AMCL_RSA and AMCL_CURVE
options can be set to override that default.

The WORD_SIZE (aka AMCL_CHUNK) is automatically detected when
possible (see cmake/DetermineWordSize.cmake). The user may still
manually specify if desired.

The de facto standard BUILD_DOCS and BUILD_TESTING options are used
to conditionally compile the docs and tests.

Install locations are determined using the standard GNUInstallDirs
module. This allows packaging for easy packaging for variety of
systems, including all standard Linux distributions.

Versions and SO versions are set on library targets so that CMake
will generate and install the appropriate versioned symlinks.

A *Config.cmake script is exported so that downstream CMake projects
can simply call find_package(AMCL) to use the library. E.g., the
libamcl_rsa_2048 can be used by simply calling
target_link_libraries(myprog AMCL::rsa_2048).

A pkg-config *.pc file is exported so that downstream autotools
projects can easily find the library.

The CPack configuration is moved to CPackConfig.cmake to not clutter
up the main build logic.

The remainder of this patch series fixes a variety of small bugs in
the examples, test scripts, and build process that were uncovered as
part of this rewrite.

Looks like I need to either update the mingw configs in the Makefile to specify a WORD_SIZE or update the DetectWordSize to support the mingw compilers.
The Makefile still has a bunch of AMCL_CHUNK= lines that should be updated to WORD_SIZE=. Or the CMake should be changed to accept either name.

These build scripts now handle all of the cross-compilation oddities (at least as well as the previous version did), but the CI fails because the log output exceeds the 4 MB limit imposed by Travis.
A reorganization of the Makefile qa target is probably the correct way to fix this.  Reducing the total output (by say not running make doc on every target) is another option.
Any thoughts @kealan ?

(Right now, the tip of this branch replaces the qa target with one full build --- all supported curves and RSA levels -- per architecture.  This too is killed by Travis because it doesn't output anything for over 10 minutes when doing the ASAN tests.  The Docker/Makefile combo appears to buffer output during one build, so Travis doesn't see any activity until that whole build & test is complete.  This too could probably be rectified.)

Hi David Thanks for this substantial contribution. I have just made a PR to remove "make doc" from all the builds. When it is merged could you please re-base and bump the VERSION file?
What is your view on the way the code is built? We seemed to arrived at a very complicated build system unlike anything I have seen in other projects! We could remove the Makefile and just have a shell script for building the library for test.
Also, I am not sure what is the advantage of docker is at least for testing. It would useful to have a Dockerfile to build the library using the default configuration as defined in cmake.

Thanks for the Makefile changes.  The Travis builds completed fine this time.
I've bumped the version to 4.7.0.
I think simplifying the Makefile/test script/Docker stuff makes.   If I get some time, I'll open an issue to discuss possible approaches.
The docker file did simplify testing the cross-compiled variants.  I didn't have to install wine, mingw-64, etc. locally.  (Although I did eventually anyway, because running through Docker was much slower on my Mac.)

@kealan hold off on merging this.  My hack in AMCLConfig.cmake.in to build up the list of ACML_LIBRARIES (overriding add_library) isn't safe.
CMake segfaults if find_package(AMCL) is executed more than once (say by two dependencies independently).
I'll rewrite that at update this branch.

@kealan Fixed the hack in AMCLCOnfig.cmake.in, so this should be ready for review/merge once Travis completes.

@kealan Any chance you can look at this in the next few days?

Sorry David for the delay but we got sidelined with another project. We had a good look at this for the last couple of days and it is a really great improvement.


DLRM: provide a single script for generating a fake dataset

To generate a fake dataset, I've used the following command sequence:
$ cd $WORKSPACE/inference/v0.5/recommendation
$ python -m pip install numpy --user
$ cd tools/
$ ./make_fake_criteo.sh terabyte0875
$ mv fake_criteo/ ../

Here, make_fake_criteo.sh calls quickgen.py which is also in the tools/ directory. Hence, the need to descend there first.
However, all the make_fake_criteo.sh script does is it creates a new directory if it doesn't exist, checks that the only argument is one of the kaggle|terabyte0875|terabyte and passes it to quickgen.py:
python quickgen.py --num-samples=4096 --profile=$QUICKGEN_PROFILE --output-dir=$OUTPUT_DIR

Actually, it even gets in the way because it forcibly uses python not python3 (which are different on e.g. Ubuntu 16.04). For example, I didn't have NumPy installed for Python 2, hence had to install it first.
This functionality can be folded into quickgen.py itself.

Here's a good spot to error if the profile argument is not one of the kaggle|terabyte0875|terabyte (including the default value).

closing this @psyhtest  for now and please reach out @mnaumovfb if needed.


Demo moving hook into a function (do not merge/review)

DO NOT MERGE. FOR CODE DEMO PURPOSE ONLY.
Changes:

Replace the bootstrap hook with a simple exported async function.
=> We could do the same for all hooks
Extract the questions into a file commands/generate/question.ts to reduce noise in the index of generate command
Moving the "ui-framework" choices in the commands/generate/ui-framework/index.ts file. As an exported const.

Demo successful and accepted as a change !~


Unified use of collect_jar and binary_common, other cleanups

Many places were directly using file or files on various jars when
building up the classpaths. This was not resilient to later changing
those jars to being true java targets (and thus having runtime
dependencies).
Also, there was significant redundancy in the various scala rules each
analyzing their deps and runtime_deps to build up the compile and
runtime jar lists.
A new function _collect_jars_from_common_ctx has been created to reduce
this redundancy. This function looks at ctx.attr.deps and
ctx.attr.runtime_deps to build up compiletime and runtime jars. It also
assumes an automatic dependency on scala-reflect and scala-library.
(This allows eliminating weirdness where both those jars were being
separately added to the compiletime and runtime classpath.) All these
collections are via _collect_jars, rather than files, and thus should be
resilient to later changing the jar sources to true java targets that
have other runtime dependencies. Note that _collect_jars has a failsafe
to look at files when given a non-java target anyway.
Note that the function has parameters for extra_deps and
extra_runtime_deps. This is used by scala_test and scala_junit_test to
implicitly include testing library dependencies and scala_repl to
implicitly include the necessary scala-compiler dependency (since that
holds the main_class runner).
Finally, scala_repl now uses scala_binary_common rather than setting up
its own scala provider, etc. Beforehand, scala_repl was using
commot_attrs, which stipulate srcs and so forth to compile but the
implementation was never actually invoking the compile. Now, scala_repl
just uses _scala_binary_common like scala_binary, scala_test, etc. Added
a test that a REPL with sources actually compiles and can use them.
This did require 'outputs' and generation of a deploy_jar for scala_repl
(since scala_binary_common references them).
Other cleanups or important notes:
The ClassPath of the written manifest is now blank (previously had the
scala-library in it). The restructuring adds the scala-library to the
rjars before passing them to the deploy_jar builder. Thus, scala-library
should end up placed in the deploy jar anyway.
As example of need to consider transitive dependencies for these files,
scalatest_reporter actually requires scala_xml. However, when added as
just a file, would not end up adding scala_xml. Now, using collect_jar
that xml addition happens automatically.
IMPORTANT NOTE: Also for scala_test, CANNOT directly depend on
_scalatest using _collect_jar. _scalatest points to an http_jar, which
runs ijar and exposes that result as the compiletime jar. However,
scalatest defines and exposes macros and so this falls apart. Ideally,
the scalatest label would be retargeted to something like
scala_macro_library, which exposes the right compiletime jars, runtime
jars and providers. (Reverting back to http_file would work but cause
other issues so the stopgap was to mnaually inject the runtime jars as
the compiletime jars. Since no actual dependencies in current scalatest
import, this ends up looking identical as before.)
Further note for future reference that http_jar runs ijar because it is
roughly equivalent to http_file followed by java_import (and java_import
runs ijar).
Remove the various requirements that single_file = true since using
_collect_jar means don't need reliance on file.
Removed scalacompiler from the compiletime class path for compilation of
a scala target. It was not being added to the runtime classpath so this
could have led to code compiling but then failing to load the proper
classes at runtime.
In thrift.bzl, use executable to refer to jar instead of file.

Please notice the warning regarding the (somewhat temporary) workaround of _scalatest using http_jar

Addresses #180 and #181

As a bonus demonstration of the change, scala_test no longer needs to directly depend on scala-xml since that dependency is carried via test_reporter.
Note also the movement of test_reporter to being a runtime dependency.

This is great!

I should warn (in case some random target somewhere breaks after this) that this does tighten up some of the dependencies a little (you no longer automatically get the compile-time dependency on scalacompiler all the time, scala_test no longer gets an automatic dependency on scala-xml and the test_reporter, etc.).
So, it is possible previous targets that were not properly declaring their dependencies will need cleanup. However, I assert that this is good in the long run anyway....

Bugs in overbroad deps are always better to fix, if you ask me, so I agree
with you.
On Thu, Apr 20, 2017 at 3:43 PM Stephen Twigg<EMAIL_ADDRESS>wrote:

I should warn (in case some random target somewhere breaks after this)
that this does tighten up some of the dependencies a little (you no longer
automatically get the compile-time dependency on scalacompiler all the
time, scala_test no longer gets an automatic dependency on scala-xml and
the test_reporter, etc.).
So, it is possible previous targets that were not properly declaring their
dependencies will need cleanup. However, I assert that this is good in the
long run anyway....
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/bazelbuild/rules_scala/pull/181#issuecomment-296008195,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAEJdmzUTRdnPOZucGNGxpYGm_jnGvqnks5ryAm_gaJpZM4NCbLE
.

by the way, this came in handy for me today. Bumping to scalatest 3.0.1 was as easy as using this with the right bind target to my repos local target for scalatest.
Thanks for cleaning this up!

Great to hear other users are also seeing benefits :D


Always display execution time configuration option

Got the following feedback from a user:

Hello All. A quick question: I love the duration (time-taken) displayed at bottom left of Code block. However, when the execution completes, this duration goes away. Is there anyway to retain last run duration. This is helpful to understand how long each command is taking to run. I am using RunMe with VSCode.

Figure out if we can always display the execution time and make it configurable at cell level

I think this is done, no @degrammer & @joseeantonior? This doesn't need a config option; very non-controversial to have the execution duration be visible at all times.

imo this is pretty straightforward and useful. If you're good to close I'm good as well.

imo this is pretty straightforward and useful. If you're good to close I'm good as well.

let's see if @degrammer has anything he'd like to clarify. otherwise let's close.
PS: Start-, end-time, as well as exec duration is also available in Runme cloud now, too.


Some malformed queries can take down nebula/node server

I have been able to submit queries from the web UI that result in nebula and node servers going down. That shouldn't be possible, they should just return some error code. Will find the example when it happens next.

Need a bit more information about this.


How can i use this with relations ?

If a have a object A with a 'belongTo' relation to an other object B.
When i update the object B, the name of the object A, and i save, i have to entries in database without link.
How can i log that this activities are linked ?

do you have solution?

Yes. It's ok.
Not real issue. Thanks


My second revup foo

Topic: foo2
Relative: foo

Reviews in this chain:
└https://github.com/josh-raanan-skydio/revup/pull/1 My first revup foo
　└https://github.com/josh-raanan-skydio/revup/pull/3 My second revup foo

#
head
base
diff
date
summary

0
2f5c2fe2
92ecfc26
diff
Feb 2 13:56 PM
1 file changed, 1 insertion(+)


MoqComplete is suggested for files without references to Moq

I do use Moq in the solution, but the suggestion balloon appears regardless of whether the file that's currently open contains a reference to Moq.
e.g.

If this is by design, could you dial it back a bit so it only shows if the file uses moq, rather than the solution?
Cheers!

That's a new feature of the IDE, so I don't think we can dial it down. See #9:

Starting with Rider 2020.2 EAP2 there is a way to automatically suggest plugin, when it has a certain reference.

You'd need to ask JetBrains, but I don't think they could implement something more precise easily.
/cc @van800

There was a problem in EAP, that even if plugin is installed it would still show notification. But that should not happen in release. So would installing plugin or clicking "Ignore Unknown features" work?

That's a new feature of the IDE, so I don't think we can dial it down. See #9:

Starting with Rider 2020.2 EAP2 there is a way to automatically suggest plugin, when it has a certain reference.

You'd need to ask JetBrains, but I don't think they could implement something more precise easily.
/cc @van800

Ah fair enough, if it just targets references there's not really much you can do.
I've since had a look at the plugin and it seems quite useful so I guess the system worked - I'll just install it haha!
I'll close this issue, cheers for responding.


MSID: 101299 Version: 1 DOI: 10.21203/rs.3.rs-4390765/v2

MSID: 101299
Version: 1
Preprint DOI: https://doi.org/10.21203/rs.3.rs-4390765/v2
Step 1. Awaiting reviews
Editorial to post reviews via hypothesis
Useful links:

DocMap: https://data-hub-api.elifesciences.org/enhanced-preprints/docmaps/v2/by-publisher/elife/get-by-manuscript-id?manuscript_id=101299
New model tracking: https://docs.google.com/spreadsheets/d/1_fHaoOy7hjyocptKtVJRijeNpUY4hBS7Ck_aVmx6ZJk/
Reviews on sciety: https://sciety.org/articles/activity/10.21203/rs.3.rs-4390765/v2

For trouble shooting (e.g. no Docmaps available):

DocMap issue addressing: https://miro.com/app/board/uXjVNCwK6EI=/
Explore DataHub DocMaps API: https://lookerstudio.google.com/reporting/4c2f0368-babb-4beb-b5b3-497e7e7b0f08/page/ejphD
Unmatched submissions and preprints: https://lookerstudio.google.com/u/0/reporting/9f86204f-3bf7-477c-9b18-5c5ef141bf69/page/p_gxi57ha93c
Unmatched manuscripts spreadsheet: https://docs.google.com/spreadsheets/d/15QcK8w-ssB7109RQEDtFpJPZ0J5HTGxoHa_2TtpMBbg/edit#gid=1336081641

Step 2. Preview reviewed preprint
Production QC content ahead of publication
Instructions:

QC preview: https://prod--epp.elifesciences.org/previews/101299v1
Update ticket with any problems (add blocked label)
When QC OK, add QC OK label to ticket and add publication date and time to https://docs.google.com/spreadsheets/d/1amAlKvdLcaDp5W8Z8g77NmkwbMF5n_u89ArSqPMO8jg
Move card to next column
(At end of the day post link in #enhanced-preprint and ask for PDF to be generated)

Useful links:

Preprint DOI :  https://doi.org/10.21203/rs.3.rs-4390765/v2
Confirm reviews returned by EPP: https://prod--epp.elifesciences.org/api/reviewed-preprints/101299/v1/reviews
To update the MECA path in the docmap: https://docs.google.com/spreadsheets/d/1mctCQuNFBjSn97Lihy7_vBO6z7-N-oqyLv4clyi6zHg

Step 3: Awaiting search reindex
This step adds the reviewed preprint to the homepage: https://elifesciences.org
The search reindex is triggered once an hour. We need the reviewed preprint to be indexed as the search application serves the journal homepage.
Useful links:

Jenkins pipeline to reindex search can be triggered sooner or monitored here: https://alfred.elifesciences.org/job/process/job/process-reindex-reviewed-preprints/

Step 4: Published! PDF requested
Waiting for PDF to be generated
Useful links:

PDF tracking: https://docs.google.com/spreadsheets/d/106_XeDjmuBae7gexOTNzg60lapeqjl2aRn9DzupGyS8/

Step 5: Introduce PDF to data folder and git repo
Upload PDF to relevent folder in git repo https://github.com/elifesciences/enhanced-preprints-data/
Step 6: Done!

[ ] Kettle is on!

The MECA package and details in the spreadsheet are for the v1. But they should have been the v2.
I've updated the details in the spreadsheet, which will hopefully change the docmap. I'ave also asked Exeter to produce a MECA package for the v2.
@JGilbert-eLife, the authors added this in eJP:

Can you think of any ways we might catch this in the future with the query?


Unable to install libdasm in linux

I have done all these steps:
make
sudo make install
cd pydasm
sudo python setup.py install
But still when i run something which needs pydasm, I am getting the error: "Pydasm is not installed"
How can I resolve this issue?

The problem is pydasm.so did not get copied into lib/python/site-packages.
I have copied it manually and it is working now.
But I am not sure why it sould be done manually.

@Bhuvanamitra Can you provide some details about your OS flavor and version? Also your python version. And output from the install command that appeared to work but did not would also be helpful, if you happen to have it.

Ubuntu 16.04
Python-2.7
Install output:
running install
running build
running build_ext
running install_lib
running install_egg_info
Removing /usr/local/lib/python2.7/dist-packages/pydasm-1.5.egg-info
Writing /usr/local/lib/python2.7/dist-packages/pydasm-1.5.egg-info