11932 Fix Proprietor and Partner - UX Improvements

Issue #: bcgov/entity/11932
Description of changes:
UXA Observations
SP; Individual

Future*: The optional BN for the proprietor is not displayed in the proprietor list.
Future*: The optional BN for the proprietor is not displayed in the proprietor edit form; it should be displayed as read-only field and value.

SP; DBA

[x] The BN entered for Business Unregistered in BC appears as unrendered code.
[x] When editing a business proprietor, "I confirm the proprietor has legally changed their name and that they remain the same person." should read, "I confirm the proprietor has legally changed their name and that they remain the same business."
[x] The business proprietor's name text is not vertically aligned well with the icon in the Proprietor list section. See how CreateUI does it as that one, during registration, properly aligns the icon and the text.

GP

[x] When editing a business partner, "I confirm the proprietor has legally changed their name and that they remain the same person." should read, "I confirm the proprietor has legally changed their name and that they remain the same business."
[x] In the error state when the user removes partners to the point where there are less than 2, the vertical error marker line that appears needs to be left aligned and also extend to the bottom of the white background.
[x] On the Review and Confirm page, in the Partner Information section, the partner name and their icons are not properly vertically aligned. See how CreateUI for reference.
[x] On the Review and Confirm page, in the Partner Information section, the information of the partner whose data was not edited is displayed. Only the changed partner should appear here.
[x] When adding a business partner that is Unregistered in B.C., when using non-BC address, the form throws an error. The partner address can be anywhere and thus should not throw an error.

Future*:

Business Number isn't hooked from states/BE (ready to display when hooked up)
Incorporation Number isn't hooked from states/BE (ready to display when hooked up)

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the bcrs-entities-create-ui license (Apache 2.0).

I would prefer if you did not change anything in Edit UI at the moment. I am working on a large cleanup PR that renames things, moves things, etc.
I think it would be far easier for you to apply your changes after my merge than vice versa.

For sure. My fixes are small, so it's better and easier to merge my changes after your large cleanup is merged to the main branch first.

You have a build error to resolve, but after that I approve this PR to be merged.

Thank you for the merge.


KZL-278 Bulk controller for SDK reference

Adds a Bulk controller for the SDK reference. This controller is not present in the GOLANG SDK, so these code snippets are @wontdo. They will be documented once the controller is implemented in the SDK.
See how it looks: https://deploy-preview-8--doc-v2.netlify.com/sdk-reference/bulk/import/

Snippets tests reports


loss order when deserializing json string

[{name:"a", path:"/root/a"}, {name:"b", path:"/root/a/b"}]
when deserializing the json, got  an array
array[0] {name:"b", path:"/root/a/b"}
array[1] {name:"a", path:"/root/a"}
can ObjectMapper keep the order when deserializing
array[0] {name:"a", path:"/root/a"}
array[1] {name:"b", path:"/root/a/b"}

sorry, my mistake.
the order is correct


Can't use rviz turtlebot3 slam configuration file

Hi !
I can't use the configuration file in turtlebot3_slam. It gives me a segmentation fault with Rviz.
OS of the PC : Debian Jessie
OS of the raspberry pi 3 b : Ubuntu Xenial
Process :
(1) PC : roscore
(2) Turtlebot3 : roslaunch turtlebot3_bringup turtlebot3_robot.launch
================================================================================
... logging to /home/turtlebot3/.ros/log/e14a5510-51e7-11e8-887e-b8ac6f43b528/roslaunch-turtlebot3-desktop-2660.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
started roslaunch server http://<IP_ADDRESS>:42388/
SUMMARY
PARAMETERS

/rosdistro: kinetic
/rosversion: 1.12.13
/turtlebot3_core/baud: 115200
/turtlebot3_core/port: /dev/ttyACM0
/turtlebot3_lds/frame_id: base_scan
/turtlebot3_lds/port: /dev/ttyUSB0

NODES
/
turtlebot3_core (rosserial_python/serial_node.py)
turtlebot3_diagnostics (turtlebot3_bringup/turtlebot3_diagnostics)
turtlebot3_lds (hls_lfcd_lds_driver/hlds_laser_publisher)
ROS_MASTER_URI=http://<IP_ADDRESS>:11311
process[turtlebot3_core-1]: started with pid [2688]
process[turtlebot3_lds-2]: started with pid [2689]
process[turtlebot3_diagnostics-3]: started with pid [2690]
[INFO] [1525695852.748995]: ROS Serial Python Node
[INFO] [1525695852.813717]: Connecting to /dev/ttyACM0 at 115200 baud
[INFO] [1525695854.977798]: Note: publish buffer size is 1024 bytes
[INFO] [1525695854.979438]: Setup publisher on sensor_state [turtlebot3_msgs/SensorState]
[INFO] [1525695854.989607]: Setup publisher on version_info [turtlebot3_msgs/VersionInfo]
[INFO] [1525695855.000042]: Setup publisher on imu [sensor_msgs/Imu]
[INFO] [1525695855.012410]: Setup publisher on cmd_vel_rc100 [geometry_msgs/Twist]
[INFO] [1525695855.039606]: Setup publisher on odom [nav_msgs/Odometry]
[INFO] [1525695855.052477]: Setup publisher on joint_states [sensor_msgs/JointState]
[INFO] [1525695855.064908]: Setup publisher on battery_state [sensor_msgs/BatteryState]
[INFO] [1525695855.074904]: Setup publisher on magnetic_field [sensor_msgs/MagneticField]
[INFO] [1525695857.354180]: Setup publisher on /tf [tf/tfMessage]
[INFO] [1525695857.379500]: Note: subscribe buffer size is 1024 bytes
[INFO] [1525695857.380958]: Setup subscriber on cmd_vel [geometry_msgs/Twist]
[INFO] [1525695857.405518]: Setup subscriber on sound [turtlebot3_msgs/Sound]
[INFO] [1525695857.431306]: Setup subscriber on motor_power [std_msgs/Bool]
[INFO] [1525695857.446810]: Setup subscriber on reset [std_msgs/Empty]
[INFO] [1525695858.012520]: --------------------------
[INFO] [1525695858.015653]: Connected to OpenCR board!
[INFO] [1525695858.018791]: This core(v1.1.2) is compatible with TB3 Burger
[INFO] [1525695858.021902]: --------------------------
[INFO] [1525695858.024968]: Start Calibration of Gyro
[INFO] [1525695860.568680]: Calibration End
================================================================================
(3) PC : roslaunch turtlebot3_slam turtlebot3_slam.launch
================================================================================
... logging to /home/maximilien/.ros/log/e14a5510-51e7-11e8-887e-b8ac6f43b528/roslaunch-xeon2-18514.log
Checking log directory for disk usage. This may take awhile.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.
xacro: Traditional processing is deprecated. Switch to --inorder processing!
To check for compatibility of your document, use option --check-order.
For more infos, see http://wiki.ros.org/xacro#Processing_Order
started roslaunch server http://<IP_ADDRESS>:42817/
SUMMARY
PARAMETERS

/robot_description: <?xml version="1....
/robot_state_publisher/publish_frequency: 50.0
/rosdistro: kinetic
/rosversion: 1.12.13
/turtlebot3_slam_gmapping/angularUpdate: 0.2
/turtlebot3_slam_gmapping/astep: 0.05
/turtlebot3_slam_gmapping/base_frame: base_footprint
/turtlebot3_slam_gmapping/delta: 0.05
/turtlebot3_slam_gmapping/iterations: 5
/turtlebot3_slam_gmapping/kernelSize: 1
/turtlebot3_slam_gmapping/lasamplerange: 0.005
/turtlebot3_slam_gmapping/lasamplestep: 0.005
/turtlebot3_slam_gmapping/linearUpdate: 0.2
/turtlebot3_slam_gmapping/llsamplerange: 0.01
/turtlebot3_slam_gmapping/llsamplestep: 0.01
/turtlebot3_slam_gmapping/lsigma: 0.075
/turtlebot3_slam_gmapping/lskip: 0
/turtlebot3_slam_gmapping/lstep: 0.05
/turtlebot3_slam_gmapping/map_update_interval: 2.0
/turtlebot3_slam_gmapping/maxUrange: 4.0
/turtlebot3_slam_gmapping/minimumScore: 100
/turtlebot3_slam_gmapping/odom_frame: odom
/turtlebot3_slam_gmapping/ogain: 3.0
/turtlebot3_slam_gmapping/particles: 120
/turtlebot3_slam_gmapping/resampleThreshold: 0.5
/turtlebot3_slam_gmapping/sigma: 0.05
/turtlebot3_slam_gmapping/srr: 0.01
/turtlebot3_slam_gmapping/srt: 0.02
/turtlebot3_slam_gmapping/str: 0.01
/turtlebot3_slam_gmapping/stt: 0.02
/turtlebot3_slam_gmapping/temporalUpdate: 0.5
/turtlebot3_slam_gmapping/xmax: 10.0
/turtlebot3_slam_gmapping/xmin: -10.0
/turtlebot3_slam_gmapping/ymax: 10.0
/turtlebot3_slam_gmapping/ymin: -10.0

NODES
/
robot_state_publisher (robot_state_publisher/robot_state_publisher)
turtlebot3_slam_gmapping (gmapping/slam_gmapping)
ROS_MASTER_URI=http://<IP_ADDRESS>:11311
process[robot_state_publisher-1]: started with pid [18534]
process[turtlebot3_slam_gmapping-2]: started with pid [18535]
[ INFO] [1525695898.012390604]: Laser is mounted upwards.
-maxUrange 4 -maxUrange 3.49 -sigma     0.05 -kernelSize 1 -lstep 0.05 -lobsGain 3 -astep 0.05
-srr 0.01 -srt 0.02 -str 0.01 -stt 0.02
-linearUpdate 0.2 -angularUpdate 0.2 -resampleThreshold 0.5
-xmin -10 -xmax 10 -ymin -10 -ymax 10 -delta 0.05 -particles 120
[ INFO] [1525695898.014903802]: Initialization complete
update frame 0
update ld=0 ad=0
Laser Pose= -0.032 -3.48478e-05 -3.1405
m_count 0
Registering First Scan
update frame 3
update ld=1.76842e-05 ad=0.000552631
Laser Pose= -0.032 -2.29143e-05 -3.14088
m_count 1
Average Scan Matching Score=183.595
neff= 119.991
Registering Scans:Done
================================================================================
(So here it works fine.)
(4) PC : rosrun rviz rviz -d rospack find turtlebot3_slam/rviz/turtlebot3_slam.rviz
================================================================================
[ INFO] [1525695967.510466684]: rviz version 1.12.15
[ INFO] [1525695967.510607425]: compiled against Qt version 5.3.2
[ INFO] [1525695967.510633230]: compiled against OGRE version 1.9.0 (Ghadamon)
[ INFO] [1525695971.855628105]: Stereo is NOT SUPPORTED
[ INFO] [1525695971.855773128]: OpenGl version: 2.1 (GLSL 1.2).
[ WARN] [1525695972.788003489]: The STL file 'package://turtlebot3_description/meshes/bases/burger_base.stl' is malformed. It starts with the word 'solid', indicating that it's an ASCII STL file, but it does not contain the word 'endsolid' so it is either a malformed ASCII STL file or it is actually a binary STL file. Trying to interpret it as a binary STL file instead.
[ WARN] [1525695973.456920803]: The STL file 'package://turtlebot3_description/meshes/sensors/lds.stl' is malformed. It starts with the word 'solid', indicating that it's an ASCII STL file, but it does not contain the word 'endsolid' so it is either a malformed ASCII STL file or it is actually a binary STL file. Trying to interpret it as a binary STL file instead.
Erreur de segmentation
================================================================================
(Here it fails)
I also try to use the fourth command without launching any ros slam node. It gives me the same message. If I don't use Rviz, I manage to save a map with the map_server. I can open it with gimp and it's ok. But I would like to visualize it with Rviz.
Other information. Rviz works fine with the configuration file in turtlebot_description and I can notice the laser data in the Rviz environment.
I first thought I had to synchronize with ntpdate. But I've just done it and it gives me the same.
Anyone would have any idea to help ?
Thank you in advance :)
ps : I use a turtlebot3 burger with the recommended configurations.
ps bis : when I launch the rviz command with the -l option
================================================================================
[ INFO] [1525697870.405118617]: rviz version 1.12.15
[ INFO] [1525697870.405243725]: compiled against Qt version 5.3.2
[ INFO] [1525697870.405277391]: compiled against OGRE version 1.9.0 (Ghadamon)
[ INFO] [1525697870.596409056]: Creating resource group General
[ INFO] [1525697870.596510750]: Creating resource group Internal
[ INFO] [1525697870.596554967]: Creating resource group Autodetect
[ INFO] [1525697870.596687163]: SceneManagerFactory for type 'DefaultSceneManager' registered.
[ INFO] [1525697870.596915213]: Registering ResourceManager for type Material
[ INFO] [1525697870.596972101]: Registering ResourceManager for type Mesh
[ INFO] [1525697870.597012083]: Registering ResourceManager for type Skeleton
[ INFO] [1525697870.597085849]: MovableObjectFactory for type 'ParticleSystem' registered.
[ INFO] [1525697870.597168063]: ArchiveFactory for archive type FileSystem registered.
[ INFO] [1525697870.597207678]: ArchiveFactory for archive type Zip registered.
[ INFO] [1525697870.597255531]: ArchiveFactory for archive type EmbeddedZip registered.
[ INFO] [1525697870.597295501]: DDS codec registering
[ INFO] [1525697870.597365105]: FreeImage version: 3.15.4
[ INFO] [1525697870.597402257]: This program uses FreeImage, a free, open source image library supporting all common bitmap formats. See http://freeimage.sourceforge.net for details
[ INFO] [1525697870.597590935]: Supported formats: bmp,ico,jpg,jif,jpeg,jpe,jng,koa,iff,lbm,mng,pbm,pbm,pcd,pcx,pgm,pgm,png,ppm,ppm,ras,tga,targa,tif,tiff,wap,wbmp,wbm,psd,cut,xbm,xpm,gif,hdr,g3,sgi,exr,j2k,j2c,jp2,pfm,pct,pict,pic,3fr,arw,bay,bmq,cap,cine,cr2,crw,cs1,dc2,dcr,drf,dsc,dng,erf,fff,ia,iiq,k25,kc2,kdc,mdc,mef,mos,mrw,nef,nrw,orf,pef,ptx,pxn,qtk,raf,raw,rdc,rw2,rwl,rwz,sr2,srf,srw,sti
[ INFO] [1525697870.597630291]: PVRTC codec registering
[ INFO] [1525697870.597707146]: ETC codec registering
[ INFO] [1525697870.597751835]: Registering ResourceManager for type HighLevelGpuProgram
[ INFO] [1525697870.597804443]: Registering ResourceManager for type Compositor
[ INFO] [1525697870.598033070]: MovableObjectFactory for type 'Entity' registered.
[ INFO] [1525697870.598077942]: MovableObjectFactory for type 'Light' registered.
[ INFO] [1525697870.598117582]: MovableObjectFactory for type 'BillboardSet' registered.
[ INFO] [1525697870.598161221]: MovableObjectFactory for type 'ManualObject' registered.
[ INFO] [1525697870.598200406]: MovableObjectFactory for type 'BillboardChain' registered.
[ INFO] [1525697870.598240548]: MovableObjectFactory for type 'RibbonTrail' registered.
[ INFO] [1525697870.598332654]: --* OGRE Initialising
[ INFO] [1525697870.598370311]: --* Version 1.9.0 (Ghadamon)
[ INFO] [1525697870.598429797]: OverlayElementFactory for type Panel registered.
[ INFO] [1525697870.598467232]: OverlayElementFactory for type BorderPanel registered.
[ INFO] [1525697870.598500044]: OverlayElementFactory for type TextArea registered.
[ INFO] [1525697870.598532892]: Registering ResourceManager for type Font
[ INFO] [1525697870.598570935]: Loading library /usr/lib/x86_64-linux-gnu/OGRE-1.9.0/RenderSystem_GL
[ INFO] [1525697870.602929173]: Installing plugin: GL RenderSystem
[ INFO] [1525697870.602981414]: OpenGL Rendering Subsystem created.
[ INFO] [1525697870.724828856]: Plugin successfully installed
[ INFO] [1525697870.724997329]: Loading library /usr/lib/x86_64-linux-gnu/OGRE-1.9.0/Plugin_OctreeSceneManager
[ INFO] [1525697870.726671294]: Installing plugin: Octree Scene Manager
[ INFO] [1525697870.726789259]: Plugin successfully installed
[ INFO] [1525697870.726893374]: Loading library /usr/lib/x86_64-linux-gnu/OGRE-1.9.0/Plugin_ParticleFX
[ INFO] [1525697870.730002359]: Installing plugin: ParticleFX
[ INFO] [1525697870.730093912]: Particle Emitter Type 'Point' registered
[ INFO] [1525697870.730174411]: Particle Emitter Type 'Box' registered
[ INFO] [1525697870.730258403]: Particle Emitter Type 'Ellipsoid' registered
[ INFO] [1525697870.730341907]: Particle Emitter Type 'Cylinder' registered
[ INFO] [1525697870.730419114]: Particle Emitter Type 'Ring' registered
[ INFO] [1525697870.730498077]: Particle Emitter Type 'HollowEllipsoid' registered
[ INFO] [1525697870.730577265]: Particle Affector Type 'LinearForce' registered
[ INFO] [1525697870.730655915]: Particle Affector Type 'ColourFader' registered
[ INFO] [1525697870.730733161]: Particle Affector Type 'ColourFader2' registered
[ INFO] [1525697870.730811032]: Particle Affector Type 'ColourImage' registered
[ INFO] [1525697870.730887592]: Particle Affector Type 'ColourInterpolator' registered
[ INFO] [1525697870.730967084]: Particle Affector Type 'Scaler' registered
[ INFO] [1525697870.731043734]: Particle Affector Type 'Rotator' registered
[ INFO] [1525697870.731125506]: Particle Affector Type 'DirectionRandomiser' registered
[ INFO] [1525697870.731205895]: Particle Affector Type 'DeflectorPlane' registered
[ INFO] [1525697870.731283125]: Plugin successfully installed
[ INFO] [1525697870.731383231]: CPU Identifier & Features
[ INFO] [1525697870.731460871]: -------------------------
[ INFO] [1525697870.731536640]:  *   CPU ID: GenuineIntel: Intel(R) Xeon(R) CPU           E5450  @ 3.00GHz
[ INFO] [1525697870.731613894]:  *      SSE: yes
[ INFO] [1525697870.731692111]:  *     SSE2: yes
[ INFO] [1525697870.731768548]:  *     SSE3: yes
[ INFO] [1525697870.731843733]:  *      MMX: yes
[ INFO] [1525697870.731919839]:  *   MMXEXT: yes
[ INFO] [1525697870.731998877]:  *    3DNOW: no
[ INFO] [1525697870.732074493]:  * 3DNOWEXT: no
[ INFO] [1525697870.732149353]:  *     CMOV: yes
[ INFO] [1525697870.732223793]:  *      TSC: yes
[ INFO] [1525697870.732298867]:  *      FPU: yes
[ INFO] [1525697870.732375649]:  *      PRO: yes
[ INFO] [1525697870.732450212]:  *       HT: no
[ INFO] [1525697870.732524523]: -------------------------
[ INFO] [1525697870.732599925]: ******************************
*** Starting GLX Subsystem ***

[ INFO] [1525697870.732695113]: Registering ResourceManager for type Texture
[ INFO] [1525697870.732835445]: GLRenderSystem::_createRenderWindow "OgreWindow(0)", 1x1 windowed  miscParams: FSAA=4 contentScalingFactor=1,000000 externalGLControl= externalWindowHandle=54525953 parentWindowHandle=54525953
[ INFO] [1525697870.741397710]: GLXWindow::create used FBConfigID = 277
[ INFO] [1525697870.741537825]: GL_VERSION = 2.1.2 NVIDIA 304.135
[ INFO] [1525697870.741582974]: GL_VENDOR = NVIDIA Corporation
[ INFO] [1525697870.741620355]: GL_RENDERER = Quadro NVS 285/PCIe/SSE2
[ INFO] [1525697870.741771279]: GL_EXTENSIONS = GL_ARB_color_buffer_float GL_ARB_compressed_texture_pixel_storage GL_ARB_conservative_depth GL_ARB_copy_buffer GL_ARB_depth_clamp GL_ARB_depth_texture GL_ARB_draw_buffers GL_ARB_ES2_compatibility GL_ARB_explicit_attrib_location GL_ARB_fragment_program GL_ARB_fragment_program_shadow GL_ARB_fragment_shader GL_ARB_framebuffer_object GL_ARB_get_program_binary GL_ARB_half_float_pixel GL_ARB_half_float_vertex GL_ARB_imaging GL_ARB_internalformat_query GL_ARB_map_buffer_alignment GL_ARB_map_buffer_range GL_ARB_multisample GL_ARB_multitexture GL_ARB_occlusion_query GL_ARB_occlusion_query2 GL_ARB_pixel_buffer_object GL_ARB_point_parameters GL_ARB_point_sprite GL_ARB_provoking_vertex GL_ARB_robustness GL_ARB_sampler_objects GL_ARB_separate_shader_objects GL_ARB_shader_objects GL_ARB_shading_language_100 GL_ARB_shading_language_420pack GL_ARB_shading_language_include GL_ARB_shadow GL_ARB_sync GL_ARB_texture_border_clamp GL_ARB_texture_compression GL_ARB_texture_cube_map GL_ARB_texture_env_add GL_ARB_texture_env_combine GL_ARB_texture_env_crossbar GL_ARB_texture_env_dot3 GL_ARB_texture_float GL_ARB_texture_mirrored_repeat GL_ARB_texture_non_power_of_two GL_ARB_texture_rectangle GL_ARB_texture_rg GL_ARB_texture_storage GL_ARB_texture_swizzle GL_ARB_timer_query GL_ARB_transpose_matrix GL_ARB_vertex_array_bgra GL_ARB_vertex_array_object GL_ARB_vertex_buffer_object GL_ARB_vertex_program GL_ARB_vertex_shader GL_ARB_window_pos GL_ATI_draw_buffers GL_ATI_texture_float GL_ATI_texture_mirror_once GL_S3_s3tc GL_EXT_texture_env_add GL_EXT_abgr GL_EXT_bgra GL_EXT_blend_color GL_EXT_blend_equation_separate GL_EXT_blend_func_separate GL_EXT_blend_minmax GL_EXT_blend_subtract GL_EXT_compiled_vertex_array GL_EXT_Cg_shader GL_EXT_depth_bounds_test GL_EXT_direct_state_access GL_EXT_draw_range_elements GL_EXT_fog_coord GL_EXT_framebuffer_blit GL_EXT_framebuffer_multisample GL_EXT_framebuffer_object GL_EXT_gpu_program_parameters GL_EXT_multi_draw_arrays GL_EXT_packed_depth_stencil GL_EXT_packed_pixels GL_EXT_pixel_buffer_object GL_EXT_point_parameters GL_EXT_provoking_vertex GL_EXT_rescale_normal GL_EXT_secondary_color GL_EXT_separate_shader_objects GL_EXT_separate_specular_color GL_EXT_shadow_funcs GL_EXT_stencil_two_side GL_EXT_stencil_wrap GL_EXT_texture3D GL_EXT_texture_compression_dxt1 GL_EXT_texture_compression_s3tc GL_EXT_texture_cube_map GL_EXT_texture_edge_clamp GL_EXT_texture_env_combine GL_EXT_texture_env_dot3 GL_EXT_texture_filter_anisotropic GL_EXT_texture_format_BGRA8888 GL_EXT_texture_lod GL_EXT_texture_lod_bias GL_EXT_texture_mirror_clamp GL_EXT_texture_object GL_EXT_texture_sRGB GL_EXT_texture_sRGB_decode GL_EXT_texture_storage GL_EXT_texture_swizzle GL_EXT_timer_query GL_EXT_vertex_array GL_EXT_vertex_array_bgra GL_EXT_x11_sync_object GL_EXT_import_sync_object GL_IBM_rasterpos_clip GL_IBM_texture_mirrored_repeat GL_KTX_buffer_region GL_NV_alpha_test GL_NV_blend_minmax GL_NV_blend_square GL_NV_complex_primitives GL_NV_copy_depth_to_color GL_NV_depth_clamp GL_NV_ES1_1_compatibility GL_NV_fbo_color_attachments GL_NV_fence GL_NV_float_buffer GL_NV_fog_distance GL_NV_fragdepth GL_NV_fragment_program GL_NV_fragment_program_option GL_NV_fragment_program2 GL_NV_framebuffer_multisample_coverage GL_NV_half_float GL_NV_light_max_exponent GL_NV_multisample_filter_hint GL_NV_occlusion_query GL_NV_packed_depth_stencil GL_NV_pixel_data_range GL_NV_point_sprite GL_NV_primitive_restart GL_NV_register_combiners GL_NV_register_combiners2 GL_NV_texgen_reflection GL_NV_texture_barrier GL_NV_texture_compression_vtc GL_NV_texture_env_combine4 GL_NV_texture_expand_normal GL_NV_texture_lod_clamp GL_NV_texture_rectangle GL_NV_texture_shader GL_NV_texture_shader2 GL_NV_texture_shader3 GL_NV_vertex_array_range GL_NV_vertex_array_range2 GL_NV_vertex_program GL_NV_vertex_program1_1 GL_NV_vertex_program2 GL_NV_vertex_program2_option GL_NV_vertex_program3 GL_NVX_conditional_render GL_OES_compressed_paletted_texture GL_OES_depth24 GL_OES_depth32 GL_OES_depth_texture GL_OES_element_index_uint GL_OES_fbo_render_mipmap GL_OES_get_program_binary GL_OES_mapbuffer GL_OES_packed_depth_stencil GL_OES_point_size_array GL_OES_point_sprite GL_OES_rgb8_rgba8 GL_OES_read_format GL_OES_standard_derivatives GL_OES_texture_3D GL_OES_texture_float GL_OES_texture_float_linear GL_OES_texture_half_float GL_OES_texture_half_float_linear GL_OES_texture_npot GL_OES_vertex_array_object GL_OES_vertex_half_float GL_SGIS_generate_mipmap GL_SGIS_texture_lod GL_SGIX_depth_texture GL_SGIX_shadow GL_SUN_slice_accum
[ INFO] [1525697870.742025611]: Supported GLX extensions: GLX_EXT_visual_info GLX_EXT_visual_rating GLX_SGIX_fbconfig GLX_SGIX_pbuffer GLX_SGI_video_sync GLX_SGI_swap_control GLX_EXT_swap_control GLX_EXT_swap_control_tear GLX_EXT_texture_from_pixmap GLX_ARB_create_context GLX_ARB_create_context_profile GLX_EXT_create_context_es2_profile GLX_ARB_create_context_robustness GLX_ARB_multisample GLX_NV_float_buffer GLX_ARB_fbconfig_float GLX_ARB_get_proc_address
[ INFO] [1525697870.742085019]: ***************************
[ INFO] [1525697870.742120331]: *** GL Renderer Started ***
[ INFO] [1525697870.742156081]: ***************************
[ INFO] [1525697870.745325783]: Registering ResourceManager for type GpuProgram
[ INFO] [1525697870.745402057]: GLSL support detected
[ INFO] [1525697870.745440235]: GL: Using GL_EXT_framebuffer_object for rendering to textures (best)
[ INFO] [1525697870.810882127]: FBO PF_UNKNOWN depth/stencil support: D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697870.995763473]: FBO PF_R5G6B5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697871.178722930]: FBO PF_B5G6R5 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697871.450358315]: FBO PF_R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697871.601180813]: FBO PF_B8G8R8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697871.751976980]: FBO PF_A8R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697871.901889680]: FBO PF_B8G8R8A8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697872.166845958]: FBO PF_A2R10G10B10 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697872.315821302]: FBO PF_A2B10G10R10 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697872.511159303]: FBO PF_FLOAT16_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697872.710537201]: FBO PF_FLOAT16_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697872.906463685]: FBO PF_FLOAT32_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697873.218429874]: FBO PF_FLOAT32_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697873.365772591]: FBO PF_X8R8G8B8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697873.515851315]: FBO PF_X8B8G8R8 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697873.667823782]: FBO PF_SHORT_RGBA depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697873.967446226]: FBO PF_R3G3B2 depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697874.122899893]: FBO PF_SHORT_RGB depth/stencil support: D0S0 D16S0 D24S0 D32S0 Packed-D24S8
[ INFO] [1525697874.124428862]: [GL] : Valid FBO targets PF_UNKNOWN PF_R5G6B5 PF_B5G6R5 PF_R8G8B8 PF_B8G8R8 PF_A8R8G8B8 PF_B8G8R8A8 PF_A2R10G10B10 PF_A2B10G10R10 PF_FLOAT16_RGB PF_FLOAT16_RGBA PF_FLOAT32_RGB PF_FLOAT32_RGBA PF_X8R8G8B8 PF_X8B8G8R8 PF_SHORT_RGBA PF_R3G3B2 PF_SHORT_RGB
[ INFO] [1525697874.124544833]: RenderSystem capabilities
[ INFO] [1525697874.124588851]: -------------------------
[ INFO] [1525697874.124633438]: RenderSystem Name: OpenGL Rendering Subsystem
[ INFO] [1525697874.124679417]: GPU Vendor: nvidia
[ INFO] [1525697874.124710747]: Device Name: Quadro NVS 285/PCIe/SSE2
[ INFO] [1525697874.124754874]: Driver Version: <IP_ADDRESS>
[ INFO] [1525697874.124790375]:  * Fixed function pipeline: yes
[ INFO] [1525697874.124827587]:  * Hardware generation of mipmaps: yes
[ INFO] [1525697874.124861837]:  * Texture blending: yes
[ INFO] [1525697874.124899738]:  * Anisotropic texture filtering: yes
[ INFO] [1525697874.124934866]:  * Dot product texture operation: yes
[ INFO] [1525697874.124973079]:  * Cube mapping: yes
[ INFO] [1525697874.125007835]:  * Hardware stencil buffer: yes
[ INFO] [1525697874.125046397]:    - Stencil depth: 8
[ INFO] [1525697874.125080647]:    - Two sided stencil support: yes
[ INFO] [1525697874.125111634]:    - Wrap stencil values: yes
[ INFO] [1525697874.125147454]:  * Hardware vertex / index buffers: yes
[ INFO] [1525697874.125181968]:  * Vertex programs: yes
[ INFO] [1525697874.125221722]:  * Number of floating-point constants for vertex programs: 256
[ INFO] [1525697874.125257439]:  * Number of integer constants for vertex programs: 0
[ INFO] [1525697874.125296901]:  * Number of boolean constants for vertex programs: 0
[ INFO] [1525697874.125334640]:  * Fragment programs: yes
[ INFO] [1525697874.125371317]:  * Number of floating-point constants for fragment programs: 512
[ INFO] [1525697874.125405380]:  * Number of integer constants for fragment programs: 0
[ INFO] [1525697874.125445194]:  * Number of boolean constants for fragment programs: 0
[ INFO] [1525697874.125479795]:  * Geometry programs: no
[ INFO] [1525697874.125515408]:  * Number of floating-point constants for geometry programs: 0
[ INFO] [1525697874.125554247]:  * Number of integer constants for geometry programs: 0
[ INFO] [1525697874.125589032]:  * Number of boolean constants for geometry programs: 0
[ INFO] [1525697874.125622299]:  * Tesselation Hull programs: no
[ INFO] [1525697874.125671108]:  * Number of floating-point constants for tesselation hull programs: 0
[ INFO] [1525697874.125709577]:  * Number of integer constants for tesselation hull programs: 0
[ INFO] [1525697874.125743647]:  * Number of boolean constants for tesselation hull programs: 0
[ INFO] [1525697874.125782212]:  * Tesselation Domain programs: no
[ INFO] [1525697874.125819831]:  * Number of floating-point constants for tesselation domain programs: 0
[ INFO] [1525697874.125854523]:  * Number of integer constants for tesselation domain programs: 0
[ INFO] [1525697874.125892556]:  * Number of boolean constants for tesselation domain programs: 0
[ INFO] [1525697874.125927627]:  * Compute programs: no
[ INFO] [1525697874.125963979]:  * Number of floating-point constants for compute programs: 0
[ INFO] [1525697874.126004352]:  * Number of integer constants for compute programs: 0
[ INFO] [1525697874.126040635]:  * Number of boolean constants for compute programs: 0
[ INFO] [1525697874.126081171]:  * Supported Shader Profiles: arbfp1 arbvp1 fp20 fp30 fp40 glsl vp30 vp40
[ INFO] [1525697874.126116500]:  * Texture Compression: yes
[ INFO] [1525697874.126152949]:    - DXT: yes
[ INFO] [1525697874.126187084]:    - VTC: yes
[ INFO] [1525697874.126223160]:    - PVRTC: no
[ INFO] [1525697874.126257376]:    - ATC: no
[ INFO] [1525697874.126291401]:    - ETC1: no
[ INFO] [1525697874.126330724]:    - ETC2: no
[ INFO] [1525697874.126364306]:    - BC4/BC5: no
[ INFO] [1525697874.126396965]:    - BC6H/BC7: no
[ INFO] [1525697874.126432439]:  * Scissor Rectangle: yes
[ INFO] [1525697874.126466463]:  * Hardware Occlusion Query: yes
[ INFO] [1525697874.126498000]:  * User clip planes: yes
[ INFO] [1525697874.126530157]:  * VET_UBYTE4 vertex element type: yes
[ INFO] [1525697874.126566103]:  * Infinite far plane projection: yes
[ INFO] [1525697874.126595252]:  * Hardware render-to-texture: yes
[ INFO] [1525697874.126633857]:  * Floating point textures: yes
[ INFO] [1525697874.126668853]:  * Non-power-of-two textures: yes
[ INFO] [1525697874.126700035]:  * 1d textures: yes
[ INFO] [1525697874.126733027]:  * Volume textures: yes
[ INFO] [1525697874.126770944]:  * Multiple Render Targets: 4
[ INFO] [1525697874.126801963]:    - With different bit depths: yes
[ INFO] [1525697874.126836075]:  * Point Sprites: yes
[ INFO] [1525697874.126873314]:  * Extended point parameters: yes
[ INFO] [1525697874.126948373]:  * Max Point Size: 63.375
[ INFO] [1525697874.126982040]:  * Vertex texture fetch: yes
[ INFO] [1525697874.127020268]:  * Number of world matrices: 0
[ INFO] [1525697874.127056338]:  * Number of texture units: 16
[ INFO] [1525697874.127093481]:  * Stencil buffer depth: 8
[ INFO] [1525697874.127129213]:  * Number of vertex blend matrices: 0
[ INFO] [1525697874.127163289]:    - Max vertex textures: 4
[ INFO] [1525697874.127197337]:    - Vertex textures shared: yes
[ INFO] [1525697874.127230567]:  * Render to Vertex Buffer : no
[ INFO] [1525697874.127264607]:  * Hardware Atomic Counters: no
[ INFO] [1525697874.127298544]:  * GL 1.5 without VBO workaround: no
[ INFO] [1525697874.127333876]:  * Frame Buffer objects: yes
[ INFO] [1525697874.127364917]:  * Frame Buffer objects (ARB extension): no
[ INFO] [1525697874.127395290]:  * Frame Buffer objects (ATI extension): no
[ INFO] [1525697874.127429267]:  * PBuffer support: yes
[ INFO] [1525697874.127465285]:  * GL 1.5 without HW-occlusion workaround: no
[ INFO] [1525697874.127495652]:  * Vertex Array Objects: no
[ INFO] [1525697874.127533487]:  * Separate shader objects: no
[ INFO] [1525697874.127579367]: Using FSAA from GL_ARB_multisample extension.
[ INFO] [1525697874.127729292]: DefaultWorkQueue('Root') initialising on thread 7f306e0d6840.
[ INFO] [1525697874.127961477]: DefaultWorkQueue('Root')::WorkerFunc - thread 7f3033fff700 starting.
[ INFO] [1525697874.128086435]: DefaultWorkQueue('Root')::WorkerFunc - thread 7f30337fe700 starting.
[ INFO] [1525697874.128167049]: DefaultWorkQueue('Root')::WorkerFunc - thread 7f30327fc700 starting.
[ INFO] [1525697874.128233852]: Particle Renderer Type 'billboard' registered
[ INFO] [1525697874.128296346]: DefaultWorkQueue('Root')::WorkerFunc - thread 7f3032ffd700 starting.
[ INFO] [1525697874.128544413]: SceneManagerFactory for type 'OctreeSceneManager' registered.
[ INFO] [1525697874.128597942]: Stereo is NOT SUPPORTED
[ INFO] [1525697874.128674086]: OpenGl version: 2.1 (GLSL 1.2).
[ INFO] [1525697874.128813149]: Creating resource group rviz
[ INFO] [1525697874.128921550]: Added resource location '/opt/ros/kinetic/share/rviz/ogre_media' of type 'FileSystem' to resource group 'rviz'
[ INFO] [1525697874.128995394]: Added resource location '/opt/ros/kinetic/share/rviz/ogre_media/textures' of type 'FileSystem' to resource group 'rviz'
[ INFO] [1525697874.129076573]: Added resource location '/opt/ros/kinetic/share/rviz/ogre_media/fonts' of type 'FileSystem' to resource group 'rviz'
[ INFO] [1525697874.129165151]: Added resource location '/opt/ros/kinetic/share/rviz/ogre_media/models' of type 'FileSystem' to resource group 'rviz'
[ INFO] [1525697874.129251579]: Added resource location '/opt/ros/kinetic/share/rviz/ogre_media/materials' of type 'FileSystem' to resource group 'rviz'
[ INFO] [1525697874.129341892]: Added resource location '/opt/ros/kinetic/share/rviz/ogre_media/materials/scripts' of type 'FileSystem' to resource group 'rviz'
[ INFO] [1525697874.129498483]: Added resource location '/opt/ros/kinetic/share/rviz/ogre_media/materials/glsl120' of type 'FileSystem' to resource group 'rviz'
[ INFO] [1525697874.129593148]: Added resource location '/opt/ros/kinetic/share/rviz/ogre_media/materials/glsl120/nogp' of type 'FileSystem' to resource group 'rviz'
[ INFO] [1525697874.129686827]: Added resource location '/opt/ros/kinetic/share/rviz/ogre_media/materials/scripts120' of type 'FileSystem' to resource group 'rviz'
[ INFO] [1525697874.130087999]: Parsing scripts for resource group Autodetect
[ INFO] [1525697874.130136784]: Finished parsing scripts for resource group Autodetect
[ INFO] [1525697874.130175028]: Creating resources for group Autodetect
[ INFO] [1525697874.130213594]: All done
[ INFO] [1525697874.130248424]: Parsing scripts for resource group General
[ INFO] [1525697874.130287910]: Finished parsing scripts for resource group General
[ INFO] [1525697874.130324515]: Creating resources for group General
[ INFO] [1525697874.130356476]: All done
[ INFO] [1525697874.130390227]: Parsing scripts for resource group Internal
[ INFO] [1525697874.130428446]: Finished parsing scripts for resource group Internal
[ INFO] [1525697874.130464946]: Creating resources for group Internal
[ INFO] [1525697874.130496456]: All done
[ INFO] [1525697874.130533437]: Parsing scripts for resource group rviz
[ INFO] [1525697874.131551771]: Parsing script glsl120.program
[ INFO] [1525697874.133440905]: Parsing script nogp.program
[ INFO] [1525697874.134615288]: Parsing script indexed_8bit_image.material
[ INFO] [1525697874.134825133]: Parsing script point_cloud_tile.material
[ INFO] [1525697874.135172155]: Parsing script point_cloud_point.material
[ INFO] [1525697874.135493083]: Parsing script default_pick_and_depth.material
[ INFO] [1525697874.135874451]: Parsing script point_cloud_square.material
[ INFO] [1525697874.136156561]: Parsing script point_cloud_sphere.material
[ INFO] [1525697874.136447321]: Parsing script point_cloud_box.material
[ INFO] [1525697874.136705509]: Parsing script point_cloud_flat_square.material
[ INFO] [1525697874.136986055]: Parsing script liberation_sans.fontdef
[ INFO] [1525697874.137111343]: Finished parsing scripts for resource group rviz
[ INFO] [1525697874.137152555]: Creating resources for group rviz
[ INFO] [1525697874.137187954]: All done
[ INFO] [1525697874.139920365]: GLRenderSystem::_createRenderWindow "OgreWindow(1)", 100x30 windowed  miscParams: FSAA=4 contentScalingFactor=1,000000 externalGLControl= externalWindowHandle=50331673 parentWindowHandle=50331673
[ INFO] [1525697874.194255808]: GLXWindow::create used FBConfigID = 277
[ INFO] [1525697874.242327214]: Mesh: Loading rviz_sphere.mesh.
[ INFO] [1525697874.261355245]: Texture: SelectionRect0Texture: Loading 1 faces(PF_R8G8B8A8,1x1x1) Internal format is PF_A8R8G8B8,1x1x1.
[ INFO] [1525697874.264591482]: Mesh: Loading rviz_cylinder.mesh.
[ INFO] [1525697874.264949229]: Mesh: Loading rviz_cone.mesh.
[ INFO] [1525697874.283044890]: Texture: ROSImageTexture0: Loading 1 faces(PF_A8R8G8B8,420x300x1) Internal format is PF_A8R8G8B8,420x300x1.
[ INFO] [1525697874.283556842]: Texture: MapPaletteTexture0: Loading 1 faces(PF_A8B8G8R8,256x1x1) Internal format is PF_A8R8G8B8,256x1x1.
[ INFO] [1525697874.283700325]: Texture: MapPaletteTexture1: Loading 1 faces(PF_A8B8G8R8,256x1x1) Internal format is PF_A8R8G8B8,256x1x1.
[ INFO] [1525697874.283787339]: Texture: MapPaletteTexture2: Loading 1 faces(PF_A8B8G8R8,256x1x1) Internal format is PF_A8R8G8B8,256x1x1.
Erreur de segmentation
================================================================================
Maximilien

Hi :)
You can fix malformed stl after you launch fourth commands
https://gist.github.com/awesomebytes/2595b1dc41831c804a4f
We will solve that problem next update. Sorry for inconvenience.
Thanks.

Hi, I had no answer on ROS Answer about my question and the trouble.
Today, I have installed ROS Kinetic on another computer on Debian 8 Jessie,
with a better graphic card and so a newer version of OpenGL and I have the same results.
When I use Rviz with your configuration file it still crashing with a segmentation fault.
Another information I have for you, since the last update of May the 25th, it crashes not
only for the configuration file of the SLAM part but also with the other in description,
and in navigation).
Have change anything in those configuration file which can give us a clue about what
is the trouble with Debian 8 ?
Thank you in advance for all your answers.


TFLite Converter not quantizing supported op weights

System information
-Mac OSX
-TF 2.3.0-dev20200602
Command used to run the converter or code if you’re using the Python API
If possible, please share a link to Colab/Jupyter/any notebook.
    # From Saved Model
    converter = tf.lite.TFLiteConverter.from_saved_model(curr_dir + "saved_model")
    # converter.optimizations = [tf.lite.Optimize.DEFAULT]
    converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS,
                                           tf.lite.OpsSet.SELECT_TF_OPS]
    tflite_model = converter.convert()

    # Save the TF Lite model.
    with tf.io.gfile.GFile(curr_dir + '/model.tflite', 'wb') as f:
        f.write(tflite_model)

Model obtained from Model Zoo
http://download.tensorflow.org/models/object_detection/ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz
Follow-up issue to : https://github.com/tensorflow/tensorflow/issues/40059
Running the above code to generate a tflite file from the pretrained ssdlite_mobilenet model. However I'm suspecting not a whole lot of optimization is happening. The file size for the frozen graph is 19911343 bytes and the optimized tflite model is 18905520 bytes.
Dissecting the model (using Netron), I can also see that the supported ops are still using float32 type weights.
I was hoping to see 2-4x size reduction as a good chunk of the model is conv2d with float32 weights. Any ideas why I'm not able to really optimize this particular model?
Want to also add:
I modified my conversion code above to avoid use of the experimental flags:
converter.target_spec.supported_ops = [tf.lite.OpsSet.TFLITE_BUILTINS, tf.lite.OpsSet.SELECT_TF_OPS]

replacing it with a stable-version documented configuration:
converter.optimizations = [tf.lite.Optimize.DEFAULT]

In this case the conversion fails:
error: 'tf.TensorArrayWriteV3' op is neither a custom op nor a flex op
error: failed while converting: 'main': Ops that can be supported by the flex runtime (enabled via setting the -emit-select-tf-ops flag):
        tf.NonMaxSuppressionV2 {T = f32, T_threshold = f32, device = ""}
        tf.Size {device = ""}
        tf.TensorArrayGatherV3 {device = "", element_shape = #tf.shape<100>}
        tf.TensorArrayGatherV3 {device = "", element_shape = #tf.shape<100x4>}
        tf.TensorArrayGatherV3 {device = "", element_shape = #tf.shape<300x300x3>}
        tf.TensorArrayGatherV3 {device = "", element_shape = #tf.shape<3>}
        tf.TensorArrayGatherV3 {device = "", element_shape = #tf.shape<>}
        tf.TensorArrayReadV3 {device = ""}
        tf.TensorArrayScatterV3 {device = ""}
        tf.TensorArraySizeV3 {device = ""}
        tf.TensorArrayV3 {clear_after_read = true, device = "", dtype = f32, dynamic_size = false, element_shape = #tf.shape<*>, identical_element_shapes = false, tensor_array_name = ""}
        tf.TensorArrayV3 {clear_after_read = true, device = "", dtype = i32, dynamic_size = false, element_shape = #tf.shape<*>, identical_element_shapes = false, tensor_array_name = ""}
        tf.TensorArrayWriteV3 {device = ""}

I can also see another ticket related to this that was closed
https://github.com/tensorflow/tensorflow/issues/38104

For anyone else following this thread:
was able to address this by having both converter.optimizations set and the experimental converter.target_spec.supported_ops defined to accept both ops.
Both alone won't do the trick. Without the converter.optimization flag it will simply convert the frozen graph to a float tflite file. But without enabling both tflite ops and tf native ops, more complex models cannot be converted. (This last feature to select op type is still experimental though)

As feedback to the TF team, documentation could be improved to clarify that simply converting to a tflite model you cannot expect any default optimizations.  Further, these optimization flags should be better documented or referred to.
Thanks

@aselva-eb Is this still an issue for you?
I ran your code and I can see the reduction in file size (4 times with OPTIMIZE_DEFAULT for size) and 2 x smaller with FLOAT16 TF_Lite model. Here is a gist for a reference. Thanks!
There are other models (such as full integer model) described in TF Lite tutorial https://www.tensorflow.org/lite/performance/post_training_quantization


Add Etherlite support

Thanks for PR dropped a few comments to sort.

Thanks for a quick reply, all extra changes are removed.
Will be great if you publish this to npm as well, so that I'll be able to delete my package))

@andhovesyan will merge it but won’t be able to publish until Monday as away on holiday. Will let you know when it’s published. Thanks a lot for the PR.

Sorry about the delay 2.6.0 is now deployed to NPM


Feature request: add a new "Mark as done on click" setting

📝 Provide a description of the new feature
This feature would be possible thanks to the newly added Mark notification as done API endpoint (see #500)
It would basically do the same thing than the old Mark notification as read on click setting which is now obsolete (#712)
➕ Additional Information
I'm willing to implement this, but I'd like my other PR #500 to be merged before as it will use shared code/functions (I might open a stacked PR..)

This would be hugely helpful; GitIfy is super useful but the "Done" feature in GitHub Notification Center is critical for me.  Right now, I'll let Gitify make me aware there's a notification, but then still open the GitHub Notification center to actually read the notification.

I'm closing this as the feature has been merged 🎉

Was there ever a release that included this feature?

@fredrikaverpil not yet :(

@fredrikaverpil @adufr - we need to fix this before our next release #https://github.com/gitify-app/gitify/issues/696


Enables prefixed_toplevel_constant, unavailable_function, and untyped_error_in_catch

@philium We talked about prefixed_toplevel_constant after this PR was merged. I'm fine disabling that in the future too.


Bump version to B3

Restarted the failed job (bogus fail)

After the version bump, I added a bunch of fixes here and there.


Tags should be required when creating a Collective

Context
This is a follow-up of https://github.com/opencollective/opencollective/issues/4764. We are investing a considerable amount of resources in creating new features such as the new discovery (a.k.a. Collective weather report), the Funders Contributors' dashboard, and the search-related targets like #3892 #3782 https://github.com/opencollective/opencollective/issues/5793 https://github.com/opencollective/opencollective/issues/5809 .
It is also necessary for fiscal hosts admin teams to have a better understandment of the communities they host and a cleaner visualization of categories.
Goal

[ ] Make the tags required in the Collective creation form https://opencollective.com/create
[ ] Update the form considering https://github.com/opencollective/opencollective/issues/5628

@Betree @kaylarep

No real blocker on the engineering side, but we'll need a design for the error state of this field when it's required (I don't think we have a similar case of required tags in the UI).

From a personal point of view, I don't really see the justification for making it required: it's going to increase the complexity of creating a collective, but are tags that important?

For search-related issues, the description (which is already required) and the long description are already included in the searched fields. These fields provide more information than tags, and better context for host admins to understand their communities.
For the discovery project, what kind of tags do we expect to see? I've seen the location mentioned a few times, but tags are not the proper way to input one's location; we need more structured data if we want to make the search effective.

To me, tags are part of the onboarding (aka. make your profile better) flow, not the create flow. They're currently not requested in the onboarding modal.
If we do want to enforce tags in the Create Collective flow, then I would suggest we first define what kind of tags we want people to set so that we kind provide meaningful suggestions; there's otherwise a risk of ending up with quantity without quality.

Thanks for opening this @Memo-Es
Yes, @Betree I believe tags to be a very important tool. I've raised this topic many times, it's come up again because of Caroline's project for a Funder's Dashboard.
Right now, we have so many groups using the platform, and we really have no idea what we have. In my mind, tagging would be the most effective way for:

groups with common interests to find each other (community-building)
donors to find groups to donate to (especially if they can only donate to specific sector)

Ideally, yes it would be in the onboarding/make your profile better flow, but since we are not prioritizing this right now, this is a temporary fix to surface groups better (and especially for the discovery project, which has a deadline coming). As the platform is right now, many groups do not prioritize making their profile's better, and may not even understand the benefit of doing it.
I have been asked to go through and manually tag all of OCF's groups. I have already done this 1 time before, and it was incredibly labor-intensive with a big margin for error.  I have been asked to do it again, to catch up with all the groups who have joined since I last completed the task, but I do not think it is a wise use of time to be manually doing this, also yes, there is room for using the wrong term to tag/identify a group, and possibly even mislabel and offend them.
If I will have to manually do it again, I think it should be the last time I do it.  Which means this issue needs to be prioritized so that groups should be tagging themselves (which is definitely preferred).
I would like groups to be "required" to select a few tags, but yes also have the option to skip it if they'd like. (As described here: https://github.com/opencollective/opencollective/issues/4764 )

If we do want to enforce tags in the Create Collective flow, then I would suggest we first define what kind of tags we want people to set so that we can provide meaningful suggestions; there's otherwise a risk of ending up with quantity without quality.

+1
My recommendations for this are:

https://github.com/opencollective/opencollective/issues/5523 (this way, naturally occurring terms that groups use to self-identify will come to the surface)
in addition to other Tag improvements like:

https://github.com/opencollective/opencollective/issues/5522
https://github.com/opencollective/opencollective/issues/5521
there are more, but I'll leave them out for now

For search-related issues, the description (which is already required) and the long description are already included in the searched fields. These fields provide more information than tags, and better context for host admins to understand their communities.

There is not currently (or probably ever) a completely standardized approach/wordage that groups will use to describe themselves, but they will certainly have a lot of overlap. To me, this is the idea behind, and benefit of, tagging.  e.g. If I describe my group in California as a "community refrigerator" and a group in New York describes themselves as a "free fridge", how would a donor know what to search for to find all these groups, which are in fact doing the same thing.  Ideally (if I understand the mechanism correctly), if we can implement - https://github.com/opencollective/opencollective/issues/5523 ; then when I type in community refrigerator as a tag for my group, a suggestion would immediately appear to also select the tag free fridge, and by having both tags on my profile, I am widening my audience (also likely to attract donors better/easier).  Auto-populating suggestions would be an incredibly powerful tool in connecting like-minded groups; also in helping donors easily locate the groups they want to support.

I see this as a medium project, regardless if it is on the form or elsewhere (BTW, the form is a main piece of the onboarding flow). I lean towards having at least one tag on ALL Collectives for the organization and quality of our Collective categorization.
A couple of preliminary points that will need clarification:

Automatic tags? (Collectives under OSC should be tagged open-source automatically?)
What are the cases of a Collective not wanting tags? Collectives that do not want to be found?
Define the experience of Suggesting tags to Collectives, related with https://github.com/opencollective/opencollective/issues/5523 but it may include some other stuff as well

I agree with @kaylarep that manually tagging Collectives is a poor way to invest our time. Happy to see this project prioritized for this next cycle.

Thanks for providing more context, I am now convinced that tags can be a good tool for the described problems. Also good that we already have issues about improving the suggestions, we should definitely pursue both goals (more tags and better tags) in parallel!

@Betree Does this mean this will get prioritized?
I'm still receiving applications without tags, and I really don't want to go thru the manual tagging project again until this will be implemented.
@Memo-Es My responses to your questions:

Automatic tags? (Collectives under OSC should be tagged open-source automatically?)

I do not think we should do auto-tagging.There's too much room for error. (e.g. a group submits an application to OSC, receives an open source tag, but they are not actually an open-source project or are eligible for hosting thru OSC, and then they just have an incorrect tag attributed to their collective.

What are the cases of a Collective not wanting tags? Collectives that do not want to be found?

Yes, this could be one example. Or they intentionally are keeping their Collective page very sparse and are instead investing their energy into their own website.  Many of our groups are serving sensitive populations, and being "discoverable" is not their top priority.

Define the experience of Suggesting tags to Collectives, related with https://github.com/opencollective/opencollective/issues/5523 but it may include some other stuff as well

this is the general idea: https://www.loom.com/share/1c161af00e624d09a55fb7fd620e4287

also, (and please disregard if I'm speaking completely out of my depth here) if we are able to decide how the auto-suggestions are formulated, I think I would prefer a community-based approach. e.g. I select arts and then "Other groups also used: arts & culture painting theatre youth " would appear- because that's what other groups who used arts have used.
as opposed to a more computational approach of AI/algorithm guessing what categories are similar

something that looks like this?


Doesn't work for my AX53

Communication and messaging is ok but nothing changes. I was looking to switch to NTSC from PAL.
See below log for several attempts.

Loading app list
Cannot connect to remote server, falling back to appstore repository
Found 11 apps
Using drivers Windows-MSC, Windows-MTP
Looking for Sony devices
Querying mass storage device
Sony Camcorder is a camera in mass storage mode
Model:              FDR-AX53
Product code:<PHONE_NUMBER>
Serial number:      xxxxxxxx
Firmware version:   1.02
Using drivers Windows-MSC, Windows-MTP
Looking for Sony devices
Querying mass storage device
Sony Camcorder is a camera in mass storage mode
Switching to app install mode
Traceback (most recent call last):
File "C:\projects\sony-pmca-re\pmca-gui.py", line 76, in do
File "C:\projects\sony-pmca-re\pmca\commands\usb.py", line 274, in installCommand
File "C:\projects\sony-pmca-re\pmca\commands\usb.py", line 37, in switchToAppInstaller
File "C:\projects\sony-pmca-re\pmca\usb\sony.py", line 306, in switchToAppInstaller
File "C:\projects\sony-pmca-re\pmca\usb\sony.py", line 244, in sendCommand
File "C:\projects\sony-pmca-re\pmca\usb\sony.py", line 67, in sendSonyExtCommand
File "C:\projects\sony-pmca-re\pmca\usb_init.py", line 36, in _checkResponse
pmca.usb.InvalidCommandException: Mass storage error: Sense 0x5 0x20 0x0
Using drivers Windows-MSC, Windows-MTP
Looking for Sony devices
Querying mass storage device
Sony Camcorder is a camera in mass storage mode
Getting device info
Using firmware for model FDR-AX53
Initializing firmware update
Switching to updater mode
Waiting for camera to switch...
Please follow the instructions on the camera screen.
Initializing firmware update
Writing firmware
0%
100%
Done

Forgot... Even with app installer enabled


EFS Config Sanity Failure

Cluster with EFS Filesystem fails during config_sanity check:
Config sanity error on resource EFSFSId: There is an existing Mount Target fsmt-543c4b1e in the Availability Zone us-east-1d for EFS fs-89d4417d2, and it does not have a security group with inbound and outbound rules that support NFS. Please modify the Mount Target's security group, or delete the Mount Target.

Note, the filesystem has availible mount targets in all az's. It seems the issue is with the security group check [1]:
self.__check_sg_rules_for_port(rule, 2049):
...
for ip_rule in ip_rules:
            ip = ip_rule.get("CidrIp")
            # An existing rule is valid for EFS if, it allows all traffic(<IP_ADDRESS>/0)
            # from all ports or the given port, and does not have a security group restriction
            if (not port or port == port_to_check) and ip == "<IP_ADDRESS>/0" and not group:
                is_valid = True
                break

If there's a specified additional_sg, it expects a cidr range of <IP_ADDRESS>/0 and inbound traffic allowed in on port 2049. This is too permissive for many customers.
[1] https://github.com/aws/aws-parallelcluster/blob/develop/cli/pcluster/config_sanity.py#L67

I think it is the same problem of https://github.com/aws/aws-parallelcluster/issues/934

The documentation (https://aws-parallelcluster.readthedocs.io/en/latest/configuration.html#efs-fs-id), and source, seems to sum things up, either make the EFS accessible to everyone in the AZ or disable sanity checks.  It's not really a bug, just that the current (2.3.1) sanity check is pretty lame.
I've been looking into hacking something locally to see if I could check the master and/or compute subnets (and port 2049) against the EFS's SG but the more I look at it, doing a really good, comprehensive, sanity check appears to get pretty involved.
Part of me thinks that for persistent EFS mounts the pcluster efs section isn't really all that useful (at least for me) and doing it via post-install scripts is the preferred way to go?

@hpcpony Agreed that the current validation in our sanity check is pretty lame. Probably removing the sg validation altogether would be an improvement.
I've thought about doing more in depth validation as well, checking the sg for the correct subnet cidr, which we retrieve from the fs's subnet. This gets complicated and error prone quickly.
Let's look at the downside of not doing this check, the user will create a stack, if they don't have the correct sg setup, it'll fail in the cfn-init step, causing the stack to go into CREATE_FAILED. Then the user will need to ssh in to retrieve the error in /var/log/cfn-init.log, see that it failed efs mount and change their SG. This is painful and we want to avoid this.
We see efs as a core piece of infrastructure and should be easy to attach from the cluster config file. There's no real advantage to attaching via the post-install script and for most users this will lead to more debugging pain.
So in summary we need some way to validate SG that isn't solely based on <IP_ADDRESS>/0 CIDR. I'm thinking we just validate that they have the port open and we'll assume that if they have that, they'll probably also have the correct CIDR.

I've addressed this in https://github.com/aws/aws-parallelcluster/pull/1009
New sanity check doesn't check for an open <IP_ADDRESS>/0 but instead checks to see the port that lustre/efs uses is open on that security group. The honus is on the user to configure the source correctly.


Z-Wave node sensor entities no longer display value 254

Battery powered PIR Sensors occasionally go into deep sleep causing a string of false motion events. With the original Z-Wave integration for Home Assistant there was a clear indicator by having a code value 254 intermingled with the 8 and 0 events. Zwave-JS seems to ignore or possibly convert them into an 8 or 0 value. I no longer see any indicator in any history logs.
"Node Sensor" entities, which are now disabled by default, still allows me to find the old style code values, but the functionality is not the same. They are now converting old numeric values into "Motion detection" and "Idle". If you dig into the attributes of the state you can see the numerical values of 0 and 8. However, I don't think the value of 254 has been included or expected and is therefore ignored as garbage signal. This has diminished functionality for me as I can no longer clearly eliminate false alarms in any automation.

I appreciate your help and apologize for not following the proper procedures of submitting a bug report. I'm not sure I'm going to get the proper logs. I have two things working against me on this:

The deep sleep doesn't occur frequently (for better or worse).
I'm not sure how to aggregate logs for an extended period. I only see an option to collect logs from within the web interface. Is there another way to aggregate debug level logs into a file or files? I'm having the problem of leaving a browser tab open for an extended period of time and when i come back, it auto-refreshes the page and I can see at some point it timed out of keeping logs. It's obvious lots of missing log entries are not there. I'm not sure I'll ever get an accurate log without another means.

I respect if you need to close this from it missing critical info. I'll try and find another way to get more accurate output and submit again if possible.

You can use zwavejs2mqtt to write log files and download them later. The log file rotation stores the last 7 days, which might be enough to replicate the issue.


Name of a function-module with mixed upper-/lower-case

Hey,
it looks like the ABAP Cleaner doesn't interfere when changing a part of the function-module-name

I expected that "_gis_korr" would be capitalize by ABAP Cleaner.
Regards,
Vlad

CALL FUNCTION only works with upper-case names. Lower-case or mixed-case names will cause a runtime error, so your code actually doesn't work right now. If the ABAP Cleaner corrects the name, then this would change the outcome.
I could imagine this as a rule though. I find it highly unlikely that someone would use lower case letters on purpose, so I would be alright with having the ABAP Cleaner fix this. 😄

I expected this actually - that's why I didn't correct it myself due to the fact that I start ABAP Cleaner before activating (both in a macro).

Hi Vlad and ConjuringCoffee,
interesting finding! I think this could be a new option to the "Convert upper and lower case" rule (but maybe default off, because this would indeed change the functionality? On the other hand I agree, it is highly unlikely that this could be on purpose).
However, I wonder why PrettyPrinter doesn't do this: There doesn't seem to be a valid case for lower-case characters here, and my attempts to create a function module with a lower-case character in the name all failed – or do we overlook something?
CALL METHOD ('METHOD_NAME_literal'). seems to be the same: any lower-case letter provokes a dump, even if the specified literal is all lower-case and the method is defined in lower-case chars.
Kind regards,
Jörg-Michael

Hi Vlad,
sorry, I entered a wrong issue number in the titles of the above commits – they belong to issue #197!
Kind regards,
Jörg-Michael

Overlook something: Just maybe you can write a CPI-C compatible function outside the ABAP stack with a non all uppercase name and call it over RFC?

Hi Fabian,
in that case, just to be on the safe side,

the RFC - CALL FUNCTION  variants (… DESTINATION, … STARTING NEW TASK, … IN BACKGROUND UNIT) should better be excluded from this. Interestingly, the ABAP documentation does NOT seem to mention upper case here for the function name, while
in the general CALL FUNCTION and CALL FUNCTION, IN UPDATE TASK, upper case is explicitly mentioned.

Kind regards,
Jörg-Michael

I wonder if the pretty printer simply ignores strings just for the sake of convenience or performance.
If you check the implementation of the pretty printer, it is set up to simply ignore any string (both ' and `).


Bug float in csv seed file load as int

Seems like float in csv seed file load as int:
if I right understand problem is here:
https://github.com/silentsokolov/dbt-clickhouse/blob/master/dbt/adapters/clickhouse/connections.py
TODO: Convert to allow clickhouse type
format_bindings = []
for row in bindings.rows:
    format_row = []
    for v in row.values():
        if isinstance(v, Decimal):
            v = int(v)
        format_row.append(v)
    format_bindings.append(format_row)

Show error message, please

No error message here, but if in csv float number:
0.64,0.74,1.23
they load as int-s:
0,0,1


Test definitions - linting results

Problem description
While testing linting rules for Gherkin the following output was produced
 1      Trailing spaces are not allowed                                                                 no-trailing-spaces
  32     Trailing spaces are not allowed                                                                 no-trailing-spaces
  46     Multiple empty lines are not allowed                                                            no-multiple-empty-lines
  58     Trailing spaces are not allowed                                                                 no-trailing-spaces
  69     Multiple empty lines are not allowed                                                            no-multiple-empty-lines
  84     Trailing spaces are not allowed                                                                 no-trailing-spaces
  95     Trailing spaces are not allowed                                                                 no-trailing-spaces
  107    Trailing spaces are not allowed                                                                 no-trailing-spaces
  118    Trailing spaces are not allowed                                                                 no-trailing-spaces
  138    Trailing spaces are not allowed                                                                 no-trailing-spaces
  148    Trailing spaces are not allowed                                                                 no-trailing-spaces
  159    Trailing spaces are not allowed                                                                 no-trailing-spaces
  170    Trailing spaces are not allowed                                                                 no-trailing-spaces
  181    Trailing spaces are not allowed                                                                 no-trailing-spaces
  192    Trailing spaces are not allowed                                                                 no-trailing-spaces
  203    Trailing spaces are not allowed                                                                 no-trailing-spaces
  217    Trailing spaces are not allowed                                                                 no-trailing-spaces
  227    Trailing spaces are not allowed                                                                 no-trailing-spaces
  237    Trailing spaces are not allowed                                                                 no-trailing-spaces
  239    Multiple empty lines are not allowed                                                            no-multiple-empty-lines
  253    Trailing spaces are not allowed                                                                 no-trailing-spaces
  255    Multiple empty lines are not allowed                                                            no-multiple-empty-lines
  270    Trailing spaces are not allowed                                                                 no-trailing-spaces
  277    Scenario name is already used in: OTPvalidationAPI.feature:261                                  no-dupe-scenario-names
  286    Trailing spaces are not allowed                                                                 no-trailing-spaces
  288    Multiple empty lines are not allowed                                                            no-multiple-empty-lines
  302    Trailing spaces are not allowed                                                                 no-trailing-spaces
  314    Trailing spaces are not allowed                                                                 no-trailing-spaces
  326    Trailing spaces are not allowed                                                                 no-trailing-spaces
  338    Trailing spaces are not allowed                                                                 no-trailing-spaces
  349    Trailing spaces are not allowed                                                                 no-trailing-spaces
  363    Scenario name is already used in: OTPvalidationAPI.feature:131                                  no-dupe-scenario-names
  371    Trailing spaces are not allowed                                                                 no-trailing-spaces
  374    Scenario name is already used in: OTPvalidationAPI.feature:141                                  no-dupe-scenario-names
  382    Trailing spaces are not allowed                                                                 no-trailing-spaces
  425    Scenario name is already used in: OTPvalidationAPI.feature:210                                  no-dupe-scenario-names
  432    Trailing spaces are not allowed                                                                 no-trailing-spaces
  434    Multiple empty lines are not allowed                                                            no-multiple-empty-lines
  436    Scenario name is already used in: OTPvalidationAPI.feature:220                                  no-dupe-scenario-names
  443    Trailing spaces are not allowed                                                                 no-trailing-spaces
  445    Multiple empty lines are not allowed                                                            no-multiple-empty-lines
  447    Scenario name is already used in: OTPvalidationAPI.feature:230                                  no-dupe-scenario-names
  454    Trailing spaces are not allowed                                                                 no-trailing-spaces
  456    Multiple empty lines are not allowed                                                            no-multiple-empty-lines
  462    Trailing spaces are not allowed                                                                 no-trailing-spaces
  469    Trailing spaces are not allowed                                                                 no-trailing-spaces
  472    Multiple empty lines are not allowed                                                            no-multiple-empty-lines
  478    Scenario name is already used in: OTPvalidationAPI.feature:261, OTPvalidationAPI.feature:277    no-dupe-scenario-names
  487    Trailing spaces are not allowed                                                                 no-trailing-spaces
  494    Scenario name is already used in: OTPvalidationAPI.feature:261, OTPvalidationAPI.feature:277, OTPvalidationAPI.feature:478    no-dupe-scenario-names
  503    Trailing spaces are not allowed                                                                 no-trailing-spaces

Expected behavior
The most of issues are related to formatting.
But the optional scenario title is indeed duplicated or repeated multiple times.
It should be considered to change the filename of test definitions to kebab-case.
Alternative solution

Additional context

Thanks @rartych
done.

@rartych may I close this one ?

Yes, it was resolved with https://github.com/camaraproject/OTPValidation/pull/81/commits/5eed2d9a100c2465941c55c11278e4253313aa3c


1-page/grid view segmented control

What is it and who's it for?
People using digitised content so they can control how many images they see on screen
As depicted in Zeplin https://zpl.io/254NWMJ
User story
As a researcher
I want to switch between an overview and a detailed view
So that I can move around the digitised item more flexibly
Implementation
Acceptance criteria

[x] Component created for toolbar
[x] View state highlighted when selected
[x] Two versions produced for A/B testing
[ ] A/B testing run and concluded

Testing and tracking
A/B test
Version A: Icon only
Version B: Icon + Label : 1-page view Grid view
Hypothesis: Icons can be understood and used without descriptive labels.

a/b testing is blocked while we wait for results from a/b test running on the sidebar toggle.

Closing with test being tracked in #6445


crf_decode_forward misses key RNN kwarg

In the crf_decode_forward method, the RNN constructor is missing the zero_output_for_mask=True kwarg.
https://github.com/tensorflow/addons/blob/f82a4a6f1d39e440cc028131b478056f3a55a5d7/tensorflow_addons/text/crf.py#L493
Without this argument, the provided mask will not zero out masked timesteps. Here is the relevant documentation (scroll down to the args section, as it's left out of the signature's documentation):

zero_output_for_mask
Boolean (default False). Whether the output should use zeros for the masked timesteps. Note that this field is only used when return_sequences is True and mask is provided. It can useful if you want to reuse the raw output sequence of the RNN without interference from the masked timesteps, eg, merging bidirectional RNNs.

/cc @howl-anderson

Add a PR for this here: https://github.com/tensorflow/addons/pull/2642


Questions and remarks on integrating the module

Hey there,
Thank you for your amazing effort. I am implementing your module and so far so good. I have few remarks considering the integration and the current Readme documentation:

The ExpoBraintreeConfig.swift file is not necessary to be created manually as it is being created automatically when using npx expo prebuild. Same goes with the update to AppDelegate.m or AppDelegate.mm file, so perhaps this part can be removed from Readme? What I only notice, but it doesn't really matter,  is that the Swift file and class are named BraintreeExpoConfig instead of ExpoBraintreeConfig.
The updates on AndroidManifest.xml and Info.plist can also be removed as all necessary is being automatically added using npx expo prebuild
Is xCodeProjectAppName configuration of react-native-expo-braintree plugin declaration in  app.json file necessary?
Is it correct to import expo-braintree module when using it instead of importing react-native-expo-braintree like specified in your usage examples?
I see at the bottom of Readme your to do about integrating the rest of the payment methods. Do you have an approximate when do you want to be done with that?

Thanks

hey @fbele So in Readme are 2 tracks the first one is for Expo Based Project the second one is for Bare React Native Project

Points 1 & 2 Are related to the bare react native Project Without Expo
3. Yeah, cuz the expo plugin that I write to make an updates automatically needs that
4. It should be fixed react-native-expo-braintree is correct one
5. I have plan for that, but so far no one ask about it, that's should not be that hard to add it. At this moment I can't give you the exact date for that, need to think about that.

Hey @msasinowski thanks for prompt reply. Ok, I understand, perhaps I somehow oversaw the 2 tracks of documentation.
It would be great if you could implement API for the rest of the payment methods, so there is at least one request for them now. :)
The tokenizeCard() method is as I understand for payments with cards. In this is case it is expected a developer needs to implement own UI (form) for putting in the card data, is that right? Then these card data is tokenized using this method, to receive the nonce for further processing, is that correct?
Cheers

I will try to add that ASAP, at least a 3D Secure one.

@msasinowski Perfect! Thanks for that.
If you manage to implement also Apple Pay and Google Pay later on it would be exceptional!
As for me, this is now the only library that implements a seamless integration with Braintree SDK. It would be really awesome if it would support all functionalities of the SDK.

Perhaps one more thing that I noticed: The tokanizeCard() method options type TokenizeCardOptions is missing some fields as per Braintree SDK documentation: https://developer.paypal.com/braintree/docs/reference/client-reference/javascript/v2/credit-cards#options, like expirationDate and billingAdress.
Do you plan to add these fields too?

@msasinowski I see your opened pull request for quite a while now. How do we proceed? Who can approve your pull request so the code can get merged?

I will revisit that tokanizeCard, missing request params, since 3.x.x was just released.


test unionized params

Types aren't values, and keeping types union-safe is a pretty big deal for broader usability. I should actually start testing for that, and ideally documenting it too.

Known edge-cases to test for:

union types input: the result of a type function should equal include that of the union of the individual inputs (F<A|B> >= F<A>|F<B>, distributivity)?... though things like Indeterminate and its dependents would definitely not satisfy this, nor e.g. IsUnion... where does this discrepancy stem from? UnionHasKey?

which union-proof inputs can take never? seemingly all basic operators minus property access are never-proof. somehow & also failed, thought that's fixed since TS 2.5?

sub-types: given sub-types of the envisioned input (e.g. 'a' -> 'a' & string), the output should also extend that of the original (for A < B, F<A> < F<B>)
super-types: given super-types of the envisioned input, the output should also be a super-type of the original (for A > B, F<A> > F<B>)
prototypes: type functions should be tested for input involving methods on Object.prototype -- that is, for objects try having an explicit toString method, for string input, try toString.


"No overload matches this call, Property children does not exist on type..."

You should add children type in the Props interface for both components

I report the same problem using TypeScript.
The problem is not present when TypeScript is not used.

The issue is in react-bootstrap 2.x.x
There is a breaking change in 2.x.x   react-bootstrap-submenu library is compatible with react-bootstrap 1.x.x
If you can downgrade your bootstrap to 1.x.x you can work around this issue.  I will update for compatibility with react-bootstrap 2.x.x when I have some time


⚠ Bofrost.de has degraded performance

In 1f6a451, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 816 ms

Resolved: Bofrost.de performance has improved in 8fa1cd7 after 6 minutes.


bosh cli should present the full details of the vm state

#100344890
Signed-off-by: Zhou Xing<EMAIL_ADDRESS>

@zhang-hua can you submit PR against develop pls.

@cppforlife , ok. will do that.


update(deploy/kubernetes): Falco deployment files

Updating Falco deployment files (automatically generated by helm template). Made using the update-falco-k8s-manifests ProwJob. Do not edit this PR.

@poiana: There is not a label identifying the kind of this PR.
Please specify it either using /kind <group> or manually from the side menu.

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign nestorsalceda after the PR has been reviewed.
You can assign the PR to them by writing /assign @nestorsalceda in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

LGTM label has been added.  Git tree hash: 8a44ccae9ff8d689653d123638a9e985cd57fb1b

[APPROVALNOTIFIER] This PR is APPROVED
This pull-request has been approved by: leogr
The full list of commands accepted by this bot can be found here.
The pull request process is described here

Needs approval from an approver in each of these files:

OWNERS [leogr]

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment


Breaking errors

Heya! thanks for the calculator!
It seems like one of your most recent changes may have broken it. I receive the following errors (one seems to be on an interval, and one upon trying to import my save)

Hi! Thank you for opening this issue. I am not able to reproduce this problem. Could you share the save-game that causes these errors and describe steps to reproduce this?

I'm closing this issue as I am not able to reproduce it. If you are still having this issue, please comment.


"Minecraft took X seconds to initialize." is the same as "... fully load" with Architectury.

[22:40:18] [main/INFO]: [STDOUT]: Minecraft took 40.128 seconds to fully load.
[22:40:18] [main/INFO]: [STDOUT]: That is 28.524 seconds worth of raw loading time

Sometimes there are only these two lines

do you have a log of this?

This is so weird - it IS printing with Architectury and ISN'T without it.

You might wanna try scrolling up in the log by a little bit.

You might wanna try scrolling up in the log by a little bit. Most likely an invalid issue.

Renamed
First log is without Architectury, the second with.
https://paste.ee/p/pzOAz
https://paste.ee/p/nov7l

yup it seems to be working properly

most likely an invalid issue, as this seems to be working as intended


Is there no way to import CSV files with with numbers using comma as decimal char?

When you try to import a CSV file, with semi-colon separation, which is usually because you use comma for decimal numbers, there seems to be no way to import those correctly via dBeaver. And you cannot easily convert such a CSV file from semi-colon to comma separated.

Stepping in ahead of the devs, but I've had success importing semi-colon-separated CSVs by modifying the Column delimiter row in the Importer settings, as highlighted in the below screenshot.  Would that be a solution for your issue?

Thanks but no. The problem was not about the delimiter but the decimal character. When you use ; as delimeter it is because you use , as decimal character and that is a normal thing to be able to select also when importing CSV files, e.g., in Excel

Thank you for your idea!


Support shared DLL build in Windows

When building the shared version of mbedtls in Windows, no function call is exported. This makes the library not usable on windows as a shared DLL as also noted here #94.
Other projects support this by defining something similar to this in the main include file:
#ifdef _WIN32
  /* Windows - set up dll import/export decorators. */
# if defined(SHARED)
    /* Building shared library. */
#   define MBEDLTS_EXTERN __declspec(dllexport)
# elif defined(USING_MBEDTLS_SHARED)
    /* Using shared library. */
#   define MBEDLTS_EXTERN __declspec(dllimport)
# else
    /* Building static library. */
#   define MBEDLTS_EXTERN typedef
# endif
#elif __GNUC__ >= 4
# define MBEDLTS_EXTERN __attribute__((visibility("default")))
#else
# define MBEDLTS_EXTERN typedef
#endif

Then every function that needs to be exported needs to be prefixed by the MBEDLTS_EXTERN define like this:
MBEDLTS_EXTERN int mbedtls_ssl_send_t( void *ctx,
                                const unsigned char *buf,
                                size_t len );

This is really a simple mechanic change. But it would require to change all the include files.
I would like to understand what maintainers feel about this change and if they would accept a patch implementing it.

ARM Internal Ref: IOTSSL-739

Hi,
Something similar was suggested in issue #406, which we've been considering for a while. Without going into the whole debate, that's still an open question for the project, so it's not really open to community contribution yet (as we may not accept it).
However, it may be possible to achieve what you want another way, though using a .def file. Have a look at this article on MSDN - Exporting from a DLL Using DEF Files.
Would it be useful if we provided a .def file and integrated it into the build system? That could be an alternative solution.

Hi @sbutcher-arm
The final result is what really matter I guess.
I personally think that #406 approach is probably more flexible and opens to various possibilities, so that would be my choice.
One thing I forgot to mention is also that for binding the dll it would be easier to get the size of the structs through a library function, something like:
int ssl_get_struct_size(int sstruct)
{
	switch (sstruct)
	{
	case 1:
		return sizeof(ssl_session);

	case 2:
		return sizeof(ssl_context);

	case 3:
		return sizeof(ssl_transform);

	case 4:
		return sizeof(ssl_handshake_params);

#if defined(POLARSSL_SSL_SESSION_TICKETS)
	case 5:
		return sizeof(ssl_ticket_keys);
#endif
#if defined(POLARSSL_X509_CRT_PARSE_C)
	case 6:
		return sizeof(ssl_key_cert);
#endif
	}

	return 0;
}

It's really low maintenance and it hugely simplify the integration. Let me know what you think.

Hi,
I'll return to this thread on the subject of prefixes - and to be clear, the decision won't be whether we do the change or not but whether we'd be willing to accept it as a contribution. If we don't, we can certainly accept the .def file as a substitute solution (which we may provide instead).
On the proposal for returning the size of structs, I have some reservations, but would it not be possible to use the project header files, and take the sizeof() from the struct in the header? I appreciate there may be versioning problems, but I'd like to understand your limitations.

Hi,
You can use the header file and sizeof() in c/c++ projects. For the rest like .Net, Java, Python, etc it's not possible to use sizeof().
I can speak for .Net because I did it in the past. It's a nightmare to marshal structs and it's really difficult to get the size right. It can also change from one version to another of the lib and it's really difficult to keep track of these changes.
This is a really simple solution, used also in other projects like libuv, that with really few lines of code, saves a lot of time and frustration to everybody.
I can understand it's not functional to the main purpose of the library, so it could be an optional feature enabled with a compile option like MBEDTLS_INCLUDE_SIZEOF.

Hi,
Concerning the function prefixes suggested in #406, this isn't something we can accept as a contribution at the moment, although I wouldn't rule it out in the future. For the moment I'd suggest you use a .def file, and we'd certainly accept a contribution in this area.
For returning the sizeof() structs, I'm sympathetic to the problem, but I think this is best addressed by a wrapper around mbed TLS, not by the library itself, which is what is done currently for Java and Python on Unix.
Can I ask what the host language is? .Net, C++ or something else? There may be an existing wrapper you can use, or we could get community support for. Would you be happy to use a .dll built from the library and a wrapper?

Hi,
Sorry for the delay in the reply.
I don't have a real purpose at the moment other then experimenting a little with .net and mbedtls.
The def file would fix the main issue so it would definitely be a good option.
Thanks

I just want to confirm that mbedtls still cannot be compiled as a shared library (.dll) on windows at this time.  Can anyone comment?

Straight out of the box, it won't compile to a shared library.
With tweaking of the visual studio project to compile as a shared dll, I was able to compile it and use some basic functionality as a 64 bit dll.  I used a module .def file to expose the functions for the shared library, and compiled with the latest version of Visual Studio 2017.
I used a regex to parse the ssl.h file for function declarations and generate the module .def file from that.
I have only tried this for the mbedTLS project, and none of the other projects in the visual studio solution. I am only using a select few PSK crypto suites to support communication with some IOT devices.  I also have not yet done extensive testing on it.
I am running into some runtime issues when I compile as a 32 bit dll.  I'm not sure where the problems are right now.  I'm attempting to PInvoke into the library for a .NET project.  I'm not sure if the 32bit runtime issues are problems with mbedTLS at this moment, or with my PInvoke calls.  I had previously been using a C++/CLI wrapper class. However, with .NET core that is no longer a possibility. So that has driven me to use PInvoke.

Without a CLA, I've had to close #1363, so removing the 'fix available' tag.

Hello,
I made a recent attempt to build the shared DLL in windows for version 2.16.12 and using the CMake export all features.
The only problem is that it does not manage the global data variables (export/)import and there are some in the mbed libraries which still needs the (export/)import declaration.
Here are some explanations on what I attempted and hints on what could be done.
First I attempted compilation with the CMake export all symbols feature:
cmake -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=On -DENABLE_TESTING=Off -DUSE_SHARED_MBEDTLS_LIBRARY=On -DUSE_STATIC_MBEDTLS_LIBRARY=Off .. -G "Visual Studio 15 2017"
It built the mbedcrypto.dll  but some global variables cannot be imported for mbedx509 build:
  Auto build dll exports
     Creation of library X:/mbedtls-2.16.12/build/library/Release/mbedcrypto.lib and object X:/mbedtls-2.16.12/build/library/Release/mbedcrypto.exp
  mbedcrypto.vcxproj -> X:\mbedtls-2.16.12\build\library\Release\mbedcrypto.dll
  Building Custom Rule X:/mbedtls-2.16.12/library/CMakeLists.txt
  ...
Generating code ....
  Auto build dll exports
     Creation of library X:/mbedtls-2.16.12/build/library/Release/mbedx509.lib and object X:/mbedtls-2.16.12/build/library/Release/mbedx509.exp
x509.obj : error LNK2019: unresolved external symbol _mbedtls_snprintf referenced in function _mbedtls_x509_dn_gets [X:\mbedtls-2.16.12\build\library\mbedx509.vcxproj]
x509_crl.obj : error LNK2001: unresolved external symbol _mbedtls_snprintf [X:\mbedtls-2.16.12\build\library\mbedx509.vcxproj]
x509_crt.obj : error LNK2001: unresolved external symbol _mbedtls_snprintf [X:\mbedtls-2.16.12\build\library\mbedx509.vcxproj]
x509_csr.obj : error LNK2001: unresolved external symbol _mbedtls_snprintf [X:\mbedtls-2.16.12\build\library\mbedx509.vcxproj]
X:\mbedtls-2.16.12\build\library\Release\mbedx509.dll : fatal error LNK1120: 1 unresolved external symbol [X:\mbedtls-2.16.12\build\library\mbedx509.vcxproj]

I found a configuration bypass to avoid mbedtls_snprintf to be defined as a global variable and to keep it defined as a function (automatically managed for export by CMake):
config.h: #define MBEDTLS_PLATFORM_SNPRINTF_MACRO    mbedtls_platform_win32_snprintf
Otherwise the global variables shall be exported for DLL (on library build)/imported for DLL (for library external use).
Using the configuration bypass mbedcrypto.dll and mbedx509.dll were built but then I ran into more global variables without configuration bypass possible:
  Auto build dll exports
     Creation of library X:/mbedtls-2.16.12/build/library/Release/mbedx509.lib and object X:/mbedtls-2.16.12/build/library/Release/mbedx509.exp
  mbedx509.vcxproj -> X:\mbedtls-2.16.12\build\library\Release\mbedx509.dll
  Building Custom Rule X:/mbedtls-2.16.12/library/CMakeLists.txt
 ...
 Generating code ....
  Auto build dll exports
     Creation of library X:/mbedtls-2.16.12/build/library/Release/mbedtls.lib and object X:/mbedtls-2.16.12/build/library/Release/mbedtls.exp
ssl_tls.obj : error LNK2019: unresolved external symbol _mbedtls_x509_crt_profile_default referenced in function _mbedtls_ssl_config_defaults [X:\mbedtls-2.16.12\build\library\mbedtls.vcxproj]
ssl_tls.obj : error LNK2019: unresolved external symbol _mbedtls_x509_crt_profile_suiteb referenced in function _mbedtls_ssl_config_defaults [X:\mbedtls-2.16.12\build\library\mbedtls.vcxproj]
X:\mbedtls-2.16.12\build\library\Release\mbedtls.dll : fatal error LNK1120: 2 unresolved external symbols [X:\mbedtls-2.16.12\build\library\mbedtls.vcxproj]

At this step there is no possible workaround using config.h definitions which means the only way is to manage the DLL import/export for those variables either with help of CMake GenerateExportHeader or manually.
Here is an example on how it might be generated by CMake for mbedcrypto library.
In library CMakeLists add the following:
include(GenerateExportHeader)
generate_export_header(mbedcrypto)

The CMake generated header (content depending on platform) shall then be included for the global variable declaration and following macro used for export/import variables:
Directory to include for the generated header in CMake: ${PROJECT_BINARY_DIR}, it should contain mbedcrypto_export.h file to be included.
Example of adapted declaration for the global variable in platform.h:
MBEDCRYPTO_EXPORT extern int (*mbedtls_snprintf)( char * s, size_t n, const char * format, ... );
This provides a DLL export of the variable on mbedcrypto build and a DLL import when using it.
I hope it can help to make some progress on this issue. I am not sure if the CMake export header generation approach is suitable for mbedtls. Moreover it seems some attempts were made without using CMake DLL export features in issue #2943.
Best regards.


clean sidecli and handle inject-genesis

Related PR
This is a follow up of

#44

This was already fixed by removing the logic for inject-genesis