cmdlet the path is not found

I have already install the latest version 1.1.6
I have windows 8.1 with powershell (also checked with classic cmd)
I am trying to see my version:
When I type node -v or npm -v it says:
"The term 'node' is not recognized as the name of a cmdlet, function, script file, or operable program."
I tried the nvm on and the nvm use v6.11.5
Also I tried to restart cmd and windows.
What can I do?

This happened to me when I previously had node installed, then removed it, but it kept some files in c:\Program Files\nodejs
The solution was to run
rmdir /s /q "c:\program files\nodejs"
then nvm use 10.6.0
Now your c:\program files will look like:
08/07/2018  09:51 PM         nodejs [C:\Users\Rik\AppData\Roaming\nvm\v10.6.0]
and all will work well

$ rmdir /s /q "c:\program files\nodejs"
Remove-Item : A positional parameter cannot be found that accepts argument '/q'.
At line:1 char:1
+ rmdir /s /q "c:\program files\nodejs"
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [Remove-Item], ParameterBindingException
    + FullyQualifiedErrorId : PositionalParameterNotFound,Microsoft.PowerShell.Commands.RemoveItemCommand

I had to $ Remove-Item -Force -Recurse "C:\Program Files\nodejs" instead, but then it worked for me too! 👍

Try running node64 -v or node64==32 -v.
I found that the node executable in the NVM folder was named node64.exe, which also broke npm commands.  Renaming that file to node.exe resolved the issue for me.

Oh man what a irritating error without any error message. Reading tons of issues to find the solution here. If you have ever installed (and uninstalled) node.js, the path always remains. So this failure should occur very often.

This happened to me when I previously had node installed, then removed it, but it kept some files in c:\Program Files\nodejs The solution was to run rmdir /s /q "c:\program files\nodejs" then nvm use 10.6.0
Now your c:\program files will look like: 08/07/2018 09:51 PM nodejs [C:\Users\Rik\AppData\Roaming\nvm\v10.6.0]
and all will work well

nice，it works！

I just found out that the issue with the nvm use command not working and Node not being recognized as a command is because the %NVM_SYMLINK% environment variable is not being set correctly at the end of the nvm use process. In my case, I didn’t have any Node version installed before, so there was no "C:\Program Files\nodejs" directory, but the issue happened anyway. I had to reassign the %NVM_SYMLINK% value from C:\nvm4w\something to C:\Program Files\nodejs, restart the terminal, run nvm use again, and then the node -v command was recognized.


Failed to build tensorflow using custom Python/3.5.1-CrayGNU-2016.03

I am trying to build tensorflow 0.9.0 (bdc43730c9e6037c608adb91fe55d6c1a82879a8) on a cray cluster using bazel 0.3.0.
I was able to build tensorflow using a fresh installation of python3.5.1 but this paper from the cluster admins suggests that I loose quite some performance by not using an optimized python installation.
Therefore I want to install tensorflow using the provided python installation.
I create a virtualenv (inheriting the locally installed packages) and activate it. Then I run configure and select the proposed python binary from virtualenv.
But unfortunately building fails:
bazel build --linkopt '-lrt' --config=cuda --verbose_failures -c opt //tensorflow/tools/pip_package:build_pip_package
INFO: $TEST_TMPDIR defined: output root default is '/scratch/daint/user_name/bazelout'.
.....
INFO: Waiting for response from Bazel server (pid 4431)...
WARNING: Sandboxed execution is not supported on your system and thus hermeticity of actions cannot be guaranteed. See http://bazel.io/docs/bazel-user-manual.html#sandboxing for more information. You can turn off this warning via --ignore_unsupported_sandboxing.
WARNING: /scratch/daint/user_name/bazelout/_bazel_user_name/e48b2676a5a6481d625353bc3f790885/external/protobuf/WORKSPACE:1: Workspace name in /scratch/daint/user_name/bazelout/_bazel_user_name/e48b2676a5a6481d625353bc3f790885/external/protobuf/WORKSPACE (@__main__) does not match the name given in the repository's definition (@protobuf); this will cause a build error in future versions.
WARNING: /users/user_name/tensorflow-cray/util/python/BUILD:11:16: in includes attribute of cc_library rule //util/python:python_headers: 'python_include' resolves to 'util/python/python_include' not in 'third_party'. This will be an error in the future.
WARNING: /scratch/daint/user_name/bazelout/_bazel_user_name/e48b2676a5a6481d625353bc3f790885/external/re2/WORKSPACE:1: Workspace name in /scratch/daint/user_name/bazelout/_bazel_user_name/e48b2676a5a6481d625353bc3f790885/external/re2/WORKSPACE (@__main__) does not match the name given in the repository's definition (@re2); this will cause a build error in future versions.
WARNING: /scratch/daint/user_name/bazelout/_bazel_user_name/e48b2676a5a6481d625353bc3f790885/external/highwayhash/WORKSPACE:1: Workspace name in /scratch/daint/user_name/bazelout/_bazel_user_name/e48b2676a5a6481d625353bc3f790885/external/highwayhash/WORKSPACE (@__main__) does not match the name given in the repository's definition (@highwayhash); this will cause a build error in future versions.
INFO: Found 1 target...
[removed code]
ERROR: /users/user_name/tensorflow-cray/tensorflow/contrib/session_bundle/example/BUILD:38:1: Executing genrule //tensorflow/contrib/session_bundle/example:half_plus_two failed: bash failed: error executing command
  (cd /scratch/daint/user_name/bazelout/_bazel_user_name/e48b2676a5a6481d625353bc3f790885/execroot/tensorflow-cray && \
  exec env - \
    PATH=/users/user_name/tf_cray_env/bin:/apps/daint/UES/jenkins/5.2.UP04/easybuild/software/Python/3.5.1-CrayGNU-2016.03/bin:/apps/daint/UES/jenkins/5.2.UP04/easybuild/software/Tk/8.6.4-CrayGNU-2016.03/bin:/apps/daint/UES/jenkins/5.2.UP04/easybuild/software/SQLite/3.9.2-CrayGNU-2016.03/bin:/apps/daint/UES/jenkins/5.2.UP04/easybuild/software/Tcl/8.6.4-CrayGNU-2016.03/bin:/apps/daint/UES/jenkins/5.2.UP04/easybuild/software/freetype/2.5.5-CrayGNU-2016.03/bin:/apps/daint/UES/jenkins/5.2.UP04/easybuild/software/libpng/1.6.16-CrayGNU-2016.03/bin:/apps/daint/UES/jenkins/5.2.UP04/easybuild/software/libreadline/6.3-CrayGNU-2016.03/bin:/apps/daint/UES/jenkins/5.2.UP04/easybuild/software/ncurses/6.0-CrayGNU-2016.03/bin:/apps/daint/UES/jenkins/5.2.UP04/easybuild/software/bzip2/1.0.6-CrayGNU-2016.03/bin:/opt/cray/rca/1.0.0-2.0502.60530.1.62.ari/bin:/opt/cray/alps/5.2.4-2.0502.9822.32.1.ari/sbin:/opt/cray/dvs/2.5_0.9.0-1.0502.2188.1.116.ari/bin:/opt/cray/xpmem/0.1-2.0502.64982.5.3.ari/bin:/opt/cra
 y/pmi/5.0.10-1.0000.11050.0.0.ari/bin:/opt/cray/ugni/6.0-1.0502.10863.8.29.ari/bin:/opt/cray/udreg/2.3.2-1.0502.10518.2.17.ari/bin:/opt/toolworks/totalview.8.11.0-0/bin:/opt/totalview-support/1.1.4/bin:/opt/gcc/4.9.3/bin:/opt/nvidia/cudatoolkit7.0/7.0.28-1.0502.10742.5.1/bin:/opt/nvidia/cudatoolkit7.0/7.0.28-1.0502.10742.5.1/libnvvp:/opt/java/jdk1.8.0_51/bin:/apps/common/UES/SLES11/ddt/6.0.6/libexec:/apps/common/UES/SLES11/ddt/6.0.6/bin:/opt/cray/mpt/7.3.2/gni/bin:/apps/daint/munge/default/bin:/apps/daint/slurm/default/bin:/opt/slurm/default/bin:/opt/cray/craype/2.4.0/bin:/opt/cray/switch/1.0-1.0502.60522.1.61.ari/bin:/opt/cray/eslogin/eswrap/1.1.0-1.020200.1231.0/bin:/opt/modules/<IP_ADDRESS>/bin:/users/user_name/bin:/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/X11R6/bin:/usr/games:/usr/lib/mit/bin:/usr/lib/mit/sbin:/sbin:/usr/sbin:.:/usr/lib/qt3/bin:/opt/cray/bin:/apps/ela/system/bin:/apps/common/system/bin:/apps/daint/system/bin:/apps/ela/system/bin:/apps/common/system/bin:/apps/dain
 t/system/bin \
  /bin/bash -c 'source external/bazel_tools/tools/genrule/genrule-setup.sh; rm -rf /tmp/half_plus_two; /users/user_name/tf_cray_env/bin/python bazel-out/host/bin/tensorflow/contrib/session_bundle/example/export_half_plus_two; cp -r /tmp/half_plus_two/* bazel-out/local_linux-py3-opt/genfiles/tensorflow/contrib/session_bundle/example/half_plus_two'): com.google.devtools.build.lib.shell.BadExitStatusException: Process exited with status 127.
/users/user_name/tf_cray_env/bin/python: error while loading shared libraries: libpython3.5m.so.1.0: cannot open shared object file: No such file or directory
Target //tensorflow/tools/pip_package:build_pip_package failed to build
INFO: Elapsed time: 2664.471s, Critical Path: 1412.20s

Looks like it can't find your libpython dso when running /users/user_name/tf_cray_env/bin/python. Make sure you have activated your virtualenv before running bazel if you are using virtualenv. Otherwise, maybe you need to adjust your LD_LIBRARY_PATH.

Actually, the workaround we used is to re-build Python using rpath.
We hit the same problem with PCRE (dependency of Swig), which was also fixed by using rpath.

For Piz Daint users who might stumble upon this issue:
Building TensorFlow on Piz Daint

Sure, rpath is also an option for finding shared libraries. Glad you got it to work!


[BBU-RFP] Indicio.Tech RFP Questions

RFP Topic Area
New Steward onboarding | Manage ledger configuration   process for new Steward nodes. | Mandatory
Question
Would Indicio.tech (if we won the RFP) be in charge of vetting Steward candidates or would the Consortium be inviting and appointing?

No. Membership in the BBU and obligations of a Steward are outside the scope of the Utility Service Provider's responsibilities.

The Bedrock Consortium Governance Framework Working Group has approved a 1 week extensions for RFP response submissions. New date is Fri 22-May-2020. The RFP will be updated to reflect this.

RFP Process has entered review stage.


Add Orders and Limit to QuerySpec

Closes #6

Codecov Report

Merging #7 into main will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##             main       #7   +/-   ##
=======================================
  Coverage   74.26%   74.26%
=======================================
  Files           4        4
  Lines         171      171
=======================================
  Hits          127      127
  Misses         22       22
  Partials       22       22

Continue to review full report at Codecov.

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


Capping time spent searching

Is there a good way to handle unreachable points? It appears that there is no way to early out of your path search, so an unreachable point will be very, very, expensive.
I would like a way to tell the GetPath function to exit early after either visiting N number of nodes, or after spending N amount of time. This way I can avoid huge hangs when an invalid search is requested.
This may have some overlap with https://github.com/roy-t/AStar/issues/10

This feature was added in version 2.1.0, which should be available now on NuGet. Check the new GetPath overload. Note that I implemented this by duplicating a tiny bit of code. So the check does not effect the version that does not have an interationLimit.

Tested and works, but slightly different than I expected. I was expecting that in a failure case (eg. when it hits the IterationLimit) it would return the "best" path it had found so far. Maybe returning PartiallyReconstructPath(grid, start, current, cameFrom); instead of null? I suppose it should also communicate that the path returned is not the full path (an out bool param?).

Good discussion along with #10. I guess I'll add my comment here to this post. The general idea of 'best' path, from what I can tell, is taking the node that had the lowest H score in the case of no full path found. I just made some changes on my end to test this out and I think it works.

In Grid.cs, "GetPath" becomes:

public Position[] GetPath(Position start, Position end, Offset[] movementPattern, int iterationLimit, out bool fullPathNotFound)
{
        var current = PathFinder.FindPath(this, start, end, movementPattern, iterationLimit, out fullPathNotFound);
        [...]
}

In Pathfinder.cs "FindPath" method becomes:

public static List<Position> FindPath(Grid grid, Position start, Position end, Offset[] movementPattern, int iterationLimit, out bool fullPathNotFound)
{
            ClearStepList();

            fullPathNotFound = false;

            if (start == end)
            {
                return new List<Position> { start };
            }

            var head = new MinHeapNode(start, ManhattanDistance(start, end));
            MinHeapNode lowestHNode = head;
            var open = new MinHeap();
            open.Push(head);

            var costSoFar = new float[grid.DimX * grid.DimY];
            var cameFrom = new Position[grid.DimX * grid.DimY];

            while (open.HasNext() && iterationLimit > 0)
            {
                // Get the best candidate
                var currentNode = open.Pop();
                var current = currentNode.Position;
                MessageCurrent(current, PartiallyReconstructPath(grid, start, current, cameFrom));
                if (currentNode.ExpectedCost < lowestHNode.ExpectedCost)
                    lowestHNode = currentNode;
                if (current == end)
                {
                    return ReconstructPath(grid, start, end, cameFrom);
                }

                Step(grid, open, cameFrom, costSoFar, movementPattern, current, end);

                MessageClose(current);

                --iterationLimit;
            }

            fullPathNotFound = true;
            return ReconstructPath(grid, start, lowestHNode.Position, cameFrom);

            //return null;
        }

Also in my project, if the path kept coming back with "fullPathNotFound==true" (ie 2 in a row), then I would tell the unit to do something else, since obviously it can't make it to whatever it is trying to.


queue: Be more explicit about test/real queue division.

This is an incremental cleanup of #16566.

Merged, thanks @alexmv!  @mateuszmandera FYI.


Added French Locale

Names, cities and companies are from various Wikipedia pages.

Thanks for your contribution!


Improve DummyLogger

What does this PR do?
Fixes #6395
This PR makes the methods in DummyLogger accept arbitrary positional and keyword inputs.
The new test fails on master.
Before submitting

[x] Was this discussed/approved via a GitHub issue? (not for typos and docs)
[x] Did you read the contributor guideline, Pull Request section?
[x] Did you make sure your PR does only one thing, instead of bundling different changes together?
[x] Did you make sure to update the documentation with your changes? (if necessary)
[x] Did you write any new necessary tests? (not for typos and docs)
[x] Did you verify new and existing tests pass locally with your changes?
[ ] Did you update the CHANGELOG? (not for typos, docs, test updates, or internal minor changes/refactorings)

PR review
Anyone in the community is free to review the PR once the tests have passed.
Before you start reviewing make sure you have read Review guidelines. In short, see the following bullet-list:

[x] Is this pull request ready for review? (if not, please submit in draft mode)
[x] Check that all items from Before submitting are resolved
[x] Make sure the title is self-explanatory and the description concisely explains the PR
[x] Add labels and milestones (and optionally projects) to the PR so it can be classified

Did you have fun?
Make sure you had fun coding 🙃

Tensorboardlogger on 1.2.4 is still raising the same type error.

The fix is not in 1.2.4.
Please check my repro example and compare 1.2.4 vs. master:
https://github.com/PyTorchLightning/pytorch-lightning/issues/6395#issuecomment-792342717

I'm guessing this change needs to propogated to every logger?

I suppose yes, the interface could be standardized to match the base class signature

@awaelchli this PR is listed in both the 1.2.x cherries (under 1.2.4) and in the 1.2.4 changelog as well...
I have yet to test this on master but perhaps the 1.2.4 changelog need to be updated then? and this PR added to 1.2.6 cherries?

@s-rog I updated the cherries issue


Release 1.11

Release Schedule
Announcements

[x] Deleted obsolete packages and nodes #1812

Security Fixes
New Features

[x] Feature/rebuild decision maker #1609 #2001
[x] Initial release of Shape Estimation https://github.com/CPFL/Autoware/pull/1815
[x] Initial release of Baidu's LiDAR based CNN segmentation #1800
[x] Initial release of Object Filter #1645
[ ] Initial release of FireSSD image based detector for CPU #1794
[ ] Improve Hybrid A* planner #1594
[ ] Initial release of Autoware Launcher #1637 (PR: #1950, #2056)
[ ] set negative esimate_twist.twist.linear.x if going backwards #1788
[ ] Can not reach the end of waypoint #1470
[ ] Simplified configuration of waypoint functions #1475
[ ] Enable backward driving #1940
[ ] Refactor NDT functions as NDT SLAM #1384
[x] gazebo simulator #1907

Improvements
Bug Fixes

[ ] [Fix] rosbag split size in runtime manager #1817
[ ] compare_map_filter: nn_dists is the nearest "squared" distance #1895
[ ] geo_pos_conv class member variable not initialized #1912

Others

[ ] Format entire repository by clang-format #1811

I'd like to add #1811 and #1812 for more maintainability.
#1812 can delete a part of obsolete ones (not all of them).

@mitsudome-r It should be! I've added #1817 into the headline.
I'd like to add #1609. It's too huge and should be well organized. @s-azumi, @mitsudome-r, and me will take care of it.

Adding #1954

Adding #1943

Adding #1966

#1970

Can #1946 be included please.

Adding #2003 ,#2005

Adding #2001

Adding #2012

The following is an overview of the current state of PRs for new features that are meant to be included in v1.11. Taking into account the amount of work that is still needed for some of them and the limited time for v1.11, can the current developers make a decision as to whether the PRs will be ready in time for appropriate review?

PR / Issue
Developer
Approver
Notes

Feature/rebuild decision maker #1609 #2001
@kfunaoka @s-azumi
N/A
Tests under development for the different packages of this PR in #1757 #1744 #1958 #2009

Initial release of Shape Estimation #1815
@yukkysaito @amc-nu
@amc-nu
Unit tests were added as part of the PR

Initial release of Baidu's LiDAR based CNN segmentation #1800
@amc-nu
@cirpue49
NO tests were included for this feature prior to merging

Initial release of Object Filter #1645
@amc-nu
N/A
Closed and moved to #1815

Initial release of FireSSD image based detector for CPU #1794
@amc-nu
N/A
No associated PR for this issue

Improve Hybrid A* planner #1594
@aohsato
N/A
Moved to 1.11 from 1.10. Some tests added in #1753, still missing tests for freespace_planner and astar_avoid

Initial release of Autoware Launcher #1637 #1950
@isamu-takagi
@hakuturu583
Some tests added as part of commit

Set negative esimate_twist.twist.linear.x if going backwards #1788 then #1798
@YamatoAndo
@kitsukawa
Merged with no test added for new method

Can not reach the end of waypoint #1470 and #1477
@yn-mrse
N/A
No tests added yet

Simplified configuration of waypoint functions #1475 and #1951
@yn-mrse
@hakuturu583
NO tests were included for this feature prior to merging

Enable backward driving #1940
@yn-mrse
N/A
No associated PR for this issue

[Feature] costmap_generator #1772 and #1774
@cirpue49
N/A
Tests added, awaiting review

[Feature] Robust Adavitive Uncented Kalman Filter + IMM-UKF-PDA #1461 and #1685
@cirpue49
N/A
Tests added, awaiting review

Feature/vehicle description #1848
@hakuturu583
@yukkysaito
NO tests were included for this feature prior to merging

Feature/lgsvl sim configurator #1893
@hakuturu583
@yn-mrse
NO tests were included for this feature prior to merging

[Features] Mobileeye Driver #1905
@kitsukawa
N/A
No associated PR for this issue

Feature/RosbagController #1791
@ChenxiTU @kitsukawa
@isamu-takagi
NO tests were included for this feature prior to merging

[Feature] feature/nmea_to_mgrs #1877 and #1878
@mitsudome-r
N/A
Closed

[Feature] Gazebo simulator #1907 and #1930
@yukkysaito
@aohsato
NO tests were included for this feature prior to merging

[Feature] Point Pillar for 3D bounding box detection from LIDAR data #1942
@cirpue49
N/A
No associated PR for this issue

[Feature] Load other map formats #1954
@mitsudome-r
N/A
No associated PR for this issue

Feature/autoware health checker #1943, related to #1970, #2003, #2004, #2005, #2006
@hakuturu583
@yn-mrse
Some tests added. Bug reported on #2012

Adding  #1384

Why?

Sorry for my late...
This is fix commit for ./run script.
#2050

Adding #1950 to support the latest develop branch and some update.

Adding #2046 to expand functions of rviz plugin - rosbag controller.

Hi all,
No more new PRs for v1.11 please. There is limited time for appropriate reviews.
I'd also ask contributors for the current PRs that are listed here to assess whether their PRs are truly merge-able or need extra work and should be pushed for next releases.
Thanks!

Hi all and @aohsato @cirpue49 @sgermanserrano @gbiggs Sorry for the delay of releasing v1.11. I'd like to finalize pull request that can be merged to v1.11. Since I guess checking all pull request in this issue takes a long time, I'd like to discuss some of them can be merged or not in this issue, depending on their completion rate. I heard @aohsato and @cirpue49 are trying to creating tests and documentation of Hybrid A* planner #1594 and costmap_generator #1774 for v1.11.
@aohsato @cirpue49 Would you approximate when these pull request can be ready to merge?

Thank you for your consideration.
I already wrote tests for #1774. Waiting for @sgermanserrano comment.

I heard some packages that depend on executing shell scripts such as #2109 do not work fine because its execute permission is removed at copying files to install directory.
@hakuturu583 Does LGSVL simulator require the fix similar to #2109?

@kfunaoka @sgermanserrano
Thanks for your discussion about releasing. In #1594, I merged @sgermanserrano 's test code by #1753 and added some fix to solve some test problems, so the library level unit test was completed.
Next, I tried to some test to nodes (10f93e3) but it's difficult to write without our standard code because there are mainly depended on pub/sub/tf system and complex perception results.
If possible, I want to make continuous changes based on the test code policy of v.1.12 or later.

@aohsato We're now focusing on unit tests within not ROS level but library level. We can go forward to ROS level test and integration test after v1.11 or later. Once the CI in #1594 is passed, would you declare that #1594 was tested on real car, and them merge into develop?

@kfunaoka I already tested on our real car, so I additionally comment to PR. CI seems to be passed, so I'll merge. Thanks much!

@aohsato Fantastic! Autoware is no longer a waypoint follower.

Hi all,
It seems we can finalize pull request that can be merged to v1.11.
I've created release/1.11.0 branch.
https://github.com/CPFL/Autoware/tree/release/1.11.0
If anyone find something for v1.11.0, please create pull requests to release/1.11.0.

@kfunaoka @hakuturu583 @yukkysaito
Autoware Launcher in develop branch does not work with colcon.
Please review and merge the latest branch #2056.

@kfunaoka
Sorry for very late. Autoware Launcher is merged.

@kfunaoka Fresh images have been added to https://hub.docker.com/r/autoware/autoware/

For release note:

[Fix] rosbag split size in runtime manager (#1817)
[Fix] negative max_v values for negative omega (#1880)
Merge pull request #1815 from CPFL/feature/shape_estimation
Feature/lgsvl sim configurator #1893
[Feature] negative estimate twist (#1798)
[Fix] geo_pos_conv class member variable not initialized #1913
Feature/RosbagController (#1791)
Changed Autoware/ros/run from being dependent on gksu to using sudo (#1918)
Feature/autoware health checker (#1943)
[Feature] waypoint replanner and extractor (#1951)
[Feature] enable display errors (#1970)
Fix/remove velodyne subtree (#1966)
[fix] Install commands for all the packages (#1861)
[feature] Baidu's CNN based LiDAR segmentation (#1800)
Feature/spinnaker (#1984)
Fix/colcon build (#2000)
[Feature] Autoware Launcher (#1950)
Feature/autoware health analyzer (#2004)
[Feature] Improve AS vehicle interface (#1945)
Merge pull request #1930 from CPFL/feature/gazebo_simulator
Merge pull request #2020 from CPFL/fix/spinnaker
Remove catkin_make_release* scripts (#2042)
Update wiki demo (#2091)
[Feature]PointPillars (#2029)
Feature/rosbag_controller_split (#2046)
[Feature] Rebuild decision maker (#1609)
[Feature] costmap generator (#1774)
Merge pull request #2109 from CPFL/fix/gazebo_with_colcon
Docker cleanup (#1946)
Removing CUDA dependencies for Darknet Yolov3 (#1784)
[Feature] Improve Hybrid A* planner (#1594)
[fix] not predicting objects at x<=0 or y<=0 (#2122)

Release Note
Announcement

Obsolete packages and nodes were removed as announced at Ver.1.10.0 (#1812)
Please use colcon for source build. Catkin is no longer supported (#2042)
The following commands are required once, when you build from source

sudo apt-get install -y python3-pip python3-setuptools
sudo pip3 install -U setuptools
sudo apt-get install -y python3-colcon-common-extensions

New Features

PointPillars: Fast Encoders for Object Detection from Point Clouds (#2029)
https://drive.google.com/file/d/1l6Grsg0JbBX5s7-JQ6eXQY169PCewJnW/view
Baidu's CNN based LiDAR segmentation (#1800)
https://www.youtube.com/watch?v=fw7522gDBAc
Shape/Pose Estimation based on PointCloud (#1815)
Autoware Health Checker (#1943, #1970, #2004)
ROS driver for pointgrey cameras using Spinnaker SDK (#1984)
RosbagController (#1791, #2046)

Experimental Features

Autoware Launcher provides simple easy-to-use user interface  (#1950)
Decision maker is rebuilt based on real-world's requirements (#1609)

Improvements

Improved Hybrid A* (#1594) and Cost Map using prediction (#1774)
Removed CUDA dependencies for Darknet (#1784)
Improved AS vehicle interface (#1945)
Gazebo Simulator can be launched from Runtime Manager (#1930)
LVSVL Simulator can be launched from remote machine (#1893)
Docker cleanup (#1946)
Divided waypoint_loader into waypoint_loader, waypoin_replanner, and waypoint_extractor (#1951)

Bug Fixes

Fixed rosbag split size in runtime manager (#1817)
Fixed max velocity on right turns at twist_filter (#1880)
Fixed first topic of gnss_pose that kills ndt_matching (#1913)
Fixed no prediction about objects at x<=0 or y<=0 (#2122)
Inserted install commands for all the packages (#1861)


CONFIG_APP_ROLLBACK_ENABLE is not working (when factory partition is not present) (IDFGH-2730)

Environment

Development Kit:
Kit version
Module or chip used:  ESP32S
IDF version v3.3.1-95-gc38bf3534
Build System:         CMake
Compiler version 1.22.0-80-g6c4433a
Operating System:     Linux
(Windows only) environment type:
Using an IDE?: Yes: Arduino 1.8.10
Power Supply: USB

Problem Description
I want to use the CONFIG_APP_ROLLBACK_ENABLE feature. I am using Arduino on Windows as an development environment.
I configured last stable Ubuntu in virtual enviroment and downloaded
https://github.com/espressif/esp32-arduino-lib-builder
Then the CONFIG_APP_ROLLBACK_ENABLE=y has been set in sdkconfig.
After build the compiled libs were copied to Windows, where sdk directory has been replaced by the new one. The sketch has been built in this new environment and bins successfully loaded to esp32 using COM8 on USB. The sketch started. In the sketch there is web server with Update using the web. New version of the sketch has been loaded using this web Update. The new version load was successful and then the sketch run. Then the reset button has been pressed on the esp32 board.
Unfortunately, this new version loaded during the boot and no rollbvack happened.
downloaded the in sdkconfig
Expected Behavior
The sketch did not call
esp_ota_mark_app_valid_cancel_rollback()
and therefore the new application had to be rolled back and the previous version of the sketch should be used in the boot.
Actual Behavior
Steps to reproduce
Code to reproduce this issue
Debug Logs
I debugged the issue using the debug feature inside the Arduino environment. As this is inside the boot process and cannot be started from Arduino, I set the debug level in the sdkconfig for bootloader. I also add some minor LOGD statements in the bootloader_utility.c in the enviroment on the Ubuntu (see above).
It seems that the bootloader itsself is working as expected, but then just before the boot proccess is finished and the sketch is started there is call to
set_actual_ota_seq
where there is statement
otadata.ota_state = ESP_OTA_IMG_VALID;
It seems to me that this command is the cause of the problem. As the comment just above the function set_actual_ota_seq in the bootloader_utility.c states that there could be some connection to the fact thata there is no factory in my partition table, I add that I am using default.csv for partition table and there is no factory part.
Other items if possible
17:20:28.879 -> I (94) boot: Partition Table:
17:20:28.879 -> I (97) boot: ## Label            Usage          Type ST Offset   Length
17:20:28.879 -> D (103) boot: load partition table entry 0x3f400000
17:20:28.879 -> D (108) boot: type=1 subtype=2
17:20:28.879 -> I (111) boot:  0 nvs              WiFi data        01 02 00011000 0000d000
17:20:28.879 -> D (117) boot: load partition table entry 0x3f400020
17:20:28.879 -> D (122) boot: type=1 subtype=0
17:20:28.879 -> I (125) boot:  1 otadata          OTA data         01 00 0001e000 00002000
17:20:28.913 -> D (131) boot: load partition table entry 0x3f400040
17:20:28.913 -> D (136) boot: type=0 subtype=10
17:20:28.913 -> I (139) boot:  2 app0             OTA app          00 10 00020000 00140000
17:20:28.913 -> D (145) boot: load partition table entry 0x3f400060
17:20:28.913 -> D (150) boot: type=0 subtype=11
17:20:28.913 -> I (153) boot:  3 app1             OTA app          00 11 00160000 00140000
17:20:28.913 -> D (159) boot: load partition table entry 0x3f400080
17:20:28.913 -> D (164) boot: type=1 subtype=82
17:20:28.913 -> I (167) boot:  4 spiffs           Unknown data     01 82 002a0000 00160000
17:20:28.983 -> I (173) boot: End of partition table
17:20:28.983 -> D (177) boot: OTA data offset 0x1e000
17:20:28.983 -> D (180) bootloader_flash: mmu set paddr=00010000 count=1 size=2000 src_addr=1e000 src_addr_aligned=10000
17:20:28.983 -> D (189) boot: ESP_OTA_IMG_VALID 2, ESP_OTA_IMG_NEW 0, ESP_OTA_IMG_ABORTED 4, ESP_OTA_IMG_PENDING_VERIFY 1
17:20:28.983 -> D (199) boot: otadata[0]: sequence values 0x00000003, state 0
17:20:28.983 -> D (204) boot: otadata[1]: sequence values 0x00000002, state 2
17:20:28.983 -> D (209) boot_comm: Both OTA copies are valid
17:20:28.983 -> D (213) boot: Active otadata[0]
17:20:28.983 -> D (216) boot: Mapping seq 2 -> OTA slot 0
17:20:28.983 -> D (220) boot: otadata[0] is selected as new and marked PENDING_VERIFY state
17:20:29.051 -> D (268) boot: Trying partition index 0 offs 0x20000 size 0x140000
17:20:29.051 -> D (269) esp_image: reading image header @ 0x20000
17:20:29.051 -> D (269) bootloader_flash: mmu set block paddr=0x00020000 (was 0xffffffff)
17:20:29.051 -> D (274) esp_image: image header: 0xe9 0x06 0x02 0x02 4008319c
17:20:29.051 -> I (279) boot_comm: chip revision: 1, min. application chip revision: 0
17:20:29.051 -> V (286) esp_image: loading segment header 0 at offset 0x20018
17:20:29.051 -> V (291) esp_image: segment data length 0x3493c data starts 0x20020
17:20:29.051 -> V (297) esp_image: segment 0 map_segment 1 segment_data_offs 0x20020 load_addr 0x3f400020
17:20:29.086 -> I (305) esp_image: segment 0: paddr=0x00020020 vaddr=0x3f400020 size=0x3493c (215356) map
17:20:29.086 -> D (313) esp_image: free data page_count 0x00000032
17:20:29.086 -> D (317) bootloader_flash: mmu set paddr=00020000 count=4 size=3493c src_addr=20020 src_addr_aligned=20000
17:20:29.189 -> V (390) esp_image: loading segment header 1 at offset 0x5495c
17:20:29.189 -> D (390) bootloader_flash: mmu set block paddr=0x00050000 (was 0xffffffff)
17:20:29.189 -> V (390) esp_image: segment data length 0x3760 data starts 0x54964
17:20:29.189 -> V (396) esp_image: segment 1 map_segment 0 segment_data_offs 0x54964 load_addr 0x3ffbdb60
17:20:29.189 -> I (404) esp_image: segment 1: paddr=0x00054964 vaddr=0x3ffbdb60 size=0x03760 ( 14176) load
17:20:29.189 -> D (412) esp_image: free data page_count 0x00000032
17:20:29.189 -> D (417) bootloader_flash: mmu set paddr=00050000 count=1 size=3760 src_addr=54964 src_addr_aligned=50000
17:20:29.224 -> V (430) esp_image: loading segment header 2 at offset 0x580c4
17:20:29.224 -> D (431) bootloader_flash: mmu set block paddr=0x00050000 (was 0xffffffff)
17:20:29.224 -> V (438) esp_image: segment data length 0x400 data starts 0x580cc
17:20:29.224 -> V (443) esp_image: segment 2 map_segment 0 segment_data_offs 0x580cc load_addr 0x40080000
17:20:29.224 -> I (451) esp_image: segment 2: paddr=0x000580cc vaddr=0x40080000 size=0x00400 (  1024) load
17:20:29.224 -> D (459) esp_image: free data page_count 0x00000032
17:20:29.224 -> D (464) bootloader_flash: mmu set paddr=00050000 count=1 size=400 src_addr=580cc src_addr_aligned=50000
17:20:29.258 -> V (473) esp_image: loading segment header 3 at offset 0x584cc
17:20:29.258 -> D (478) bootloader_flash: mmu set block paddr=0x00050000 (was 0xffffffff)
17:20:29.258 -> V (485) esp_image: segment data length 0x7b3c data starts 0x584d4
17:20:29.258 -> V (491) esp_image: segment 3 map_segment 0 segment_data_offs 0x584d4 load_addr 0x40080400
17:20:29.258 -> I (499) esp_image: segment 3: paddr=0x000584d4 vaddr=0x40080400 size=0x07b3c ( 31548) load
17:20:29.258 -> D (507) esp_image: free data page_count 0x00000032
17:20:29.258 -> D (511) bootloader_flash: mmu set paddr=00050000 count=2 size=7b3c src_addr=584d4 src_addr_aligned=50000
17:20:29.327 -> V (532) esp_image: loading segment header 4 at offset 0x60010
17:20:29.327 -> D (532) bootloader_flash: mmu set block paddr=0x00060000 (was 0xffffffff)
17:20:29.327 -> V (535) esp_image: segment data length 0x80f04 data starts 0x60018
17:20:29.327 -> V (540) esp_image: segment 4 map_segment 1 segment_data_offs 0x60018 load_addr 0x400d0018
17:20:29.327 -> I (548) esp_image: segment 4: paddr=0x00060018 vaddr=0x400d0018 size=0x80f04 (528132) map
17:20:29.327 -> D (556) esp_image: free data page_count 0x00000032
17:20:29.327 -> D (561) bootloader_flash: mmu set paddr=00060000 count=9 size=80f04 src_addr=60018 src_addr_aligned=60000
17:20:29.500 -> V (724) esp_image: loading segment header 5 at offset 0xe0f1c
17:20:29.500 -> D (724) bootloader_flash: mmu set block paddr=0x000e0000 (was 0xffffffff)
17:20:29.500 -> V (725) esp_image: segment data length 0x10b88 data starts 0xe0f24
17:20:29.500 -> V (730) esp_image: segment 5 map_segment 0 segment_data_offs 0xe0f24 load_addr 0x40087f3c
17:20:29.500 -> I (738) esp_image: segment 5: paddr=0x000e0f24 vaddr=0x40087f3c size=0x10b88 ( 68488) load
17:20:29.500 -> D (746) esp_image: free data page_count 0x00000032
17:20:29.500 -> D (751) bootloader_flash: mmu set paddr=000e0000 count=2 size=10b88 src_addr=e0f24 src_addr_aligned=e0000
17:20:29.568 -> V (785) esp_image: image start 0x00020000 end of last section 0x000f1aac
17:20:29.568 -> D (785) bootloader_flash: mmu set block paddr=0x000f0000 (was 0xffffffff)
17:20:29.568 -> D (786) esp_image: Calculated hash: eef23896f29d621d03ce317e847341389f93a554276e07f4ef4373ef54983025
17:20:29.568 -> D (795) bootloader_flash: mmu set paddr=000f0000 count=1 size=20 src_addr=f1ab0 src_addr_aligned=f0000
17:20:29.568 -> D (804) bootloader_flash: mmu set paddr=000f0000 count=1 size=20 src_addr=f1ab0 src_addr_aligned=f0000
17:20:29.603 -> I (827) boot: Loaded app from partition at offset 0x20000
17:20:29.603 -> I (827) boot: Disabling RNG early entropy source...
17:20:29.603 -> D (827) boot: Mapping segment 0 as DROM
17:20:29.603 -> D (829) boot: Mapping segment 4 as IROM
17:20:29.603 -> D (833) boot: calling set_cache_and_start_app
17:20:29.603 -> D (837) boot: configure drom and irom and start
17:20:29.603 -> V (841) boot: d mmu set paddr=00020000 vaddr=3f400000 size=215356 n=4
17:20:29.603 -> V (847) boot: rc=0
17:20:29.603 -> V (849) boot: rc=0
17:20:29.603 -> V (851) boot: i mmu set paddr=00060000 vaddr=400d0000 size=528132 n=9
17:20:29.603 -> V (857) boot: rc=0
17:20:29.603 -> V (859) boot: rc=0
17:20:29.672 -> D (860) boot: start: 0x4008319c
17:20:29.672 -> I (863) cpu_start: Pro cpu up.
17:20:29.672 -> I (866) cpu_start: Application information:
17:20:29.672 -> I (870) cpu_start: Project name:     esp32-arduino-lib-builder
17:20:29.672 -> I (876) cpu_start: App version:      ad0586a-dirty
17:20:29.672 -> I (880) cpu_start: Compile time:     Feb 18 2020 16:55:06
17:20:29.672 -> I (885) cpu_start: ELF file SHA256:<PHONE_NUMBER>000000...
17:20:29.672 -> I (890) cpu_start: ESP-IDF:          v3.3.1-95-gc38bf3534-dirty
17:20:29.672 -> I (896) cpu_start: Starting app cpu, entry point is 0x40083144
17:20:29.672 -> I (878) cpu_start: App cpu up.
17:20:29.672 -> D (904) memory_layout: Checking 12 reserved memory ranges:
17:20:29.707 -> D (909) memory_layout: Reserved memory range 0x3f800000 - 0x3fc00000
17:20:29.707 -> D (915) memory_layout: Reserved memory range 0x3ffae000 - 0x3ffae6e0
17:20:29.707 -> D (922) memory_layout: Reserved memory range 0x3ffae6e0 - 0x3ffaff10
17:20:29.707 -> D (928) memory_layout: Reserved memory range 0x3ffb0000 - 0x3ffb6388
17:20:29.707 -> D (934) memory_layout: Reserved memory range 0x3ffb8000 - 0x3ffb9a20
17:20:29.707 -> D (940) memory_layout: Reserved memory range 0x3ffbdb28 - 0x3ffbdb5c
17:20:29.707 -> D (946) memory_layout: Reserved memory range 0x3ffbdb60 - 0x3ffc83c0
17:20:29.741 -> D (952) memory_layout: Reserved memory range 0x3ffe0000 - 0x3ffe0440
17:20:29.741 -> D (958) memory_layout: Reserved memory range 0x3ffe3f20 - 0x3ffe4350
17:20:29.741 -> D (964) memory_layout: Reserved memory range 0x40070000 - 0x40078000
17:20:29.741 -> D (970) memory_layout: Reserved memory range 0x40078000 - 0x40080000
17:20:29.741 -> D (976) memory_layout: Reserved memory range 0x40080000 - 0x40098ac1
17:20:29.741 -> D (982) memory_layout: Building list of available memory regions:
17:20:29.741 -> D (988) memory_layout: Available memory region 0x3ffaff10 - 0x3ffb0000
17:20:29.775 -> D (994) memory_layout: Available memory region 0x3ffb6388 - 0x3ffb8000
17:20:29.775 -> D (1001) memory_layout: Available memory region 0x3ffb9a20 - 0x3ffbdb28
17:20:29.775 -> D (1007) memory_layout: Available memory region 0x3ffbdb5c - 0x3ffbdb60
17:20:29.775 -> D (1013) memory_layout: Available memory region 0x3ffc83c0 - 0x3ffca000
17:20:29.775 -> D (1020) memory_layout: Available memory region 0x3ffca000 - 0x3ffcc000
17:20:29.775 -> D (1026) memory_layout: Available memory region 0x3ffcc000 - 0x3ffce000
17:20:29.775 -> D (1032) memory_layout: Available memory region 0x3ffce000 - 0x3ffd0000
17:20:29.844 -> D (1039) memory_layout: Available memory region 0x3ffd0000 - 0x3ffd2000
17:20:29.844 -> D (1045) memory_layout: Available memory region 0x3ffd2000 - 0x3ffd4000
17:20:29.844 -> D (1051) memory_layout: Available memory region 0x3ffd4000 - 0x3ffd6000
17:20:29.844 -> D (1058) memory_layout: Available memory region 0x3ffd6000 - 0x3ffd8000
17:20:29.844 -> D (1064) memory_layout: Available memory region 0x3ffd8000 - 0x3ffda000
17:20:29.844 -> D (1070) memory_layout: Available memory region 0x3ffda000 - 0x3ffdc000
17:20:29.844 -> D (1077) memory_layout: Available memory region 0x3ffdc000 - 0x3ffde000
17:20:29.878 -> D (1083) memory_layout: Available memory region 0x3ffde000 - 0x3ffe0000
17:20:29.878 -> D (1089) memory_layout: Available memory region 0x3ffe0440 - 0x3ffe3f20
17:20:29.878 -> D (1096) memory_layout: Available memory region 0x3ffe4350 - 0x3ffe8000
17:20:29.878 -> D (1102) memory_layout: Available memory region 0x3ffe8000 - 0x3fff0000
17:20:29.878 -> D (1108) memory_layout: Available memory region 0x3fff0000 - 0x3fff8000
17:20:29.878 -> D (1115) memory_layout: Available memory region 0x3fff8000 - 0x3fffc000
17:20:29.878 -> D (1121) memory_layout: Available memory region 0x3fffc000 - 0x40000000
17:20:29.912 -> D (1127) memory_layout: Available memory region 0x40098ac4 - 0x4009a000
17:20:29.912 -> D (1134) memory_layout: Available memory region 0x4009a000 - 0x4009c000
17:20:29.912 -> D (1140) memory_layout: Available memory region 0x4009c000 - 0x4009e000
17:20:29.912 -> D (1146) memory_layout: Available memory region 0x4009e000 - 0x400a0000
17:20:29.912 -> I (1153) heap_init: Initializing. RAM available for dynamic allocation:
17:20:29.912 -> D (1159) heap_init: New heap initialised at 0x3ffaff10
17:20:29.912 -> I (1164) heap_init: At 3FFAFF10 len 000000F0 (0 KiB): DRAM
17:20:29.912 -> D (1169) heap_init: New heap initialised at 0x3ffb6388
17:20:29.981 -> I (1174) heap_init: At 3FFB6388 len 00001C78 (7 KiB): DRAM
17:20:29.981 -> D (1179) heap_init: New heap initialised at 0x3ffb9a20
17:20:29.981 -> I (1184) heap_init: At 3FFB9A20 len 00004108 (16 KiB): DRAM
17:20:29.981 -> I (1189) heap_init: At 3FFBDB5C len 00000004 (0 KiB): DRAM
17:20:29.981 -> D (1195) heap_init: New heap initialised at 0x3ffc83c0
17:20:29.981 -> I (1199) heap_init: At 3FFC83C0 len 00017C40 (95 KiB): DRAM
17:20:29.981 -> I (1205) heap_init: At 3FFE0440 len 00003AE0 (14 KiB): D/IRAM
17:20:29.981 -> I (1210) heap_init: At 3FFE4350 len 0001BCB0 (111 KiB): D/IRAM
17:20:29.981 -> D (1217) heap_init: New heap initialised at 0x40098ac4
17:20:29.981 -> I (1221) heap_init: At 40098AC4 len 0000753C (29 KiB): IRAM
17:20:29.981 -> I (1226) cpu_start: Pro cpu start user code
17:20:29.981 -> D (1237) clk: RTC_SLOW_CLK calibration value: 3258560
17:20:30.050 -> D (128) intr_alloc: Connected src 46 to int 2 (cpu 0)
17:20:30.050 -> D (128) intr_alloc: Connected src 57 to int 3 (cpu 0)
17:20:30.050 -> D (129) stack_chk: Intialize random stack guard
17:20:30.050 -> D (133) intr_alloc: Connected src 24 to int 9 (cpu 0)
17:20:30.050 -> I (137) cpu_start: Starting scheduler on PRO CPU.
17:20:30.050 -> D (0) intr_alloc: Connected src 25 to int 2 (cpu 1)
17:20:30.050 -> I (4) cpu_start: Starting scheduler on APP CPU.
17:20:30.050 -> D (158) heap_init: New heap initialised at 0x3ffe0440
17:20:30.050 -> D (163) heap_init: New heap initialised at 0x3ffe4350
17:20:30.050 -> D (168) intr_alloc: Connected src 16 to int 12 (cpu 0)
17:20:30.050 -> D (174) boot_comm: Both OTA copies are valid
17:20:30.050 -> D (177) esp_ota_ops: OTA[current] partition is marked as VALID
17:20:30.085 -> D (225) nvs: nvs_flash_init_custom partition=nvs start=17 count=13

I expected that the the second line from the bottom of the debug print comes from
static void set_actual_ota_seq(const bootloader_state_t *bs, int index)
function as I added LOG there. However, comparing the strings more precisely I found that the log added is
otadata.ota_state = ESP_OTA_IMG_VALID; ESP_LOGI(TAG, "ota_state set to ESP_OTA_IMG_VALID");
but the debug is something else. Therefore it comes from
static esp_err_t esp_ota_current_ota_is_workable(bool valid)
from file esp-idf/components/app_update/esp_ota_ops.c
where is line
ESP_LOGD(TAG, "OTA[current] partition is marked as VALID");
So it seems there is no connection to the factory partition at all

Finally, I have found the following:
file: ./components/arduino/cores/esp32/esp32-hal-misc.c
text:
void initArduino()
{
#ifdef CONFIG_APP_ROLLBACK_ENABLE
const esp_partition_t *running = esp_ota_get_running_partition();
esp_ota_img_states_t ota_state;
if (esp_ota_get_state_partition(running, &ota_state) == ESP_OK) {
if (ota_state == ESP_OTA_IMG_PENDING_VERIFY) {
if (verifyOta()) {
esp_ota_mark_app_valid_cancel_rollback();
} else {
log_e("OTA verification failed! Start rollback to the previous version ...");
esp_ota_mark_app_invalid_rollback_and_reboot();
}
}
}
#endif
So this is not a problem of esp-idf, but the validation is issued by initArduino... Why this is done there is very question for me. Since this is for esp-idf component, it may be probably closed.

I can confirm that removing the validation in arduino part solved the problem. Resolved as not a problem of esp-idf.


New port (DPDK): help needed

I would like to add a port. Being relatively new to vcpkg ports and no way expert in CMake I have a couple of questions.

how do I prevent package to even start trying to install on unsupported platforms? I saw some ports being downloaded, configured, and failed during the build simply because the port cant build on Linux. Check current platform/architecture and issue error message before starting the download of the source package?
Configured, built, installed not CMake project, then what? Should I create FindMyPackage.cmake to function properly? otherwise I dont see how CMake would find my headers/libs
Didnt find any option to execute command (VCPKG_EXECUTE_REQUIRED_PROCESS/execute_process) which contains double quotes. Found myself writing command to a file and then executing it. Example:

FILE(WRITE tmp/build_debug.sh "make config T=x86_64-native-linuxapp-gcc\nmake -j ${PROCS} -C \"${SOURCE_PATH}\" MAKEFLAGS=\"T=x86_64-native-linuxapp-gcc -j ${PROCS}\"")
FILE(COPY tmp/build_debug.sh DESTINATION ./ FILE_PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_READ GROUP_EXECUTE WORLD_READ WORLD_EXECUTE
     )
FILE(REMOVE tmp/build_debug.sh)

the package (DPDK) is very rich configuration-wise, multiple modules may be built or skipped during the build, what is the best practice in vcpkg? buld minimum? all features? just the default project settings, whatever it builds? how the end user controls what and how (compiler settings) will be build during install?
Linux stuff, how do I check if certain package is installed on the system? like, I need nasm how do I ensure that? sure I can execute some bash command and check with package manager it it there, but is this the way in the vcpkg?

I know, lot of questions, but let me assure you, more to come :)

Hi @kreuzerkrieg,
Thanks for the enthusiasm in adding a new port!
Porting DPDK will be a huge endeavor for sure; and DPDK would benefit in adding full CMake support upstream.
Regarding your questions:

You can check the variables set in each triplet to only support specific platforms/architectures (triplets docs)

For example, here are the contents of triplets/x64-linux.cmake:
set(VCPKG_TARGET_ARCHITECTURE x64)
set(VCPKG_CRT_LINKAGE dynamic)
set(VCPKG_LIBRARY_LINKAGE static)

set(VCPKG_CMAKE_SYSTEM_NAME Linux)

An example of disallowing a platform can be found in ports/pthreads/portfile.cmake.
Where the following condition is added at the very beginning of the portfile.
if(VCPKG_CMAKE_SYSTEM_NAME STREQUAL "WindowsStore")
  message(FATAL_ERROR "${PORT} does not currently support UWP")
endif()

Here's the documentation of how CMake finds installed packages, in short, the library needs to provide at minimum a <package_name>Config.cmake file, others file that may also be needed are <package_name>ConfigVersion.cmake and <package_name>Targets.cmake; these are usually generated by CMake after configuring and installing from a CMakeLists.txt file.
I do not know if you could just write a findDPDK.cmake but also I'm not very experienced with CMake myself, so maybe @ras0219-msft could provide some input here.

Hmm, I'm not if its possible... I would try to search usages of vcpkg_execute_required_process() in the whole repository to see if I can find an example or look at the source code of that function. If it is not supported then feel free to file an issue. (@ras0219-msft do you know if this is supported?)

Vcpkg follows an incremental philosophy, so adding a working port is better than not having it at all. Now, for what should be installed with the package; I would strongly recommend adding the features that would support the majority of use cases for the users of the library. I don't know the specifics of DPDK to make that judgement, but maybe the default installation is a good starting point.

Configuration can be added in following PRs, using features, similar to what has been done with boost, or other similarly feature-rich highly-customizable libraries.

There's a function to find and acquire such programs called vcpkg_find_acquire_program().

Hope this helps!

Hi @vicroms ,
Thanks for the input! looks like that a lot of work ahead, lets get the work done! :)

Ok, since CMake cant export imported libraries (see issue 14311) I have no idea how to export build artifacts the way it will reflect in *-config.cmake and *-target.cmake
The attempt can be seen here. Any help on how to do that will be appreciated

Ok, there is RFC PR, go ahead and check it out

resolved by #5388


collector http transport: support custom http.RoundTripper (#332)

Adds an HTTPOption to the HTTP exporters that allows overriding the
underlying http.RoundTripper to use on the *http.Client. This is useful
for designs that require more flexibility than just a URL, for instance
when forwarding spans to a local Envoy proxy over a unix domain socket.

Which problem is this PR solving?

This PR allows overriding the http.RoundTripper on the HTTP exporters' underlying *http.Clients. This is useful for use cases like forwarding span data to a unix domain socket.

Short description of the changes

Adds an HTTPOption for setting http.RoundTripper on the various HTTP exporters

@yurishkuro any chance you have time for a look at this?

Thanks for the review! Looks like I don't have access to merge


Update big_red_button to push to Google storage

This patch updates big_red_button to release the artifacts produced from the
|dist| target in ninja.

lgtm


Translation in arabic

The translation in arabic which should be from right to left, is done from left to right. Words should be as they are, but written in the opposite way (right to left)

that would be set in the content.opf. In the Spine you can set a reading direction. for example <spine toc="ncx" page-progression-direction="ltr"> to <spine toc="ncx" page-progression-direction="rtl">
And there is probably a way to to it in the css.
The Translation tool has nothing to do with it directly.


Show CTA for street addr georef when no credits left

Fixes #4506

enables street addr tab, but prompts user a CTA to upgrade (points to the standard upgrade URL given by config), since can't continue with geocoding w/o valid quota
for non-cartodb-hosted deploys the upgrade-specific parts won't be visible

on the technical side, I had to refactor a little to accommodate the new requirements:

extracted the default_footer to a common view that is reused for all tab contents
implemented the new upgrade_footer as a special case for the street addr. tab,
extracted the shared content_header, so no template necessary for the rows view anymore (concepts makes more sense now too)

@alonsogarciapablo can you do the code review please?
cc @saleiva @josecruz for the visual

the whole form should be deactivated on this case

Frontend tests were OK :+1: (details)

Yeah, sorry, missed that one when looking at the mockup. Now solved (here shown with how the footer is displayed if not run on a cartodb-hosted deploy):

The credits part should be not visible either. If you have credits means that you can geocode, right?

Yeah, don't mind that in the screenshot, I just set the data for the state to show the footer to take the screenshot.

Frontend tests were OK :+1: (details)

Since I was waiting for review I took care of geocode footer quotes #4523 here too (needed the footer changes to avoid merge issues), it was a minor change anyways:

Frontend tests were OK :+1: (details)

Taking a look @viddo.

Left a couple of comments. Other than those: great job @viddo! :clap: :clap: :clap:

Frontend tests were OK :+1: (details)


random layers

I can't comprehend how vpype-dxf reads layers.
It seems that geometry types (polyline, line, curve, etc.) and color both interfere with what vpype-dxf interprets as layers.

using a dxf with 3 layers, vpype-dxf reads 2 layers. The second and third layer somehow get joined
using a dxf with 3 layers + 3 colors,  vpype-dxf reads 6 layers. They don't seem to make sense at all

Code-wise this should be a pretty reasonable interpolation of ezdxf's code.
https://ezdxf.readthedocs.io/en/stable/tutorials/layers.html
It reads the geometry objects. And I think it puts each of them in their own layer.
    from vpype.io import _convert_flattened_paths as i_trample_your_api
    color = None
    for entity in dxf.entities:
        entity_to_svg(elements, dxf, entity, scale)
        if len(elements) > 1:
            new_color = elements[-1].stroke
            if color != new_color:
                lc = i_trample_your_api(elements, quantization, simplify, parallel)
                document.add(lc)
                elements.clear()
                color = new_color

It reads the entities and if the the entity has a different color than the previous color it says that that is a new layer and adds that. It should only have as many layers as colors.

It should only have as many layers as colors.

I thought so too. I experimented with various dxf files and layer / color / geometry combinations:
when using a dxf with 1 layer that contains only lines in 3 different colors vpype-dxf generates 7 layers. Some seemingly random entities of a color-group end up in an additional layer or even a layer from another color-group.
I’m not sure if I interpret the code correctly but could this be a draw order issue? Meaning that once an entity with another color comes up, entities with a previous color further down the path cannot be put in the previously generated layer?

I might need some test files, the couple files I had didn't create any more entities than were in the file. Which seems to be the only way I can think to generate more layers than objects. Unless I'm misunderstanding what's wrong here.

here are some of the files I used: dxf-files.zip
3colors.dxf generates 7 layers for me. 3layers.dxf generates only 2 layers

#0000ff != #ff0000
#ff0000 != #0000ff
#0000ff != #ff0000
#ff0000 != #0000ff
#0000ff != #00ff00
6
Correctly the 3colors should have 6 layers and 3 layers should have 1. There's a bug in the checking routine that makes the first entity always it's own layer.

Okay, fixed the bug so it will still give you weirder layers but it'll be consistent about it. 0.0.5 should be on pypi.
Anytime the color changes that's a new layer even if the color change is to a color that already existed previously. And the dxf layers themselves should be corrected. So 3 layers gives 1 layer and 3 colors which flips between those colors several times ends up with 6 layers.
Now, we can discuss some options to do things a different way. For example map based on color and putting the new entity in the older layer. Likely would need an option or something in dread for that.

For example map based on color and putting the new entity in the older layer.

in my opinion that would be a very useful improvement.

Likely would need an option or something in dread for that.

I agree. I think that the code could even be reused to allow for all entities to be sorted by lineweight, layer(original) and maybe also by group.
Using ezdxfs get_dxf_attrib method could be useful.

Yeah, sounds about correct. Unless vpype has some better methods to store the data that I don't know about it'll be lost after initial load. So group by color is the current default, and --map would be an option. So each color in the document gets its own layer. Declaring map means that those we have 1 color group for each color, and go back and put that data back in the correct color-group regardless of the ordering.
We'd also have layer which probably should be the default. Layer on a per entity basis would be fine but that could be done directly in vype. lineweight would also be quite reasonable, linetype  as well. Since most of these are free I might as well add in thickness though it's only an attribute in DXF R2000 and transparency. Even though I seriously doubt anybody will use those for much of anything.

I did some research on ezdxf: all_entities_by_attribute = dxf.query().groupby('color') seems to do exactly what we are after. 'color' could be replaced by a variable (linetype, layer, etc.)
I just can't get my head around how color/layer gets managed after entity_to_svg(elements, dxf, entity, scale)
anyway, that's what I have so far:
    all_entities_by_attribute = dxf.query().groupby('color')
    color = None
    for group in all_entities_by_attribute.values():
        for entity in group:
            entity_to_svg(elements, dxf, entity, scale)
            if len(elements) > 1:
                new_color = elements[-1].stroke
                if color is None:
                    color = new_color
                if color != new_color:
                    lc = i_trample_your_api(elements, quantization, simplify, parallel)
                    document.add(lc)
                    elements.clear()
                    color = new_color
        if len(elements):
            lc = i_trample_your_api(elements, quantization, simplify, parallel)

            document.add(lc)
        return document

Hm. It would be far preferred to use as much ezdxf internal code as I can. I'll check up on the query() command there.

That would group them correctly, but I still need to check that property correctly, which makes it somewhat moot. Since I still need to get that stuff.
The code there just converts entity_to_svg() since the loading code in vypype is kind of hardcoded as svg. The i_trample_your_api is using abey's sort of protected method for loading that data since I'm not re-inventing the wheel. I'm basically converting the data to svg and then call the vpype loading code for that stuff.

FWIW here ist the link to where I read about it: link
query() can be used to filter for certain geometry

It's a really pretty api, but I'm not sure I can use it effectively given the constraints on the code. Though entity type should certainly be a grouping criteria for the layers. I'm mostly just using ezdxf to get the objects and properties and somewhat pointlessly rewrite them to svg to then feed into vpype.
But, there'd absolutely be something to a more advanced vpype-dxf that relies more heavily on those features. And just feeds the properties you give it into the code. You could call that query() command with a custom filter and groupby() and basically feed that stuff directly into vpype. So if you wanted to load a dxf but only the lines entities you could absolutely filter that really easily by feeding that into query routine there.
In fact I might need to take a step back and see if that's reasonable enough to implement. Since query() is pretty robust it wouldn't be too hard to force feed it a groupby() and query directly from the CLI.

    all_entities_by_attribute = dxf.query(query=query).groupby(groupby)
    for group in all_entities_by_attribute.values():
        for entity in group:
            entity_to_svg(elements, dxf, entity, scale)
            lc = i_trample_your_api(elements, quantization, simplify, parallel)
            document.add(lc)
        elements.clear()
    return document

I reconsidered and since we don't really need the fancier stuff and it should run through ezdxf it means if there's not something in there it's up to ezdxf to fix that.
Trying a version in #6

@click.option(
    "-Q",
    "--query",
    type=str,
    default="*",
    help="ezdxf query string. eg. 'LINE', 'LINE[layer==\"MyLayer\"]'",
)
@click.option(
    "-g",
    "--groupby",
    type=str,
    default="color",
    help="Classify layers based on given criteria. color, linewidth, linetype, thickness, transparency",
)
@vp.global_processor
def dread(
    document: vp.Document,
    file,
    quantization: float,
    simplify: bool,
    parallel: bool,
    query: str,
    groupby: str,
) -> vp.Document:

The above needs the modified headers to write the query and groupby strings.

this looks very promising. groupby and query are a great addition.
It does produce a layer for every entity though. Would entity_to_svg need adaptation in order for this to work?

vpype dread -Q 'LINE CIRCLE[color==1]' 3colors.dxf write lines-only.svg looks pretty nice.  Takes a bit to get the query fine.

vpype dread -g lineweight file.dxf show --colorful  something like that on a messy file works wonders.
really nice addition! thank you for that
There is a small typo in the description for --groupby. it should be lineweight instead of linewidth.

Okay, I'll fix the typo.  It might need some readme changes too. It's just feeding this stuff into ezdxf now (solid suggestion thing, thank you for that and the research behind it). So the readme will need pointing to the ezdxf pages regarding queries.

Played with it a bit. Took a while to figure out what it was doing fully, I just knew it solved the main use-case. That's useful can use -g center and get them grouped by circle centers or radius. handle, owner etc. Just any dxf-property which is a lot. Though many things lack them and they don't get put in a group.


Code style

Issue #7
If need be, I can squash all of these into one commit.

Nice, did you use a script to do this or did you do it all manually?
Also the only problem I see with this is that it may make current pull requests unable to automatically merge.

I was tempted to write a script for this, but it was all manual.

I've just gone through files changed. Yes, it took a while. Obviously there were a few instances where the codestyle was missed, or blocks of repeated code weren't consistent ( Changing 1 liners to blocks, but not changing them all to blocks ).
As far as I can tell there should be 0 impact on performance. I haven't tested all of SF functionality with these changes, but from inspection none of them modify behaviour, just cosmetics.
Hopefully this won't break any current PR's. :)

It did break current PRs :(


Product comparison no template can be selected

Description: In a product comparison sales channel, a template (billiger, idealo or google shopping) can be selected and automatically added to the template of the sales channel. This does not work anymore.
Steps to reproduce:

create new product comparison sales channel
select a template
save

Expected result:

the template that I have selected is added to the template of the sales channel

Actual result:

nothing happens

[public] Shopware automated response: This issue is linked to the internal issue: NEXT-36133
[created from NEXT-36133, comment 500098]

[public] The issue was caused by a problem in the Social Shopping plugin. The fix will be included with the next Social Shopping release, v4.2.0.


Barcode recoginization failed with Low quality Images

This is working great with Excellent Quality Images. I am facing the Issues when I try to recognize the Barcode through Camera(Low Resolution). I came to know that the Problem is with Binarizing the low quality Images. You have any suggestions on Improving the Binarization to recognize the barcodes on low quality Images.
are you planning to work on this Improvisation.
let me know if you aware of any open sources to solve this Issue.

It is a known issue. More work is needed to get the library to with lower quality images. We have tried a few different approaches of pre-processing but not fair better than what we have here. I am still confident there is a workable model here we just need more time to get to it. We will take a look again, maybe middle of next year (were focused on other projects at the time). Pull requests accepted ;)

Thanks for Quick reply. Mean while you have any suggestions for me to look into. I tried with The below mentioned changes with no luck
https://groups.google.com/forum/#!topic/zxing/Y1OPo44e93Y

The core issue in our tests has been lack of focus on getUserMedia - https://code.google.com/p/chromium/issues/detail?id=343894
One approach we have not tried that I think has promise is capturing via video and doing frame averaging to sharpen the picture trying candidates along the way.

We should look at some of the techniques applied here http://www.windytan.com/2016/02/barcode-recovery-using-priori.html and see if we can improve results at all.

Hi @rmhrisk , are there currently any plans to revisit this? I would love to help in any way I can, but I am new to writing code for pattern recognition. Thanks

@kjhe11e I would love to but at this point it is unclear when I can get back to this.

OK thanks, I appreciate the quick reply.

Useful for anyone looking to fix this:
https://medium.freecodecamp.org/lets-enhance-how-we-found-rogerkver-s-1000-wallet-obfuscated-private-key-8514e74a5433


Fix value in path extractor

Konst added a fix because the tuple need to be stringified, but set the value to 1, even if the path was seen multiple times in the documents. This corrects that.

LGTM, thanks.


WIP: Specify file format for speedscope

Fixes #65

Pull Request Test Coverage Report for Build 181

3 of 79 (3.8%)  changed or added relevant lines in 3 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage decreased (-1.0%) to 36.789%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

profile.ts
0
3
0.0%

file-format.ts
0
73
0.0%

Totals

Change from base Build 179:
-1.0%

Covered Lines:
1114

Relevant Lines:
2925

💛  - Coveralls


Equality of two expressions similar to sympy

Hello!
When trying to check the equality for two expressions I want to utilize a method similar to the .equals() method in sympy (see example below)
import sympy as sp
import symengine as se

# In Symengine
expr1: se.Expr = se.S("(y + 1)**10/1024")
expr2: se.Expr = se.S("((1/2 + (1/2)*y)**10)")
print(expr1 == expr2)                       # False
print(expr1.expand() == expr2.expand())     # True

# In Sympy
expr1: sp.Expr = sp.S("(y + 1)**10/1024")
expr2: sp.Expr = sp.S("((1/2 + (1/2)*y)**10)")
print(expr1 == expr2)                       # False
print(expr1.expand() == expr2.expand())     # True
# 👇 behaviour I want to have
print(expr1.equals(expr2))                  # True

Is there a way to do this in symengine without calling additional methods (as .expand()) or using sympy?
Thanks in advance!

The closest in symengine is to use the is_zero property for the difference of the expressions. It is currently quite weak and will not be able to handle this expression.
I think in the end the only feasible way of comparing two polynomials for equality is to first expand them so the underlying function would need to do this. Doing it without expanding is a hard problem in general (see https://en.wikipedia.org/wiki/Polynomial_identity_testing).
The implementation is here https://github.com/symengine/symengine/blob/master/symengine/test_visitors.cpp if you'd like to take a look. Perhaps adding an is_equal function would be also be of value.


Build a globally accessible vault

Please select if your request is either something new or an enhancement

[ ] Enhancement of an existing Feature.
[X ] Request of a new feature.

Please select the area your request applies to. (Multiple selections are Possible. You can leave blank if you're not sure.)

[X ] Workspace - VSCode workspace, vaults, Intellisense/autocomplete, Dendron settings
[ ] Lookup - Dendron's Lookup Command
[ ] Views - Dendron Preview, Tree View, Side Panels in the UI
[ ] Schema - Dendron Schemas
[ ] Pod - Data import from / export to Dendron
[ ] Publish - External Site Publish
[ ] Markdown - Markdown features, such as syntax support and features

Is your feature request related to a problem? Please describe
I use many workspaces and repos in VSCode. Dendron is not initialized in most of these workspaces. I'd like to have a globally accessible vault for general note taking and record keeping.
Describe the solution you'd like
Add commands for managing global settings and a global vault. These settings would live in dendronrc.yml. When these settings are present, Dendron will load normally even if the active workspace is not initialized for Dendron.
Describe alternatives you've considered
Here is an alternative extension that works provide globally accessible notes: https://github.com/patleeman/VSNotes
This project is dead, underdeveloped, and has significantly less functionality than Dendron

Thanks @Lodrus for the suggestion.
I suppose that your preference is to work out of one editor window as opposed to multiple (i.e. your Dendron notes in one window, your code/other project in another)?
In your use-case, it does seem tedious to keep using vault-add for every different workspace you have; having some way to globally access Dendron vaults makes sense.

For reference, this issue spawned from a discussion in Discord: https://discord.com/channels/717965437182410783/999396933930057739
Yes, you're correct about my preference to work in a single VSCode window.


UI: Add cancel button missing on dialog

Description
This PR for the fix to add cancel button missing on dialog

Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[x] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity
Feature/Enhancement Scale

[ ] Major
[x] Minor

Bug Severity

[ ] BLOCKER
[ ] Critical
[ ] Major
[x] Minor
[ ] Trivial

Screenshots (if appropriate):
After fix:

How Has This Been Tested?

@blueorangutan ui


Expose navigation history from NavigatorState

Hi,
Could you expose access to navigation history (NavigatorState._history) in order to be able to view history without reinventing the wheel. It should be quite easy to implement, since just simple getter need to be added, like this:
List<Route> get history => List<Route>.from(_history);

@marynovskyi
There was similar issue raised earlier which was closed in favor of https://github.com/flutter/flutter/issues/45938. You may need to follow-up in it to get more details on your issue.
Also, check out Navigator 2.0 document to get more insights on it.
Closing this as duplicate.


Logic error in smart contract

At the time of mint jettons, if you set the "Decimals" value to 0. Fund transfers are expected to be integer only.
But if you sending 1 jetton to a reciver - in TON keeper incoming transactions contains +0.000000001 of minted Jettons. And when you try send it to somebody else - you may choose only integer number, and can't set the real balance amount. So jettons are stuck in wallet.
Thus option "Decimals"  is useless, and the contract can only work properly if the value is 9

I think I was a problem with a similar problem. Set a decimal number as 2, I can't send with, get a mistake in TonKeeper "not enough funds".
Sorry for bad English.


Bug: CoAP with TLS doesn't Support UDP

What were you trying to achieve?
Test coap server with TLS i.e providing certificate and key
What are the expected results?
To work with TLS
What are the received results?
cannot create new tls listener: cannot create new net tcp listener: unknown network udp

Steps To Reproduce
Provide certificate and key when starting coap server
In what environment did you encounter the issue?
main branch
Additional information you deem important
https://github.com/absmach/magistrala/blob/ff12f7fca35534a2b012ed10d320b58ed13eb46a/internal/server/coap/coap.go#L58C1-L60C6
go func() {
	errCh <- gocoap.ListenAndServeTCPTLS("udp", s.Address, tlsConfig, s.handler)
}()

This works when the network is TCP and not UDP

@dborovcanin @1998-felix can someone please take a look at this issue

DTLS termination will be carried out on mproxy and is handled by https://github.com/absmach/mproxy/pull/60

Resolved by https://github.com/absmach/magistrala/pull/2139


move routes generation to a routes helper file

For test coverage, we could probably just start with some simple integration tests.

For unit tests, looks like we can create a new route set and add routes to it:
https://github.com/heartcombo/devise/blob/d0f0853c75defb10d83f4b2576b8df9e4cbb3695/test/routes_test.rb#L262-L264
This is pretty cool!

I added a simple integration test for the sessions controller only, maybe someone would want to add coverage for the rest of the controllers based on that if we open an issue for it? If not, I will do it later.
I will also look into those unit tests at some point.
There is an unrelated commit to allow a blank password on update, otherwise if you want to update the model without providing the password it will be invalid.


Clean up steps in CL2 test configs.

The change adds name for each steps describing what it does. I believe this will make the test configs easier to understand to people not familiar with clusterloader2.
In addition we'll be logging when step starts and ends, so it's easier to identify particular steps in the log.

It's not directly related, but I sent this PR when doing https://github.com/kubernetes/perf-tests/issues/413.
This PR is no simplifying per se, but is kind of a clean up.

Nice one! LGTM except a small nit.

Nice one! LGTM except a small nit.

Done.

/lgtm

/hold

/hold cancel
/assign @wojtek-t

/lgtm


[ERROR] Unsupported Vdex version  - [WARNING] Invalid Vdex header

Hello Everybody!
I'm trying to get the cdex files from my boot-framework.vdex file but i run into thoses error:
I did look on other posts to try to figure out what was wrong by myself without luck:
tried on master and 0.5.2 with no luck: same error:
Vdex are from Android 9 Onplus 6 Rom
root@omv-labo:~/vdexExtractor# /root/vdexExtractor/bin/vdexExtractor -i "/root/boot-framework.vdex" -o "/root/extracted" --log-file=/root/log.txt [INFO] Processing 1 file(s) from /root/boot-framework.vdex [ERROR] Unsupported Vdex version [WARNING] Invalid Vdex header - skipping '/root/boot-framework.vdex' [INFO] 0 out of 0 Vdex files have been processed [INFO] 0 Dex files have been extracted in total [INFO] Extracted Dex files are available in '/root/extracted'
Log file is empty.
Am i doing something wrong?
Thanks for your help!

Can you please enable verbose mode in output and attach/share the vdex somewhere for me to inspect?


Fix rule duplication with static NAT rules

Description

The VR code has provision for inserting rules at the top or bottom by specifying "front" as the second parameter to self.fw.append.  However, there are a number of cases where someone has been unaware of this and added a rule with the pattern self.fw.append(["mangle", "", "-I PREROUTING"....  This causes the code to check for the rule already being present to fail, and duplicate rules end up being added.
This PR fixes two of these cases which apply to adding static NAT rules.  I am aware of more of these cases, but I don't have the ability to easily test the outcome of fixing them.  I'm happy to add these in if you're confident that the automated tests will be sufficient.  Searching for "-I (case sensitive) finds these.
The code for dealing with "front" is included below to show that this shouldn't have any ill effects:
if fw[1] == "front":
    cpy = cpy.replace('-A', '-I')

Fixes: #3177
Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] New feature (non-breaking change which adds functionality)
[X] Bug fix (non-breaking change which fixes an issue)
[ ] Enhancement (improves an existing feature and functionality)
[ ] Cleanup (Code refactoring and cleanup, that may add test cases)

How Has This Been Tested?

Local tests were performed (see #3177 for details of symptoms), and we have had this fix deployed in production on advanced networks for a couple of months.

@blueorangutan package

Can you review this - @ustcweizhou @anuragaw @shwstppr ?
@blueorangutan package

@rhtyd a Jenkins job has been kicked to build packages. I'll keep you posted as I make progress.

Thanks for the PR @richardlawley - do you think it can cause regression when the VR has multiple public IPs (i.e multiple public nics) as this reverts changes from https://github.com/apache/cloudstack/commit/40d77460386342126fb5533a9139bf6d08137d1d

Nevermind I compared your changes with what Jayapal was trying to do, LGTM.

Packaging result: ✔centos6 ✔centos7 ✔debian. JID-2838

@blueorangutan test

@rhtyd a Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

Trillian test result (tid-3641)
Environment: kvm-centos7 (x2), Advanced Networking with Mgmt server 7
Total time taken: 29513 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr3366-t3641-kvm-centos7.zip
Smoke tests completed. 69 look OK, 0 have error(s)
Only failed tests results shown below:

Test
Result
Time (s)
Test File

I was just testing it. it works fine.


What is the proper way to do exception handling?

I am using IDialogContext.Fail to propagate the exceptions to the previous dialogs, I even did a ExceptionHandlingDialog, which works, but the stacktrace of the exception is always sent to user regardless. Any way to make this user friendly?
[Serializable]
public class ExceptionHandlingDialog<T> : DialogBase<T>
{
    private readonly DialogBase<T> _child;

    public ExceptionHandlingDialog(DialogBase<T> child)
    {
        if (child == null) throw new ArgumentNullException(nameof(child));
        _child = child;
    }

    public override async Task StartAsync(IDialogContext context)
    {
        context.Call(_child, MessageReceiveAsync);
    }

    private async Task MessageReceiveAsync(IDialogContext context, IAwaitable<DialogResult<T>> result)
    {
        try
        {
            var dialogResult = await result;

            context.Done(dialogResult);
        }
        catch (Exception e)
        {
            await HandleExceptionAsync(context, e);
        }
    }

    private static async Task HandleExceptionAsync(IDialogContext context, Exception exception)
    {
        var message = context.MakeMessage();

        message.Text = "There was an error with your order";

        await context.PostAsync(message, CancellationToken.None);

        context.Reset();
    }
}

Add an extra root dialog that swallows the exception and prevents it from propagating, e.g. Chain.DefaultIfException.

I'm going to close this issue, but feel free to open a new issue for further discussion.


Starlight Blog doesn't override MarkdownContent.astro since Starlight Image Zoom was added

Hello!
I think you have a unnoticed problem with your blog because if you look at the one blog post, you'll see that the author and creatingTime and all the features from Starlight Blog aren't rendering properly any more. This unintended behaviour is probably since https://github.com/mscerts/hub/commit/7cd6c6eddaedb834752127f7bb0d59c918b0c270 (addition of Starlight Image Zoom).
The reason for this problem is as following: Starlight Image Zoom AND Starlight Blog plugins both try to override the MarkdownContent.astro component from Starlight. This doesn't work because only ONE plugin can override a component. Hence, the Starlight Blog gives you a warning in the build process, that it can't override the MarkdownContent.astro component any more (but it doesn't through an error, so it builds successfully).
Unfortunately, I currently have no solution to this problem because I can't figure out how to override the component correctly.
Fortunately, I'm currently trying to figure out how to make both plugins work together by writing with the creator of both plugins: HiDeoo.
If I remember, I'll create a PR for you which should fix this issue when I have figured out how I can override it correctly.
In the meantime: You could comment the integration of Starlight Image Zoom:
integrations: [
		starlight({
			plugins: [
				//starlightImageZoom(),
				starlightBlog({
					authors: {
						nighthouse: {
						name: 'nighthouse',

Fixes the bug, merged. Thank you ♥


How to use with dotnet cli and csproj?

The current instructions for using the dotnet cli use a project.json and not a csproj.
I've tried to get csproj to work with stylecop.json but it seems to have no effect.
dotnet-test.csproj
<Project Sdk="Microsoft.NET.Sdk">
	<PropertyGroup>
		<OutputType>Exe</OutputType>
		<TargetFramework>netcoreapp2.0</TargetFramework>
		<CodeAnalysisRuleSet>./dotnet-test.ruleset</CodeAnalysisRuleSet>
	</PropertyGroup>
	<ItemGroup>
		<!-- No effect. No error on bad path. -->
		<AdditionalFile Include="./stylecop.json" />
		<AdditionalFiles Include="$(SolutionDir)/stylecop.json" Link="stylecop.json" />
	</ItemGroup>
	<ItemGroup>
		<PackageReference Include="StyleCop.Analyzers" Version="1.0.2" />
	</ItemGroup>
</Project>

dotnet-test.ruleset
<?xml version="1.0" encoding="utf-8"?>
<RuleSet Name="The Rules" ToolsVersion="10.0">
	<Rules AnalyzerId="StyleCop.Analyzers" RuleNamespace="StyleCop.Analyzers">
		<Rule Id="SA1652" Action="None" /> <!-- Don't use XML documentation -->
		<Rule Id="SA1633" Action="None" /> <!-- No file header -->
	</Rules>
</RuleSet>

stylecop.json
{
	"$schema": "https://raw.githubusercontent.com/DotNetAnalyzers/StyleCopAnalyzers/master/StyleCop.Analyzers/StyleCop.Analyzers/Settings/stylecop.schema.json",
	"settings": {
		"indentation": {
			"useTabs": true
		}
	}
}
Intentional parse error -- no effect

Program.cs
// This file uses tabs
using System;

public class Program
{
	public static void Main(string[] args)
	{
		Console.WriteLine("Hello World!");
	}
}

I'm still getting warning SA1027: Tabs must not be used errors. How do I configure this?
This issue is similar to #2028, but it doesn't go away if I fix the parse error in stylecop.json.

Fixed this by upgrading to 1.1.0-beta004.

I've tried this now an 1.1.0-beta004 still with no effect.
I get a warning that:
  The stylecop.json settings file could not be loaded

And a bunch of stylecop warnings.

Hi @alexandru-calinoiu,
The message the you quoted indicates that the stylecop.json file that you are using is somehow invalid.

Thanks for the reply @vweijsters
But it does not look like it:
{
    "$schema":
        "https://raw.githubusercontent.com/DotNetAnalyzers/StyleCopAnalyzers/master/StyleCop.Analyzers/StyleCop.Analyzers/Settings/stylecop.schema.json"
    "settings": {
        "documentationRules": {
            "documentInternalElements": false
        },
        "orderingRules": {
            "usingDirectivesPlacement": "outsideNamespace"
        }
    }
}

Am I missing something?

Yes, of course a , :(


Template diffs

This PR add the class TemplateModelDelta that serves to compare two TemplateModel objects and compare their graphical structure. This allows for determination of if e.g. two Concept objects are equal or refinements of each other.
Important updates in this PR, in no particular order:

A prefix exclusion list is added to the key Config in order to allow to filter out certain prefixes
Concept.get_curie() is updated to not yield a prefix, id pair where the prefix is in the prefix exclusion list
Handle lists of concepts from GroupedControlledConversion in relation checks
The TemplateModel can generate a graph that can be used to visualize it or for comparison with other template models, which is used in the TemplateModelDelta class
A script that comapres all Biomodels Models with each other is added
Add tests for Concept.get_curie
Add tests for TemplateModelDelta

The tests kept failing because of 500 errors. Finally one test run cleared the hoops.


camera no video

when python interactive_control_train.py,there's no video from camera ,but images can generate into the folder ,what's wrong?

Hi @dantinr, we are not recording the video in either interactive_control_train.py or autonomous.py, this section should help you get started on capturing images whilst recording the video.

THX @Vignesh1115 , I'll try, have a nice day

Thank you @dantinr, I hope the link helped you record video while capturing images. Let me know if you need help with anything. I will be closing this issue.


Add support of LongCount aggregate function

I am using Effort.EF6 library version 1.1.4 from nuget.org.
I try to use LongCount function on IQueryable provided by Effort library, I get an error:
"BigCount is not a not supported DbFunctionAggregate"
Hovever, on real Entity Framework connection LongCount fully supported.
Please add support of LongCount function, this is requried by unit tests.
P.S. I suppose corrent error message is "BigCount is not a supported DbFunctionAggregate", without second "not".

Here is a quick reproduce:
using System.Data.Common;
using System.Data.Entity;
using System.Linq;
using Effort;

namespace EffortBug
{
    class Program
    {
        public sealed class Firm
        {
            public int Id { get; set; }
        }

        public sealed class DbContext1 : DbContext
        {
            public DbContext1(DbConnection connection) : base(connection, true) { }

            public DbSet<Firm> Firms { get; set; }
        }

        static void Main()
        {
            var connection = DbConnectionFactory.CreateTransient();
            using (var context = new DbContext1(connection))
            {
                context.Firms.AddRange(new[]
                {
                    new Firm(),
                });

                context.SaveChanges();
            }

            using (var context = new DbContext1(connection))
            {
                var count = context.Firms.Count();
                var longCount = context.Firms.LongCount(); // throws exception
            }
        }
    }
}

Hi,
This should fairly easy to do. Thanks for noting the messed up error message as well.


Merge

merging upstream changes into our branch, i'm hoping their tests are good enough to make sure this still works


Not found. Authentication passthru.

after following this steps to install devise + facebook oauth from wiki:
https://github.com/plataformatec/devise/wiki/OmniAuth:-Overview
I am getting this error
Not found. Authentication passthru.
when I click on:
<%= link_to "Sign in with Facebook", user_omniauth_authorize_path(:facebook) %>
routes.rb
 user_omniauth_authorize GET|POST /users/auth/:provider(.:format)        devise/omniauth_callbacks#passthru {:provider=>/facebook|twitter/}
  user_omniauth_callback GET|POST /users/auth/:action/callback(.:format) devise/omniauth_callbacks#(?-mix:facebook|twitter)

Any advise is welcomed.
Using rails 4, ruby  2.0.0p247 and Ubuntu.
Add:
on SO, there are couple of questions for the same problem, but not solved, so I quess that I am not alone who has this problem...

I'm struggling with this but the answer provided before is missing since the repository no longer exists. Can you please tell us how you managed to solve this?

+1

+1...

+1

1
Anyone manage to figure this out?

This is what failed to me http://stackoverflow.com/questions/27248166/devise-omniauth-linkedin-error-not-found-authentication-passthru/27969579#27969579

@jgonzalezd
That wasn't quite my issue as I was working with google_oauth2, where if you alter
config.omniauth :google_oauth2, ENV["GOOGLE_ID"], ENV["GOOGLE_SECRET"]
at all the server won't even start.
However, My issue seemed to be in a passed parameter to this in
config.omniauth :google_oauth2, ENV["GOOGLE_ID"], ENV["GOOGLE_SECRET"],
{
:name => "google", # this is the line that was giving me trouble
:scope => "email",
:prompt => "select_account",
:image_aspect_ratio => "square",
:image_size => 50
}
What I thought was altering the way in which the auth was returned
i.e. :google => {:name => "foo", :email =><EMAIL_ADDRESS>}
was instead altering and then mismatching the routes.
the devise generated user_google_oauth2_omniauth_authentication_path generated by devise was still pointing to users/auth/google_oauth2/authentication but the marked line in the arguments made the oauth expect users/auth/google/authentication

I was like that too. hope someone can help


implemented string-starts-with matcher

Closes: #151

@rultor merge

@rultor merge

@graur OK, I'll try to merge now. You can check the progress of the merge here

@rultor merge

@graur Done! FYI, the full log is here (took me 3min)


Implement Queue using Stack

Problem Statement: Given a Stack having some elements stored in it. Can you implement a
Queue using the given Stack?
Queue: A Queue is a linear data structure that works on the basis of FIFO(First in First out). This means the element added at first will be removed first from the Queue.

please assign me this issue

please assign this issue to me @Saloni6111

please assign me this issue

@naresh04122005 assigned!


dht - unresolved reference

I'm using a DHT22 temperature and humidity sensor and use the following import:
from dht import DHT22
PyCharm flags this as an unresolved reference however, the MicroPython firmware includes this library.  If I ignore this and upload my code, it runs without error.
I'm running:

Mac OSX High Sierra (10.13.4)
PyCharm professional 2018.1.3
MicroPython plugin 1.0.6
Frogo Pins board with a ESP8266EX

Shouldn't the dht library be recognised or have I missed something?

The MicroPtyhon plugin for PyCharm knows about MicroPython modules thanks to Python stub files with type hints (see PEP 484). Type hints are located here and are structured as:

MicroPython-specific modules
u-prefixed modules for the MicroPython standard library
Specific modules for MicroPython ports like ESP8266

I found dht at this documentation page. This module is not covered by type hints yet.
A pull request with a stub for dht for ESP8266 is welcome. The folder for the stub file is https://github.com/vlasovskikh/intellij-micropython/tree/master/typehints/esp8266. Please take a look at other stub files to get an idea of how they should look like.


Attempt to update to 2.80

I've tried to update your great add-on. I hope I didn't cause some new errors. And I cleaned up the UI a bit and right aligned it to make it more in the 2.80 style.
If you don't like it and don't want to use it, no problem.
Thanks again for this great add-on.

A few small things.

Thanks for those updates.
I have built on top of your changes and pushed Blender 2.80 update under #21
Mostly I had to adjust tests.


Make defaulted paths as modified, on existing documents

This should fix #2558

Well, this apparently breaks a lot of other stuff and I'm having trouble coming up with a fix at the moment, but I think this makes the point.  We probably want fields populated from the schema defaults to persist when saved right?

I see the general idea and thanks for the work thus far. I agree that those defaults should persist, but I unfortunately can't merge this PR with so many broken tests :(

Of course, any general direction or idea as to why it's breaking the other tests?

I suspect there are better ways to do this - I'd imagine somewhere there's a check that says "if this is a new document then save defaults, otherwise don't". I'd try removing that logic and seeing what happens.


"Miami, FL" should technically be "Miami-Dade County, FL"

In the sentence "We at Code for Miami have visualized Miami's 2016 budget proposal," don't forget that this is actually the county, not the city of Miami who has their own thing going on. So any thing specifically marked Miami should be Miami-Dade County for clarity.

Fixed - http://miamigraph.com/


Ensure to honor --test=rspec argument

How to reproduce the problem.
% git clone https://github.com/lotus/lotus.git
% cd lotus && bundle
% bundle exec lotus new bookshelf --test=rspec

Then bookshelf should have a RSpec setup, but it has Minitest instead.

This is a false problem, it was due to the presence of .lotusrc in my local lotus directory. That is an artifact that should be deleted after the test suite is run.
This commit ensures the cleanup. https://github.com/lotus/lotus/commit/750ba02c1049057a0ef22a922abeababe8973dfc


Fix full outer join output row count

ref: #2124
Considering it's very hard to make up this case in UT, and fix is quite straightforwad, is it okay not to add UT?

run starrocks_fe_unittest

run starrocks_clang-format


Schuenemann2018 2

Pull Request
This PR is for a

[x] New Publication(s)
[ ] Correction

For the following list(s):

[ ] ancientmetagenome-anthropogenic (README)
[ ] ancientmetagenome-environmental (README, ask @thedir-team-dirt for advice)
[ ] ancientmetagenome-hostassociated (README, ask @thedir-team-bugparty for advice)
[x] ancientsinglegenome-hostassociated (README, ask @thedir-team-pathopeeps for advice)

New Publication
Publication Information
This pull request is to add samples from the following publication(s):
This is to close #308
Checklist

[x] Publication is published (preprints currently not accepted)?
[x] Checked the publication is not already in the database?
[x] Checked samples in this publication are not previously published data (newly re-sequenced metagenomes are OK!)?
[x] Samples are shotgun metagenomes (hostassociated-singlegenome may also contain whole-genome enriched data)?
[x] Checked the list follows conventions as described in the corresponding sample type's README file (e.g. using ERS/SRS accession codes for ENA/SRA)?
[x] Changelog is updated to include the publication under 'Added'?
[ ] Pull request has passed validation checks (see automated comment from github-bot)?
[ ] Review requested from corresponding team (see list of lists above for each team)?
[ ] (If applicable) Made a separate PR to add new categories to controlled lists (stored under /assets/enums, e.g. material or archive)? If so the corresponding PR is here:

If you do not know how to check errors in failed validation checks, expand here

Correction
This PR is for

[ ] ancientmetagenome-hostassociated
[ ] ancientsinglegenome-hostassociated
[ ] ancientmetagenome-environmental
[ ] ancientmetagenome-anthropogenic

Reference
This pull request is to correct samples from the following publication(s):
This is to close
Description
The issue is:

Checklist

[ ] Checked the corrected entries follow conventions as described in the corresponding sample type's README file (e.g. using ERS/SRS accession codes for ENA/SRA)
[ ] Changelog is updated to include the publication under 'Changed'?
[ ] Pull request has passed validation checks (see automated comment from github-bot)?
[ ] Review requested from corresponding team (see list of lists above for each team)?

Two questions on this one.

it's the second Schuenemann 2018 paper in the database! What does that mean for project_name?
They provide radiocarbon dates for 2 of the 3 samples, but only general archaeological context info for the 3rd (all 3 are from the same site). Can we extrapolate a date for that one or should we not include it?

They provide radiocarbon dates for 2 of the 3 samples, but only general archaeological context info for the 3rd (all 3 are from the same site). Can we extrapolate a date for that one or should we not include it?

Yup that's fine! See: https://github.com/SPAAM-community/AncientMetagenomeDir/blob/master/ancientsinglegenome-hostassociated/README.md#sample_age and 'proxy dates'


docs: Rename to "reading," "writing," and "math"

The recent changes involve reordering and updating directories and funding splits within the elimu.eth repository.

@coderabbitai elimu.eth is not a repository; it's an ENS name.


Debugging error on errorNoEvents

I have a question about a thrown error.
The getSteps call returns 'errorNoEvents' on some iOS devices. How can I figure out what went wrong? Is there an original error that came from the HealthKit API? the thrown error doesn't seem to contain much information.

@rlems have you solved this issue?