AFDEM clean up

Short summary of changes / additions
Clean up AFDEM in Geophysical Survey so it's in a usable condition.
A few details:

didn't change to much but just clean up
following the template from DCR and established as a template for ATDEM

Suggested reviewers:

[ ] @dougoldenburg
[ ] @lheagy

Before merging: please run a spell check through your documents! And the look and feel are ok and compatible with other surveys.

looks good @yangdikun! I have just updated the branch to be consistent with the current master. Once the tests have passed, feel free to merge it in


Filtering / displaying Rows according to User's permisions

Hi all,
I have a table called "settings" which stores pairs of SettingName and SettingValue.
I want to set permission (view/modify) on each SettingsRow so that only authorized users can view or modify a specific setting.
This I would like to achieve with Serenity's integrated permission system as this would be easy to integrate in existing roles.
I have searched around in already existing issues here and in the wiki but didn't find any hint on how to do it.
Any concrete help is much appreciated.
With kind regards,
John

Not done it myself but if I had to it would be using the multi tenancy example with service behaviour.

Your need is keyword is Multitenancy, you can search with this keyword on Serenity Document.
if you want to filter in grid by permission, you can override Preparequery and can write your conditions by permissions.
private class MyRetrieveHandler : RetrieveRequestHandler<MyRow>
{
    protected override void PrepareQuery(SqlQuery query)
    {
        base.PrepareQuery(query);
        //write your permission condition filters here
        query = query.Select(MyRow.Fields.YourJoinFieldName);
    }
}

if you want to use in lookups consider this url;

@hubeyb ,
thanks for the additional detail infos regarding the preparequery. Will have a look into it - and if I come up with a reusable solution I will post it here.
Regards,
John


Updated dependencies and grade build file so build succeeds

We can then update the PR you opened for the original plugin.
Thx!

@simonstratmann mind taking a look? Thanks!


Use prod metrics-server image instead of dev

Issue #, if available:
Description of changes:
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

/lgtm
/approve
/woof


Fixed the default viewer.html

Just ran Jammit with compress_assets: on.
viewer.html should work now.

Fixed in 0c3c2513e6c8d55a822253d174cd04a557ae71be


[nrf noup] cmake: change how path to subsys pm.yml is set

The relative path from the build dir to the binary dir of a subsys
folder is not static. In a zephyr subsys it is
build/zephyr/subsys/path
whereas in a nrf subsys it is
build/modules/nrf/subsys/path
The previous way of setting the path to preprocessed pm.yml files
for subsystems only worked with the first of these.
This commit introduces the use of a cmake variable for the binary dir,
and a mechanism for setting the build dir path for each pm.yml
explicitly.
See https://github.com/NordicPlayground/fw-nrfconnect-nrf/pull/2122

Some checks failed. Please fix and resubmit.
Gitlint issues
1: UC2 Body does not contain a 'Signed-off-by:' line
Identity/Emails issues
c28b09dfe6c1b5b97769aa63bf4ebb7e40da2851: author email (Håkon Øye Amundsen<EMAIL_ADDRESS>needs to match one of the signed-off-by entries.
Tip: The bot edits this comment instead of posting a new one, so you can check the comment's history to see earlier messages.

I don't have merge rights here, so feel free to merge, and I will update the corresponding nrf SHA asap.

@carlescufi seems i'm still lacking merge rights in this repo.


Camera intrinsic and extrinsic matrices

Hi, I am doing some research work where I have to do the inverse perspective projection of the front view depth image. In particular, given a front-view depth image I, I am trying to use it to reconstruct the 3D positions of each pixel on the image. A common solution is to use the camera intrinsic matrix and extrinsic matrix.
Could you please give me any suggestions about where I can find those matrices or how to do the projection in a more simple way?
Best,

Hello @cgxuvector.
The camera matrices are set up here: https://github.com/maximecb/gym-miniworld/blob/master/gym_miniworld/miniworld.py#L1180
You can potentially ask OpenGL to give you the perspective and projection matrices and invert them using numpy. I don't exactly know how to do that, but this can get you started if you want to go that route: https://stackoverflow.com/questions/9849374/using-glgetfloatv-to-retrieve-the-modelview-matrix-in-pyglet
Another possibility is that I added some methods on the agent object to give you the position of the agent and the camera's direction vector in 3D space (this is the self.agent object in the env):
https://github.com/maximecb/gym-miniworld/blob/master/gym_miniworld/entity.py#L458
There's also the camera vertical field of view angle in degrees:
https://github.com/maximecb/gym-miniworld/blob/master/gym_miniworld/entity.py#L448
So with a little bit of trigonometry and vector arithmetic, you can compute the position of the corners of the image some distance away from the camera, or you can compute a unit vector going through any pixel in the image.

Thanks, it really helps. I will close the question.


Match profiles become ineligible when having multiple projects

I have 2 projects with different bundle ids. They both use fastlane and fastlane match.
When I create certificate for the other with 'match appstore', then the other project stops recognizing the provisioning profile and says it is ineligible.
It is very annoying if I do weekly releases, to go and delete old certificates from the repo and regenerating them every time for a release, because generating them for another project made previous ones invalid.

I use 2.68.0 version of fastlane.

Hey @rogerkerse, could you provide some more information about your problem, seeing the output from your command line would be helpful if you could run your command with --verbose so we can see all of the ins and outs of whats happening? Thanks! 🚀

Successfully loaded Appfile at path '/Users/rogerkerse/Documents/Projects/Bolt/coconut/ios/fastlane/Appfile'
- app_identifier: 'ee.bolt.coconut'
- apple_id<EMAIL_ADDRESS>- team_id: 'TEAM_ID'
-------
INFO [2017-12-14 16:10:05.46]: Successfully loaded '/Users/rogerkerse/Documents/Projects/Bolt/coconut/ios/fastlane/Matchfile' 📄

+---------+--------------------------------------+
|  Detected Values from './fastlane/Matchfile'   |
+---------+--------------------------------------+
| git_url | https://bitbucket.org/boltstudios/c  |
|         | oconut-certificates                  |
| type    | development                          |
+---------+--------------------------------------+

DEBUG [2017-12-14 16:10:05.47]: Taking value for 'team_id' from environment variable 'FASTLANE_TEAM_ID'

+-----------------------+--------------------------------------+
|                   Summary for match 2.64.1                   |
+-----------------------+--------------------------------------+
| verbose               | true                                 |
| git_url               | https://bitbucket.org/email/x  |
|                       | -certificates                  |
| type                  | development                          |
| git_branch            | master                               |
| app_identifier        | ee.bolt.coconut                      |
| username              |<EMAIL_ADDRESS>           |
| keychain_name         | login.keychain                       |
| readonly              | false                                |
| team_id               | TEAM_ID                           |
| force                 | false                                |
| skip_confirmation     | false                                |
| shallow_clone         | false                                |
| clone_branch_directly | false                                |
| force_for_new_devices | false                                |
| skip_docs             | false                                |
| platform              | ios                                  |
+-----------------------+--------------------------------------+

INFO [2017-12-14 16:10:05.48]: Cloning remote git repo...
INFO [2017-12-14 16:10:05.48]: If cloning the repo takes too long, you can use the `clone_branch_directly` option in match.
INFO [2017-12-14 16:10:05.48]: $ GIT_TERMINAL_PROMPT=0 git clone 'https://bitbucket.org/email/x-certificates' '/var/folders/5t/h6ycvwtd6kl9wfzdhs0tbbnc0000gn/T/d20171214-29657-lc3opc'
INFO [2017-12-14 16:10:05.50]: ▸ Cloning into '/var/folders/5t/h6ycvwtd6kl9wfzdhs0tbbnc0000gn/T/d20171214-29657-lc3opc'...
INFO [2017-12-14 16:10:06.72]: ▸ git: 'credential-wincred' is not a git command. See 'git --help'.
INFO [2017-12-14 16:10:08.35]: ▸ remote: Counting objects: 137, done.
INFO [2017-12-14 16:10:08.87]: ▸ remote: Compressing objects: 100% (116/116), done.
INFO [2017-12-14 16:10:09.34]: ▸ remote: Total 137 (delta 12), reused 0 (delta 0)
INFO [2017-12-14 16:10:09.34]: ▸ Receiving objects: 100% (137/137), 174.08 KiB | 408.00 KiB/s, done.
INFO [2017-12-14 16:10:09.34]: ▸ Resolving deltas: 100% (12/12), done.
INFO [2017-12-14 16:10:09.42]: 🔓  Decrypted 'H24P8BZ88B.cer'
INFO [2017-12-14 16:10:09.48]: 🔓  Decrypted 'H24P8BZ88B.p12'
INFO [2017-12-14 16:10:09.54]: 🔓  Decrypted 'AppStore_ee.bolt.coconut.mobileprovision'
INFO [2017-12-14 16:10:09.54]: 🔓  Successfully decrypted certificates repo
INFO [2017-12-14 16:10:09.58]: Verifying that the certificate and profile are still valid on the Dev Portal...
WARN [2017-12-14 16:10:12.81]: Couldn't find a valid code signing identity in the git repo for development... creating one for you now

+---------------+--------------------------------------+
|               Summary for cert 2.64.1                |
+---------------+--------------------------------------+
| development   | true                                 |
| force         | true                                 |
| username      |<EMAIL_ADDRESS>           |
| team_id       | TEAM_ID                           |
| keychain_path | /Users/rogerkerse/Library/Keychains  |
|               | /login.keychain-db                   |
| platform      | ios                                  |
+---------------+--------------------------------------+

INFO [2017-12-14 16:10:12.84]: Starting login with user<EMAIL_ADDRESS>INFO [2017-12-14 16:10:14.88]: Successfully logged in

Looking for related GitHub issues on fastlane/fastlane...
Search query: Could not create another Development certificate, reached the maximum number of available Development certificates.

URL: https://api.github.com/search/issues?q=Could%20not%20create%20another%20Development%20certificate,%20reached%20the%20maximum%20number%20of%20available%20Development%20certificates.+repo:fastlane/fastlane
➡  Match can't find certificate in repo if run again.
    https://github.com/fastlane/fastlane/issues/10489 [open] 27 💬
    22 hours ago

➡  Match "Couldn't find a valid code signing identity in the git repo for development"
    https://github.com/fastlane/fastlane/issues/10512 [closed] 6 💬
    2 weeks ago

➡  match failed in development
    https://github.com/fastlane/fastlane/issues/9215 [closed] 8 💬
    26 Sep 2017

and 22 more at: https://github.com/fastlane/fastlane/search?q=Could%20not%20create%20another%20Development%20certificate,%20reached%20the%20maximum%20number%20of%20available%20Development%20certificates.&type=Issues&utf8=✓

🔗  You can ⌘ + double-click on links to open them directly in your browser.

#######################################################################
# fastlane 2.69.2 is available.
# You should use the latest version.
# Please update using `bundle update fastlane`.
#######################################################################

2.69.2 Hotfix for match requiring an Array for app_identifier
* Version bump to 2.69.2 (#11213) via Joshua Liebowitz
* Fix match requiring an Array for app_identifier (#11212) via Joshua Liebowitz
* Revert "Change sync_code_signing example to use an array type" (#11211) via Mark Pirri

2.69.1 Bug fixes
[fastlane_core] Fix the property list workaround for ruby ~2.0 (#11202) via Manu Wallner
[fastlane_core] Fix unnecessary Xcode check for macOS (revert #4631) (#11184) via Jan Piotrowski
[gym] Fix issue with wrong #to_plist in package_command_generator_xcode7.rb (#11208) via Jimmy Dee
[gym] Fix verbose logging with gym
[docs] Fix some documentation typos (#11193) via Nate West
[Fastlane.swift] Update Fastfile.swift template to use new core action names (#11194) via Mark Pirri
[sync_code_signing] Change sync_code_signing example to use an array type (#11195) via Mark Pirri

2.69.0 fastlane Swift support, beta
* Write your fastfile in Swift, calling: fastlane init swift
* Updated snapshot to include Snapfile.swift can now run fastlane snapshot init swift via Joshua Liebowitz
* Updated screengrab to include Screengrabfile.swift can now call fastlane screengrab init swift via Joshua Liebowitz
* Updated scan to include Scanfile.swift can now call fastlane scan init swift via Joshua Liebowitz
* Updated Match to include Matchfile.swift can now call fastlane match init swift via Joshua Liebowitz
* Updated Gym to include Gymfile.swift Can now call fastlane gym init swift via Joshua Liebowitz
* Updated Precheck to include Precheckfile.swift can call fastlane precheck init swift now via Joshua Liebowitz
* Updated deliver to include Deliver.swift Updated appFile to include AppFile.swift Piped is_swift throughout setup can now run fastlane init swift to init for Fastlane.swift via Joshua Liebowitz
* Added calling of beforeAll/afterall Add ability to run fastlane socket server like: $fastlane socket_server via Joshua Liebowitz
* Autogenerate all the various tools protocols and default implementations Ignore some default param values that are derived from the environment Added processing of Options types via Joshua Liebowitz
* Added Default Swift Fastfile Improved type inference from ruby to Swift types Updated handling of environment variables in Swift via Joshua Liebowitz
* Create subclass structures for Lanefile subclasses via Joshua Liebowitz
* Sometimes you can get a nil provider hash (#11179) via Joshua Liebowitz
* Fix simulator_path (#11177) via Jan Piotrowski
* Limit testing of Timeout-Process-Bug to macOS only (#11178) via Jan Piotrowski
* Sometimes we can get a value that doesn't support .to_sym (#11173) via Joshua Liebowitz
* Added require for 'addressable' (#11171) via Joshua Liebowitz
* Fix doc link in error handler (#11172) via Joshua Liebowitz
* Fix conflict between CFPropertyList and plist in gym (was: Move require 'cfpropertylist' to limit its scope.) (#11163) via Jimmy Dee
* Improve GitHub Issue and Pull Request templates (#11157) via Iulian Onofrei
* Add support for a postfix block with sh (#11152) via Jimmy Dee
* Add supported platforms for platform parameter description. (#11148) via Kristaps Grinbergs
* [frameit] Ensure both texts use same baseline (issue #10440) (#11124) via funnel20
* Added BUILDKITE_BRANCH ENV var to git_branch action (#11146) via Michael Smith
* Further improvements to sh (#11068) via Jimmy Dee
* Show plugin actions on the plugin page (#11117) via Manu Wallner
* Update tty-screen dependency for fastlane (#11035) via Felix Krause
* Version bump to 2.69.0 (#11192) via Joshua Liebowitz
* Option descriptions cannot include newlines (#11185) via Jimmy Dee

To see all new releases, open https://github.com/fastlane/fastlane/releases

Please update using `bundle update fastlane`
/Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/fastlane_core/lib/fastlane_core/ui/interface.rb:131:in `user_error!': [!] Could not create another Development certificate, reached the maximum number of available Development certificates. (FastlaneCore::Interface::FastlaneError)
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/fastlane_core/lib/fastlane_core/ui/ui.rb:14:in `method_missing'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/cert/lib/cert/runner.rb:151:in `rescue in create_certificate'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/cert/lib/cert/runner.rb:146:in `create_certificate'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/cert/lib/cert/runner.rb:37:in `run'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/cert/lib/cert/runner.rb:6:in `launch'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/match/lib/match/generator.rb:21:in `generate_certificate'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/match/lib/match/runner.rb:85:in `fetch_certificate'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/match/lib/match/runner.rb:42:in `run'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/match/lib/match/commands_generator.rb:55:in `block (3 levels) in run'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in `call'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:178:in `call'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/command.rb:153:in `run'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/runner.rb:476:in `run_active_command'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/fastlane_core/lib/fastlane_core/ui/fastlane_runner.rb:66:in `run!'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/commander-fastlane-4.4.5/lib/commander/delegates.rb:15:in `run!'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/match/lib/match/commands_generator.rb:134:in `run'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/match/lib/match/commands_generator.rb:13:in `start'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/fastlane/lib/fastlane/cli_tools_distributor.rb:58:in `take_off'
	from /Users/rogerkerse/.fastlane/bin/bundle/lib/ruby/gems/2.2.0/gems/fastlane-2.64.1/bin/fastlane:20:in `<top (required)>'
	from /Users/rogerkerse/.fastlane/bin/bundle/bin/fastlane:22:in `load'
	from /Users/rogerkerse/.fastlane/bin/bundle/bin/fastlane:22:in `<main>'

You should call cert only once! Use nuke to delete your three recently created certificates and start again.

I explain the flow again. I nuked all my certificates and when I create certificate for first project with bundle id of example.app1, then this works. Now I start creating certificates for second project that is with bundle id of example.app2. This works as well and now example.app2 works, but example.app1 does not work anymore!

In short, when creating certificate for totally different bundle-id, it invalidates the other certificates (and they don't have the same bundle-id)

Are you trying to use the same certificate repo for 2 different apps?

No seperate repos

@chkchk isn't it unsafe? If I give someone access to one of my projects so they would be able to deploy, does it mean they can deploy the other one as well now?

@rogerkerse create three repo:

Project A
Project B
Certificate
give other member access to Project A and Certificate so your Project B will be safe

I would say it's not fixing the problem, but just bypassing, but well for now works, thanks


Java: Add another overflow check pattern to UselessComparisonTest.

This is a slight generalization of the existing overflow check patterns in the query.  This fixes #2059

A sampling of results removed by this PR: https://lgtm.com/query/8259919552871216758/

LGTM. Please add a brief release note.

Change note added.  I've also excluded loop conditions from the overflow check heuristic as overflow checks tend not to be used as loop conditions - this preserves the one interesting TP found in the query run linked above that would otherwise be removed.  (And as shown here https://lgtm.com/query/1223734026197388194/ loop conditions doesn't tend to look like overflow checks)


"Pure" vs "Impure" Interfaces

Description
What is the difference between the "Pure" and "Impure" interfaces, and what are they? This is mentioned in the footnote of slide 7 in lecture 5. Thank you!
Topic:
Interface

Yes, they are mentioned in the slides for completeness.. but out of scope in our module.  They are just interfaces with some methods defined... something like abstract classes, but as they are interfaces they do not face the "inherit from one parent" constraint.  GIY: java interfaces backward compatibility


Docs: fix escaping of pipes in regexes that appear in table cells

Adds escaping to regular expressions that broke Asciidoc parsing of several cop documents.
Current documentation at https://docs.rubocop.org/rubocop/cops_style.html#configurable-attributes-97 looks like this:

The same document, in IntelliJ's Asciidoc previewer, after this PR:

Unticked items are not applicable.

[X] The PR relates to only one subject with a clear title and description in grammatically correct, complete sentences.
[X] Wrote good commit messages.
[ ] Commit message starts with [Fix #issue-number] (if the related issue exists).
[X] Feature branch is up-to-date with master (if not - rebase it).
[X] Squashed related commits together.
[ ] Added tests.
[X] Ran bundle exec rake default. It executes all tests and runs RuboCop on its own code.
[ ] Added an entry (file) to the changelog folder named {change_type}_{change_description}.md if the new code introduces user-observable changes. See changelog entry format for details.

Thanks!


Logs left in code

So there is 2 places where 'Log::' gets used
In UploadController : 38
and LfmPath : 235
In uploadcontroller we log an error. This messes with my bugreporting tool. Is this still necessery here? We throw exceptions everywhere else. In case this is intended, i will look for a different workaround but it doesn't immediately seem like this piece of code should be here.

These two logs are left intentionally, to avoid the anti-pattern: "Error should never pass silently".
But if it troubles you, I think maybe using another logging channel setting in config/logging.php may solve it. How do you think?

Good to know, thank you!
This makes sense. I will check out logging.php, thank you for the suggestion!


Multiline + Immediate Textfield teleports cursor to end when typing quickly (server only)

Bug type
Component
Component name
MudTextField
What happened?
When typing quickly in a multiline textfield with immediate="true", the cursor teleports to the end of the field and any further typing occurs here. This only seems to happen on blazor server, likely due to latency.
Expected behavior
The cursor should remain in the middle of the textbox.
Reproduction link
https://try.mudblazor.com/snippet/QOQbkXRuoWBQtlQu
Reproduction steps

Open the try.mudblazor above
Copy the text into a blazor server project
Click in the middle of the default string and type quickly.
Your cursor will teleport to the end.

Relevant log output
No response
Version (bug)
5.1.5
Version (working)
No response
What browsers are you seeing the problem on?
Chrome
On what operating system are you experiencing the issue?
Windows
Pull Request

[x] I would like to do a Pull Request

Code of Conduct

[X] I agree to follow this project's Code of Conduct

@henon it look like suppress

Yep, when I fixed the input update problem with two-way bindings on immediate inputs I forgot the multiline text boxes which use a textarea tag internally instead of an input tag.  I found the bug. but now a test is failing. will need a bit more time

Got the tests working again too. PR: #2926


[chore] custom screen share

 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.You have signed the CLA already but the status is still pending? Let us recheck it.


Add files via upload

Pull Request Test Coverage Report for Build<PHONE_NUMBER>
Details

0 of 0   changed or added relevant lines in 0 files are covered.
26 unchanged lines in 1 file lost coverage.
Overall coverage decreased (-0.3%) to 41.524%

Files with Coverage Reduction
New Missed Lines
%

mofa/utils/src/edm.py
26
58.46%

Totals

Change from base Build<PHONE_NUMBER>:
-0.3%

Covered Lines:
4113

Relevant Lines:
9905

💛  - Coveralls


Implemented clone fallback when clone3 returns ENOSYS

Fix #2030
Apologize for the large change. This PR implements the clone fallback when clone3 returns ENOSYS. clone interface is messier to use compared to the clone3 kernel syscall, so a large chunk of the changes is to deal with that. For example, the container_args now implements Clone so we can clearly pass the ownership of the memory to the new process.
A few other changes to make this happen:

Delay the creation of the syscall struct and only pass around a enum signaling the type of syscall.
Remove the use the executor and use a function pointer instead. Now the executor is much more explicit about the order of how each executor is tried. Instead of a list of Executor, now executors are composable to create new executor.
Delay the creation of cgroup manager until the intermediate process.
Changed some of the cgroup functions to take &Path instead of PathBuf.

Codecov Report

Merging #2121 (a439871) into main (e0ab0e4) will increase coverage by 0.08%.
The diff coverage is 46.02%.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #2121      +/-   ##
==========================================
+ Coverage   64.81%   64.90%   +0.08%
==========================================
  Files         129      129
  Lines       14768    14932     +164
==========================================
+ Hits         9572     9691     +119
- Misses       5196     5241      +45

I am leaving the commits for easier time to review, but I should probably squash before we merge.

I can't find time for this PR unless it's on a Saturday or Sunday, so wait a minute 🙏

Also, some of the rust clone can be mitigated using Rc, especially to manage the cost of duplicating structures. I am working on a follow up PR next to address the issue in case there is a concern on this.

@utam0k maintaining backward compatibility is going to be hard and I don't think we have thought enough about the libcontainer api to support it. I hope there is a way to can make breaking changes to the interface. With that being said, I will break the change into smaller pieces and let see how to work through this. I do believe the importance of making this PR to go in as I have great concerns with us using clone3 syscall without libc directly as the only path.

This is too big a change to mix in with this change. libcontainer has people using it. We need to contact them. Please leave this out of this PR 🙏

Remove the use the executor and use a function pointer instead. Now the executor is much more explicit about the order of how each executor is tried. Instead of a list of Executor, now executors are composable to create new executor.

Can you give me a sense of who are the big consumers? I can help take a look and gauge the amount of effort to fix.

Converting this PR to draft. I will break this PR into smaller piece and use this as a reference.

@yihuaf I don't mean to deny destructive change. If they are necessary, let's include them. However, I do think that disruptive changes that are not related to 1PR will cause confusion among users. Runwasi is probably the biggest user. Thanks for understanding🙇🙇

@yihuaf I don't mean to deny breaking change. If they are necessary, let's include them. However, I do think that breakrng changes that are not related to 1PR will cause confusion among users. Runwasi is probably the biggest user. Thanks for understanding🙇🙇

Understand. I will parse into multiple PRs and the destructive changes should be in their own PR. I will also fix runwasi when I introduce the executor change.

Actually, since I will break this PR into multiple PRs, we can close this to avoid confusion.

@yihuaf Thanks a lot🙏


Search News of current Destination

Now you can take a look to what's going on at the current destination !

I used an expander to show/hide elements from the list, and used the Search News Bing Service from Azure to obtain that list. You are able to open each "news" item in the browser by tapping it.
First time using Expander, it's so easy to use ! About Azure Services, I worked with Cognitive Services before but never used Bing Search so it was an opportunity to use it, and worked so good. So easy to integrate. Outstanding.
What went well... I think it is working so fast, and expander control helps a lot to integrate this interesting information in the main page.
What went not well... The look and feel, is not bad, but I could do it better. I'll do :)

Thanks for completing the challenge! Fill out this form so we can send you the swag! https://aka.ms/cog-svcs-swag


Using relative arm action for OVMM sim

Motivation and Context

Changelog

How Has This Been Tested

Types of changes

[ ] Docs change / refactoring / dependency upgrade
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] I have made changes to existing documentation where needed.
[ ] I have added tests that show that the PR is functional.
[ ] I ran tests/hw_manual_test.py on hardware and observed that robot behavior looks normal.

i think this looks good - need some clarity confirming that hab-lab change is intentional

Yes, I need to pin the right version now - one that doesn't use the latest setup but still works


Enhancement for #404 - Unit test methods raises cc0091

#404 Add checks for test methods in the MakeMethodStaticAnalyzer.  Another method was added to the extensions class, HasAnyAttribute, because using HasAttributeOnAncestorOrSelf seemed like overkill what this needs analyzer to test.

@adraut I made some comments, please verify.

@giggio I updated the verify diagnostic and create project methods so that a metadata reference can be passed in to make the tests work correctly.  I also added a reference in the test project to NUnit.
Before the symbol was not being resolved which is why the test was passing when testing for TestFixture.  Now it only passes when testing for TestFixtureAttribute.
The test for methods with the name Test is now case insensitive, too.

@adraut You don't need to add a reference to NUnit. Please remove that, it is an unnecessary thing. We already have to remove the reference to Json.NET, because of the same reason. If you let this happen we might soon end up with lots of references to libs. They are not needed. What you need to do is simply declare the type that NUnit has, on your test case, something like this:
namespace NUnit.Framework
{
    [Attribute]
    public class TestFixtureAttribute { }
}
[TestFixture]
class Bar
{
    void Testa() { }
}

Also you did not change the other names. Shouldn't TestCleanup be TestCleanupAttribute. And all the others?

@giggio That never occurred to me to do for the testing.  That's nice and easy.  I'll get that taken care of.
Yes, I need to go update all of the other ones that possible end in Attribute.  I got focused on NUnit and forgot about them.

Ok, let me know when you are done.

@giggio I removed the NUnit reference.  The other test attributes do not need to end with the Attribute because it is only testing the syntax instead of the symbol so the type name isn't being used.  The NUnit class level attribute is the only being tested by the symbol type name.

Done.
I just added 2 extras commits. One (8f8f7db) to deal with a case where people used the full attribute name, and another (e65ae64) to revert the metadata references.


Ranges for randoms idea

I make a lot of from-scratch particle effects for my live wallpapers (so I'm not limited by the GDX particle editor's features), and have found Kotlin ranges to be very helpful for very quickly tweaking values. I think this could be helpful anywhere you have something that spawns something in a game, whether it's a particle or enemy. Or for any procedural generator.
So I made some functions that make it even faster to tweak ranges. Operator functions that let you add or multiply constants by the endpoints of the range. Or defining a range by a center and tolerance. And then functions that return a random value from within the range.
For example, here's a simple version of something I've been working on.
class ParticleLayer (val xStart: ClosedRange<Float>,
        val yStart: ClosedRange<Float>,
        val size: ClosedRange<Float> ) {
    private val particles = GdxArray<Particle>()
    //...

    fun update (delta: Float) { /* Updates particles and spawns them when necessary. */ }

    private fun spawnParticle() {
        val particle = particlePool.obtain()
            initialize(xStart.random(), yStart.random(), size.randomGaussian())
        particles.add(particle)
    }
}

I have multiple layers of particles, and the ones in the foreground and background are bigger to look out of focus (and move faster but I'm omitting that for the example).
So I first made one particle layer. As I tweak the values, instead of continually typing in new ranges, I can shift them around easily by adding a value:
val layers = listOf(
    ParticleLayer(xStart = (-0.5f..0.5f) + 0.2f, // My particles needed to have their center shifted to look good
        yStart = 1.2f..2.5f,
        size = 1.3f..1.7f)
)

And after getting that looking good, I can copy-paste to get a new layer and then tweak the size range with simple multiplication:
val layers = listOf(
    ParticleLayer(xStart = (-0.5f..0.5f) + 0.2f,
        yStart = 1.2f..2.5f,
        size = 1.3f..1.7f
    ),
    ParticleLayer(xStart = (-0.5f..0.5f) + 0.2f,
        yStart = 1.2f..2.5f,
        size = (1.3f..1.7f) * 1.3f
    )
)

Here are the functions I have in my personal library so far:
fun ClosedRange<Int>.random() = MathUtils.random(endInclusive - start) + start
infix fun Int.amid(tolerance: Int) = (this - tolerance)..(this + tolerance)
fun ClosedRange<Float>.random() = MathUtils.random() * (endInclusive - start) + start
fun ClosedRange<Float>.randomGaussian() = com.cyphercove.audioglow.core.randomGaussian() * (endInclusive - start) + start
fun ClosedRange<Float>.randomTriangular() = MathUtils.randomTriangular(start, endInclusive)
fun ClosedRange<Float>.randomTriangular(normalizedMode: Float) = MathUtils.randomTriangular(start, endInclusive, normalizedMode * (endInclusive - start) + start)
operator fun ClosedRange<Float>.times(multiplier: Float) = (start * multiplier)..(endInclusive * multiplier)
operator fun ClosedRange<Float>.times(multiplier: Int) = (start * multiplier)..(endInclusive * multiplier)
operator fun ClosedRange<Float>.plus(addend: Float) = (start + addend)..(endInclusive + addend)
operator fun ClosedRange<Float>.minus(subtrahend: Float) = (start - subtrahend)..(endInclusive - subtrahend)
infix fun Float.amid(tolerance: Float) = (this - tolerance)..(this + tolerance)

That's a very nice utility, good idea. Would you like to contribute some of your utilities from the personal library?

I think I'll finish the project I'm working on so it has a chance to mature a little more. Should be two or three weeks, and then I can submit a PR.


How can I run train_alternate.py with only 4G or less of the memory of the GPU ?

Can I make the batch_size less or do other things? @pluskid @pineking @thinxer

I think the batch size = 1 if you only have one GPU when training the RPN network, it can't be modified.After you train the RPN, you will train a RCNN network,this batch size can be modified,you can set it in file /rcnn/tools/train_rcnn.py.

Can it be modified to be less than 1 ?

@MU001999 The batch size means how many images you put into the network every time, if it less than one,your network get no input.

Thanks a lot! @lilhope


chore(deps): upgrade dev dependencies

Upgrades project dependencies. See details in workflow run.

Automatically created by projen via the "upgrade-dev-dependencies-2.x" workflow

⚪ Backport skipped
The pull request was not backported as there were no branches to backport to. If this is a mistake, please apply the desired version labels or run the backport tool manually.
Manual backport
To create the backport manually run:
backport --pr 1600

Questions ?
Please refer to the Backport tool documentation


Add JSDoc

Add JSDoc in source code to make easy understand what the code do. Generate documentation based over JSDoc and publish on http://lucasb.github.io/leafbird/doc/. See JaguarJS.

It is done, but we need to solve problems in structure to generate right documentation. See more here in this issue #24 .


Reference error and error in removing .py from the path

Hi I was trying out the USB workflow, with  Save + Run. I got a ref error in the console trying to get changeMode from the script.js:

So I've added an export for changeMode and MODE_SERIAL (not sure if its good, but snowpack seems to sort it out).
Then when trying to run a file "test.py", it would try to run "import es" instead of "import test". So I think the extension substring is a typo. The following seemed to work to remove .py:
path.slice(0, -3)

Hope this helps a little bit. It's going to be nice to have a quick way to test code from just the browser.
FYI: I don't 100% understand the Save + Run for USB. It doesn't save the files to the device. I suppose it's related to #15, I wonder if we could also add a RUN only command that will reset, then paste the code in the editor to the REPL to run tests quickly.

Hi thanks for the feedback. I've fixed the function to be rather passed in. I also needed the MODE_SERIAL constant. I thought maybe putting it in some kind of global file would be good or should I pass it in the workflow.init too?
I'm ok if you would rather remove this PR and make the changes, I learnt something and got a taste of the project so all good.


ffi-1.9.10/lib/ffi/library.rb:261:in `attach_function': Function 'unorm2_getInstance_4_2' not found in [/usr/lib64/libicui18n.so.42, /usr/lib64/libicutu.so.42] (FFI::NotFoundError)

I’m noticing the following error with ffi-icu 0.1.8 in a gem when running rspec tests, here is an example failure:
rake aborted!
/usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/ffi-1.9.10/lib/ffi/library.rb:261:in `attach_function': Function 'unorm2_getInstance_4_2' not found in [/usr/lib64/libicui18n.so.42, /usr/lib64/libicutu.so.42] (FFI::NotFoundError)
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/ffi-icu-0.1.8/lib/ffi-icu/lib.rb:345:in `<module:Lib>'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/ffi-icu-0.1.8/lib/ffi-icu/lib.rb:8:in `<module:ICU>'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/ffi-icu-0.1.8/lib/ffi-icu/lib.rb:1:in `<top (required)>'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `require'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `block in require'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:240:in `load_dependency'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `require'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/ffi-icu-0.1.8/lib/ffi-icu.rb:33:in `<top (required)>'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `require'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `block in require'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:240:in `load_dependency'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `require'
	from /home/ion/jenkins/workspace/test_engine/lib/test_engine.rb:7:in `<top (required)>'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `require'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `block in require'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:240:in `load_dependency'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/activesupport-4.2.4/lib/active_support/dependencies.rb:274:in `require'
	from /home/ion/jenkins/workspace/test_engine/spec/rails_helper.rb:10:in `<top (required)>'
	from /home/ion/jenkins/workspace/test_engine/spec/controllers/test/test_controller_spec.rb:1:in `require'
	from /home/ion/jenkins/workspace/test_engine/spec/controllers/test/test_controller_spec.rb:1:in `<top (required)>'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/rspec-core-3.3.2/lib/rspec/core/configuration.rb:1327:in `load'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/rspec-core-3.3.2/lib/rspec/core/configuration.rb:1327:in `block in load_spec_files'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/rspec-core-3.3.2/lib/rspec/core/configuration.rb:1325:in `each'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/rspec-core-3.3.2/lib/rspec/core/configuration.rb:1325:in `load_spec_files'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:102:in `setup'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:88:in `run'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:73:in `run'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/rspec-core-3.3.2/lib/rspec/core/runner.rb:41:in `invoke'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/gems/rspec-core-3.3.2/exe/rspec:4:in `<top (required)>'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/bin/rspec:23:in `load'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/bin/rspec:23:in `<main>'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/bin/ruby_executable_hooks:15:in `eval'
	from /usr/local/rvm/gems/ruby-2.1.3@test_engine/bin/ruby_executable_hooks:15:in `<main>'
Coverage report generated for RSpec to /home/ion/jenkins/workspace/test_engine/coverage. 624 / 810 LOC (77.04%) covered.

This error corresponds to using ffi-icu 0.1.8 that appears to have became available in RubyGems[1] on Oct 1, not sure why date in RubyGems says Aug 23, 2010, however I also I did not see a tag version on the gitHub repo [2] for 0.1.8.
[1] https://rubygems.org/gems/ffi-icu/versions/0.1.8
[2] https://github.com/jarib/ffi-icu/releases
My test project is using these dependencies:
rspec-rails 3.3.3
rake 0.9.6
ffi 1.9.10

@fantasticfears Any idea about this?

The version of your ICU library is 4.2. However, this new sets of API is available since 4.4.
Given the newest ICU library version is 55, I didn't protect this by version check which cause the failure spec.
@jarib What's the ICU version ffi-icu required by the way? I can fix it by a version check.

@JoeJennings Please try version 0.1.9 and report back.
@fantasticfears I'm not really sure what version is required - we haven't set a hard requirement before.


Fix - TRSV2-314 - Issue parsing XLSX Chartsheet documents

Codecov Report
Base: 46.65% // Head: 46.94% // Increases project coverage by +0.28% :tada:

Coverage data is based on head (9b48edb) compared to base (4fad576).
Patch coverage: 61.31% of modified lines in pull request are covered.

Additional details and impacted files
@@             Coverage Diff             @@
##           develop     #264      +/-   ##
===========================================
+ Coverage    46.65%   46.94%   +0.28%
===========================================
  Files          186      192       +6
  Lines        10608    10899     +291
  Branches      1387     1414      +27
===========================================
+ Hits          4949     5116     +167
- Misses        5386     5508     +122
- Partials       273      275       +2

Impacted Files
Coverage Δ

trade_remedies_api/cases/services/api.py
20.93% <0.00%> (ø)

trade_remedies_api/config/settings/base.py
82.23% <ø> (ø)

...s_api/core/services/v2/registration/serializers.py
90.38% <ø> (ø)

trade_remedies_api/core/validation_errors.py
100.00% <ø> (ø)

trade_remedies_api/documents/parsers/xlsx.py
23.52% <23.07%> (+1.30%)
:arrow_up:

trade_remedies_api/documents/services/v2/views.py
35.89% <35.89%> (ø)

trade_remedies_api/core/models.py
61.80% <37.50%> (+0.01%)
:arrow_up:

trade_remedies_api/cases/services/v2/views.py
43.02% <43.02%> (ø)

trade_remedies_api/config/serializers.py
70.96% <57.14%> (-1.98%)
:arrow_down:

...de_remedies_api/organisations/services/v2/views.py
60.00% <60.00%> (ø)

... and 17 more

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

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


Fixes issue #17

Its nice @rahulk32 that you have removed all the logs from the script file. On an additional note, it would be nicer if you could remove unnecessary spaces from the code and prettified it a bit, which can be easily achieved using auto-indent feature/ third party packages in your text editor. Rest, LGTM👍.

I guess @sudo-rgorai, you can merge his PR in case you are satisfied with it👍

And ya, forgot to mention one thing, @rahulk32, always try to put up a short description describing the PR, even a one-liner would do fine👍 It may seem trivial but actually it proves to be a lot of help for those who are reviewing your code. Just keep that in mind.😉

And ya, forgot to mention one thing, @rahulk32, always try to put up a short description describing the PR, even a one-liner would do fine👍 It may seem trivial but actually it proves to be a lot of help for those who are reviewing your code. Just keep that in mind.😉

Thanks for suggestion will keep that in mind from next time. Also what I am seeing in many repos that there are many issues in which people getting assigned themselves but they are not doing any PR in these should I try to resolve these issue or leave them.

I guess @sudo-rgorai, you can merge his PR in case you are satisfied with it👍

If any more change you want I will add that

@rahulk32, it is not a hard and fast rule, but as per the moral code of conduct, the one who claims to work on the issue first gets it. And it is the PR of this person which generally gets accepted because most people don't claim issues which are already assigned to somebody else. These are some unsaid rules in Open Source. However, if the person remains inactive for a long duration after claiming an issue, it can be reassigned to someone else. It depends on the owner's will as well.  But in the end, the thing that matters the most is resolving the issues, no matter who resolves it😃🙌✌

Some great points raised by @Godzilla5111. Yes, if your PR is related to an issue, it is often considered a good practice to discuss it on the issue thread before making the PR. When you're working on larger projects, things need to be very systematic to ensure proper maintenance of the codebase.
As far as this issue is concerned, I think #17 is resolved. I'll probably add another another issue later about detailed formatting when the code grows in size. Thanks for the help :smile:


BotBuilder Python - Handling multiple dialog and intent

Asking it here since I didn't get any response on StackOverflow,
https://stackoverflow.com/questions/62006308/botbuilder-python-handling-multiple-dialog-and-intent
async def on_message_activity(self, turn_context: TurnContext):
    recognizer_result = await self.luis.recognize(self.recognizer, turn_context)
    intent = self.luis.get_top_intent(recognizer_result)
    await self.process_intent(turn_context, recognizer_result, intent)

async def process_intent(self, turn_context: TurnContext, recognizer_result, intent):
    if intent == 'Greeting_Wishes':
        await greeting_wishes(turn_context, user_info)
    elif intent == 'Greeting_Question':
        await greeting_question(turn_context)
    elif intent == 'Movement':
        dialog = Movement(recognizer_result)
        await DialogHelper.run_dialog(
            dialog,
            turn_context,
            self.dialog_state
        )

Problem

Greeting intent is working fine
Movement intent is properly taking to the configured dialog but after asking a couple of inputs to the user and when the user enters their value it is either going back to greeting intent or going nowhere since the intent is None

I was checking various sample but all of them has only one dialog by inheriting different classes. Could you please help, how do we handle multiple intents with different dialogs?

Hi @aravindtrue
You asked this after your question on Stack Overflow was only 4 hours old. I'm not surprised you didn't receive an answer in that time frame. That being said, there are three ways to handle this:
Option 1, from NLP-with-dispatch:
This is what you're doing with your code. The LUIS recognition is being run on every message, and attempting to route to various intents on the following method.
Option 2, from Complex Dialogs
async def initial_step(
        self, step_context: WaterfallStepContext
    ) -> DialogTurnResult:
        return await step_context.begin_dialog(TopLevelDialog.__name__)

This is the second step of a waterfall in the starting dialog,  which then uses the begin_dialog method to call the next dialog, or class. Begin_dialog will just run the specified dialog, start to finish. It does not create a dialog set, or a dialog context.
Option 3, from Auth Bot uses the run_dialog method you're using.
async def on_token_response_event(self, turn_context: TurnContext):
        # Run the Dialog with the new Token Response Event Activity.
        await DialogHelper.run_dialog(
            self.dialog,
            turn_context,
            self.conversation_state.create_property("DialogState"),
        )

The run_dialog here is going to run the 'DialogHelper' class, which contains the following:
class DialogHelper:
    @staticmethod
    async def run_dialog(
        dialog: Dialog, turn_context: TurnContext, accessor: StatePropertyAccessor
    ):
        dialog_set = DialogSet(accessor)
        dialog_set.add(dialog)

        dialog_context = await dialog_set.create_context(turn_context)
        results = await dialog_context.continue_dialog()
        if results.status == DialogTurnStatus.Empty:
            await dialog_context.begin_dialog(dialog.id)

As you can see, this creates the dialog_set, and a dialog context, then checks to see if the dialog is started (and starts it if the turn status is empty) or continues the dialog (which are specified in app.py).
From what you're trying to do, here's what I would recommend.

Place the dialogs you want for the various intents into their own classes (greeting_dialog.py, movement_dialog.py, etc).
Use the code you have for movement to start the dialog you want:

dialog = Movement(recognizer_result)
        await DialogHelper.run_dialog(
            dialog,
            turn_context,
            self.dialog_state
        )

Configure movement.py (or other dialogs) to do what you need as ComponentDialogs:

class MovementDialog(ComponentDialog):
     #stuff

Going on what you've put, you're two problems:
First: the final line in your  run_async method is incorrect. You have self.dialog_state. You need to have self.conversation_state.create_property("DialogState"), Here is a full code sample for that.
Second, you said:

after asking a couple of inputs to the user and when the user enters their value it is either going back to greeting intent or going nowhere since the intent is None

In the code you have specified, you have a luis recognizer on every message:
async def on_message_activity(self, turn_context: TurnContext):
    recognizer_result = await self.luis.recognize(self.recognizer, turn_context)
    intent = self.luis.get_top_intent(recognizer_result)
    await self.process_intent(turn_context, recognizer_result, intent)

It sounds like you're not handling the end of dialog well in  your movement dialog, so it's returning back to this, and just checking your luis intent over again.

@jwiley84 Not sure if I should be commenting on a closed issue, but this scenario reflects my current problem. I'm also routing to different dialogs based on the intent. However, as intent classification is the first step, though I'm inside my Dialog, once the first input to dialog is given, the on_message_activity gets triggered again classifying the intent of the incoming data from user.
I want to understand if there is some way I can verify if any ComponetDialog/Dialog is currently active and what it is, I should be able to route it to the appropriate Dialog using the run_dialog. Any ideas on this ?

Hi @vijaysaimutyala I think I've got the general idea of what you're looking at, but as that's a 'how-to' question, can you go ahead an ask it here on Stack Overflow? The bot framework team prefers that how-to questions are asked there so that the answers can better serve the community. No worries, my team goes through Stack Overflow every morning at 9am PST and as long as your question has the 'bot framework' tag, we'll catch it, and I'll answer it there for you.

I understand  @jwiley84 and I already did ask it on SO. Just thought asking it here as well would help more ppl 🙂

@jwiley84 I was able to build around the idea. Skipping LUIS check if some dialog is in context. However, I am able to execute each dialog only once, then I get the below error
DialogSet.add(): A dialog with an id of 'NameDialog' already added.
I've added the answer on StackOverFlow. Can you have a look at it and suggest what's missing ?


Suggestion: allow task-edit/write on dayplanner/weekplanner

Hello,
I really enjoy the weekplanner so far, but feel like there is significant friction when adding or modifying tasks - you can create a task by clicking on the planner. However, you are then thrust onto the respective date's note; which may or may not open and overwrite a different currently opened note instead. Even without, this procedure is kind of awkward in my opinion.
Would it be possible to edit task entries on the planner itself? F.e. by allowing edit via double-click or F2/whatever key, and then have clicking a timepoint not automatically open the note?
For an example, compare to how the kanban-plugin allows "in-view" editing, and doesn't throw you to its raw-text version when you want to write or edit an entry. Would something similar be possible?
Thank you.
Sincerely,
~Gw

Hi,
I just discovered Day Planner via a blog post and it looks great. I agree with Gewerd-Strauss, however, that working with the week planner is cumbersome, since you can't edit the timeblocks you create without opening the daily files they live inside. Any chance this feature will be added soon? I'd really like to be able to do my time blocking from the weekly view, instead of separately each day.
Thanks!
Gina Marie :)

Hey there! Check out 0.18.0: now hovering over a task with Control pressed will trigger a preview pop-up. This works great with the awesome Hover Editor plugin. This plugin is far superior to any edit modal I would implement 😅

Closing this as stale.


Command Order Issue: Lack of Output with 'wasmtime file.wasm --invoke main'

Steps to Reproduce

Execute the following command: wasmtime a-test.wasm --invoke main
Observe the lack of output.

Expected Results
I expect the command wasmtime a-test.wasm --invoke main to execute the WebAssembly file and produce the correct output.
Actual Results
The command wasmtime a-test.wasm --invoke main does not produce any output, while  wasmtime a-test.wasm --invoke main does.
Versions and Environment

Wasmtime version: 14.0.1
Operating system: Ubuntu 22.04.3 LTS(GNU/Linux 5.15.0-79-generic x86_64)

Extra Info
Explain that you noticed a difference in behavior when changing the order of the arguments. Mention that the issue is specific to the command order and that wasmtime --invoke main a-test.wasm works as expected.

If the --invoke is after a-test.wat, it will be passed as argument to the wasm module rather than interpreted by Wasmtime.

We're working on a fix for this. See here for details.

As mentioned by @bjorn3 this is an intended change in Wasmtime 14 relative to prior verisons. More information about this is available at https://github.com/bytecodealliance/wasmtime/issues/7384 and that is going to track further developments here so I'm going to close this in favor of that. Thanks for the report though!


Snapshot hangs on certain screens (have logs)

New Issue Checklist

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

Issue Description
Using latest snapshot ruby gem and snapshotHelper2-3.swift
Snapshot randomly hangs on a screen(its the same screen every time), without manual intervention, it will not proceed or fail.
Complete output when running fastlane, including the stack trace and command used
/usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/syntax.rb:24:in `highlight_with_formatter': undefined method `include?' for nil:NilClass (NoMethodError)
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/syntax.rb:15:in `highlight'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/formatters/formatter.rb:171:in `format_failure'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/formatters/formatter.rb:157:in `block (2 levels) in format_failures'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/formatters/formatter.rb:156:in `map'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/formatters/formatter.rb:156:in `block in format_failures'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/formatters/formatter.rb:155:in `each'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/formatters/formatter.rb:155:in `map'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/formatters/formatter.rb:155:in `format_failures'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/formatters/formatter.rb:101:in `format_test_summary'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/parser.rb:563:in `format_summary_if_needed'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/parser.rb:336:in `parse'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/formatters/formatter.rb:87:in `pretty_format'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/lib/xcpretty/printer.rb:19:in `pretty_print'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/bin/xcpretty:84:in `block in <top (required)>'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/bin/xcpretty:83:in `each_line'
from /usr/local/lib/ruby/gems/2.3.0/gems/xcpretty-0.2.3/bin/xcpretty:83:in `<top (required)>'
from /usr/local/bin/xcpretty:22:in `load'
from /usr/local/bin/xcpretty:22:in `<main>'

Configuration Files
Please copy the complete content of your Fastfile and any other configuration files you use below:
Fastfile:
# INSERT CONTENT HERE

Environment
fastlane version (run fastlane -v):
I only use snapshot alone and im using snapshot 1.16.2
Do you use bundler to execute fastlane (i.e. bundle exec fastlane)?
No
Do you use a Ruby environment manager (e.g. chruby, rbenv, rvm)?
no

@tinder-ayu Hope you are doing well! Can you provide your snapfile? It looks like this might be an issue with the way you are navigating your app. Thanks!

@TKBurner here is my snapfile:
Uncomment the lines below you want to change by removing the # in the beginning
A list of devices you want to take the screenshots from
devices([
"iPhone 6",
"iPhone 6 Plus",
"iPhone 5",
"iPhone 4s",
"iPad Retina",
"iPad Pro"
])
devices([
"iPhone 6s"
])
#languages([
"en-US",
"de-DE",
"it-IT",
["pt", "pt_BR"] # Portuguese with Brazilian locale
#])
languages([
"en-US",
"zh-Hant",
"en",
"es",
"fr",
"pt",
"zh-Hans"
])
Arguments to pass to the app on launch. See https://github.com/fastlane/snapshot#launch-arguments
launch_arguments(["-favColor red"])
The name of the scheme which contains the UI Tests
scheme "SchemeName"
scheme "Tinder SnapshotTests"
Where should the resulting screenshots be stored?
output_directory "./screenshots"
clear_previous_screenshots true # remove the '#' to clear all previously generated screenshots before creating new ones
Choose which project/workspace to use
project "./Project.xcodeproj"
workspace "./Project.xcworkspace"
For more information about all available options run
snapshot --help

@tinder-ayu Thanks for following up. Can you share the full input and output of snapshot? I want to take a look at where it gets this error. Thanks so much!

@TKBurner can't you debug from what i uploaded, full log is over megabytes long, and i dont always get this error. this makes my testcase hang from time to time

@tinder-ayu Can you share the 50 or so lines before and after the crash? Thanks!

Hey @tinder-ayu, sorry for not coming back earlier. Could you try updating to the latest fastlane release and with it to the new xcpretty? Let us know if that works for you 👍


Opacity attribute not implemented in style tag

There is a problem with some svg pictures, borders appear on the edges of the CustomPainter for example this picture
shows:

The issue is the opacity property in the style.  That image actually has a border; it's just made 99% transparent through its style.  The opacity property needs some special handling because, unlike other properties, it's not inherited down the document tree.  When this was implemented, opacity in a style wasn't implemented properly, or wasn't implemented; I'll have to dig into the code a bit.
This modified SVG shows the issue well.

Hi Bassam,
This latest commit should fix the issue.  Could you try out this version of the library with any other problem images, and any other test images you have handy?
After I hear back from you, I'll publish as 1.1.9; for now, it's published as https://pub.dev/packages/jovial_svg/versions/1.1.9-rc.1 -- I think you can just specify version "1.1.9-rc.1" in your pubspec.yaml file.
Thanks,
Bill

Hi Bill,

Published as 1.1.9


11124 fix slow location query

Yeah this is fine. I don't think we need the separate table now. Better to reduce the scope of the feature (no select multis) than increase code complexity. That is my theme for NEMO right now!

Thanks for testing it out!

@cooperka Before I merge this, I want to make sure that disabling the dashboard for enumerators is ok. My hunch/hope is that it is, but I need to check first.


Historical shipment view performance improvement

This branch improves and simplify the historical shipment computation code. Leading to ~5% run time speed gain, see spreadsheet below for more details.
https://docs.google.com/spreadsheets/d/1UYA2PoUv7fbSl4unIRhkUG3TYGl6aWQY02oxO5exmBQ/edit?usp=sharing

Happy to see an improvement, but I think we need to revisit this issue. I believe Daven was seeing certain requests taking ~40 seconds, and ideally this request should take <1-2 seconds at worst case. So we'll need to do better than 5% to call this resolved. I would first try to reproduce Daven's issue. There was a large number of history entries (hundreds) as it was a test shipment that spanned a couple days. Perhaps we can sit down with @djones0 to take a closer look at some of the test shipments where the history endpoint is slow.

here are a few examples:
https://demo.shipchain.io/shipments/ed1c9bd8-8d79-4305-95e4-8c6afbd5aa3e
https://demo.shipchain.io/shipments/6a87893b-0cd5-4ea2-8983-4ebc5c8d0ef7

@djones0  thanks for sharing those examples.
I don't think the issue with the loading of these shipment pages has something to do with the historical endpoint. In fact both related endpoints respond in less than 300 ms in postman.

Those shipments don't seem to exhibit this issue, I think the one that originally had the issue was 2931df91-037f-46a0-9e8b-f460407eb8d0 in STAGE. I just tried hitting the history endpoint on that shipment and it looks like NGINX is timing out after waiting 90 seconds. This endpoint used to return and just be slow, but now it looks like it's too slow to even return a result before the NGINX timeout. This is a KeepTruckin shipment so it has a lot of data added continuously by the integration lambdas.

I think it's one of those shipments where we used to save the telemetry data in the customer_fields and with that we could easily reach thousands of historical objects for a single shipment. At this point I wonder whether it's necessary to try to further modify this endpoint to accommodate such an edge-case? Above that, I'm not confident we could achieve much since thousands of historical objects means somehow we will have to iterate through all of them at some point which will be very time consuming.


[NTR] activated T-cell subtypes

Hi,
There are T-cell subtypes implied by Maecker et al. (PMID 22343568) that are not defined in the cell ontology:

activated central memory CD4+ T cell
activated naive CD4+ T cell
activated effector CD4+ T cell
activated effector memory CD4+ T cell
activated central memory CD8+ T cell
activated naive CD8+ T cell
activated effector CD8+ T cell
activated effector memory CD8+ T cell

but activated CD4+ T cell (http://purl.obolibrary.org/obo/CL_0000896) is defined, and, say, central memory CD4+ T cell (http://purl.obolibrary.org/obo/CL_0000904), is defined, but not the combination.
Similarly there is the activated CD8+ T cell (human, http://purl.obolibrary.org/obo/CL_0001049), and central memory CD8+ T cell (http://purl.obolibrary.org/obo/CL_0000907) but not both.
If it helps, here are the non-activated ontology IDs for the CD4+ T cells:

central memory CD4+ T cell  http://purl.obolibrary.org/obo/CL_0000904
naive CD4+ T cell http://purl.obolibrary.org/obo/CL_0000895
effector CD4+ T cell http://purl.obolibrary.org/obo/CL_0001044
effector memory CD4+ T cell http://purl.obolibrary.org/obo/CL_0000905

The IDs for the non-activated CD8+ T cells:

central memory CD8+ T cell http://purl.obolibrary.org/obo/CL_0000904
naive CD8+ T cell http://purl.obolibrary.org/obo/CL_0000900
effector CD8+ T cell http://purl.obolibrary.org/obo/CL_0001050
effector memory CD8+ T cell http://purl.obolibrary.org/obo/CL_0000913

I can try adding this via Protege to a forked version and do a pull request, but I'd need some guidance on how to do the combinations. This would be a set intersection and I think OWL has some special syntax for that?
Thanks

Met with @addiehl and it looks like there is not enough experimental evidence for the activated cell types. Instead I'll work on using the cell-ontology IDs already used by ImmPort.


Fixes #9 create popup confirmation dialog that verifies you want to delete

Deleting is not necessarily intuitive in that it removes the link from all keywords associated with it and not just the one you clicked edit from.  This should cut down on the number of unknowing deletes.

Resolves #9


minor update to the CFF

First off, thank you for creating the CFF. Some minor tweaks:

removed a superfluous space in the ORCID url
removed superfluous quotation around single-word keyword (YAMLlint made me do it!)

BTW I noticed that @fdiblen has an ORCID ending in X (which is legal/valid), but could result in validation warnings until my PR to citation-cile-format/schema gets merged.

Thanks @jspaaks !


Finish converting to es6 classes

I think this finishes out the conversion to es6 classes.

This fixes the test compile errors, but it only "passes" by skipping most tests. I'll open an issue to fix the tests.

LGTM.
I have a question regarding styles fromd3-selection-multi, do you know why it still works even if not importing d3-selection-multi ? Did I miss something?

So is this PR good?

Yes, you can merge it. I have a PR ready for fixing the "styles" runtime error (I was just testing some notebooks befor opening it).

Great, thanks!


[HUDI-4630] Add transformer capability to individual feeds in MultiTableDeltaStreamer

Change Logs
Context: https://apache-hudi.slack.com/archives/C4D716NPQ/p1660215517081789
MultiTableDeltastreamer currently supports single transformer class for all of the data being synced. And it can only be enabled or disabled as a whole. There is no support for enabling transformers for a select feed of data or to use different transformers for different feeds. This PR addresses the same.
The same feature is available in schemaprovider class through hoodie.deltastreamer.schemaprovider.class property in table level configs.
Impact
The impact audience are the confined to users of MultiTableDeltaStreamer and that too if they use transformers. And since this is a new feature, things should run as-is even if this change has been incorporated.
Risk level
low
Contributor's checklist

[ x] Read through contributor's guide
[ x] Change Logs and Impact were stated clearly
[ ] Adequate tests were added if applicable
[ ] CI passed

@yesemsanthoshkumar : once you have added tests, let us know. and please rebase w/ latest master.

@yesemsanthoshkumar : Can you rebase the PR for us to review.

Just a quick heads up - I ran the latest master MultiTableDeltaStreamer without hoodie.deltastreamer.transformer.class config and I got a NullPointerException due to the .split() in line:
List<String> transformerClassNameOverride = Arrays.asList(typedProperties.getString(Constants.TRANSFORMER_CLASS, null).split(","));

because my TRANSFORMER_CLASS is null. I changed the function to the following with success:
  private void populateTransformerProps(HoodieDeltaStreamer.Config cfg, TypedProperties typedProperties) {
    String transformerClass = typedProperties.getString(Constants.TRANSFORMER_CLASS, null);
    if (transformerClass != null && !transformerClass.trim().isEmpty()) {
      List<String> transformerClassNameOverride = Arrays.asList(transformerClass.split(","));
      cfg.transformerClassNames = transformerClassNameOverride;
    }
  }

Thanks @sydneyhoran  for catching this issue. @yesemsanthoshkumar : I will go ahead and revert this commit in master. Can you please make the change as suggested and add tests for null case.

Thanks @sydneyhoran for catching this issue. @yesemsanthoshkumar : I will go ahead and revert this commit in master. Can you please make the change as suggested and add tests for null case.

Will do it over the weekend.
Thanks @sydneyhoran for catching this issue.


use gdal>=3.3, rasterio>=1.2 for rms

Once required deps will be available, we will switch from 'average' to 'rms' by default.
(ie change all occurrences from rasterio.enums.Resampling.average to asterio.enums.Resampling.rms
But for now, we have to use 'average' to get most of CD/CI tests to pass (see #7)

Here is the gdal 3.3 workflow test : https://github.com/umr-lops/xsar/actions/workflows/check-gdal3.3-available.yml
While it fail, we can't do anything here

@alevieux , from https://github.com/umr-lops/xsar/issues/7#issuecomment-889893237 , about forcing rasterio>=1.2.6 :
Let's have the same installation procedure for every OS. It will fail for py3.6 on windows, but that not a big problem.
Can you submit a PR for that ?

Conda install Rasterio 1.1.0 on python 3.7 and Rasterio 1.2.6 on python 3.6, 3.8 and 3.9 and I think it's better to have Rasterio 1.2.6 ?
For windows when you force the Rasterio 1.2.6 is not exist just for python 3.6, I think just inform user the rms is not available in python 3.6 for windows
For Mac the installation in python 3.7 and 3.8 must install tbb package and for windows  the installation in python 3.7 and 3.8 must install Fiona package. It's specific, we can add in doc a warning for installation ?


Support for regex replace group

Hello,
great feature will be to add regular expressions groups:
File name
Artist title - Song name - 2019.01.01.mp3
Regex
(.*)-(\d{4}.\d{2}.\d{2})(.mp3)
Replace
$1$0$2
Result:
2019.01.01 Artist title - Song name,mp3
This allow to cleanup file names.

Installed just now to use the Regex ability... Then discovered that I can't use $1 etc. It really changes everything.

Seems to work for me using the latest version.  I had to modify the regex search and replace strings slightly
File name
Artist title - Song name - 2019.01.01.mp3
Regex
(.*) - (\d{4}.\d{2}.\d{2})(.mp3)
Replace
$2 $1$3
Result:
2019.01.01 Artist title - Song name.mp3