Response to action server goal request

Hardware description: Yaskawa Motoman
Version or commit hash: 3e5e219ebb5f2c7b3da74f5838349a7969676c81

Question
Is there currently a proper way to populate type-specific response data from an action server goal request? Is there a pointer somewhere to the response message? AFAICT, the action response is a generic pass/fail with no additional data.
I've got a FollowJointTrajectory server implemented. If an invalid trajectory is submitted (or the robot isn't ready), then I want to reply to the user with information on WHY the trajectory was rejected. The message format for the FJT action allows for this additional information. But, I'm not seeing how to populate this.
Currently, I am simply returning RCL_RET_ACTION_GOAL_REJECTED from the goal_callback function.
Any guidance would be appreciated.

I have been checking the RCLCPP code for actions and when you reject a goal it is not possible to send any kind of data. For example, take a look at the generated type support of FollowJointTrajectory send goal response:
template<class ContainerAllocator>
struct FollowJointTrajectory_SendGoal_Response_
{
...
  // field types and members
  using _accepted_type =
    bool;
  _accepted_type accepted;
  using _stamp_type =
    builtin_interfaces::msg::Time_<ContainerAllocator>;
  _stamp_type stamp;
...
}

The part of the .action file you point to is just the response for the GetResult service. That means that when the goal ends and the result is sent, this string can be filled.
My question now is, does the Action Client triggers the GetResult service when its goal is rejected? I'm going to take a look.

That means that when the goal ends and the result is sent, this string can be filled.

aren't CANCELLED and ABORTED included in "goal processing end[ed]"?
Setting error_code and error_string as part of a goal rejection or abortion has been a standard pattern of usage for a long time.

Check ros2_controllers FollowJointTrajectory implementation goal callback: https://github.com/ros-controls/ros2_controllers/blob/master/joint_trajectory_controller/src/joint_trajectory_controller.cpp#L909
The goal response does not use the error_string, but its used if the current goal is canceled: https://github.com/ros-controls/ros2_controllers/blob/master/joint_trajectory_controller/src/joint_trajectory_controller.cpp#L1194

Almost irrelevant, but at least in ROS 1 actionlib, one could use actionlib::ServerGoalHandle<...>::setRejected(const Result& result, const std::string& text) like so:
control_msgs::FollowJointTrajectoryResult result;
result.error_code = control_msgs::FollowJointTrajectoryResult::INVALID_GOAL;
gh.setRejected(result, "This is not a valid goal for this server");

Could be the ROS 2 redesign lost that because it's using services for some part of the API.

You can check the logic behind ROS2 actions here: http://design.ros2.org/articles/actions.html, including differences between ROS 1 and ROS 2 actions
I agree with you, It looks like rejected goals are not very informative: Rejected goals are not part of the state machine. and there are no space for goal response on the .msg

So the work-around / expected implementation appears to be: accept (even though it's an invalid goal), then immediately cancel.

Looking at rclcpp_action::GoalResponse, perhaps returning ACCEPT_AND_DEFER and then immediately ABORTing the goal would be 'cleaner'.
Still don't like it too much though, but that's not rclc's fault.

Thank you for the feedback. We'll figure something out on our end.


Remove config.yaml

Removes the need for a config.yaml file. This also allows us to move the parsing of the topology file into the runtime, letting it be emitted as a tracing error.

this change alone wont be enough to resolve https://github.com/shotover/shotover-proxy/issues/993
The CLI args will still fail to parse before the tokio runtime is started.
So I dont think moving topology generation to runtime makes sense.
Instead I think we should have an error path that looks like:
fn Runner::new() -> Result<()> {
  if let Err(err) = Runner::new_inner() {
    create_trivial_tokio_runtime_just_for_tracing();
    error!("{:#?}", err.context("failed to init"));
    return Err(()); // or possibly just directly call exit(1)
  }
}

I'll update this PR to just remove the config file.

Hmm, will need to do a new release for this one. It breaks the docker example using the published DockerHub image.


question: how do i use HystrixCommand at the spring-cloud-gateway

hi, i have a few question
i want to do the hystrix configuration in a yml file on the spring-cloud-gateway.
Is it possible?
how do i use HystrixCommand at the spring-cloud-gateway?
I'll wait for your answer.
Thank your for interest in this question.

Here it is not a right place. Please, see spring-cloud-gateway


Fix doc typos

Should we also mention that the list is a list of argument combinations formatted as dictionaries?


Linking Unity camera and media capture

I'm trying to use your sample in an other project but in the MainPage.xaml.cs there is the DummyElement which is not defined. I looked in the sample project and the problem doesn't occur.
The part in cause is the following :
        public async Task SetMediaCapture(MediaCapture capture)
        {
            //Set MediaCapture to CaptureElement.
            DummyElement.Source = capture;

            //Start Preview.
            await capture.StartPreviewAsync();

        }

I didn't find a class or anything linked to this DummyElement and I don't know how to declare it or to link it with another object.
I'd be grateful if someone could help me.
Thanks

Dear Narnon,
DummyElement is CaptureElemnt Class.
It’s define with Xaml element in MainPage.xaml
please check MainPage.xaml .
If you will create new another project , please try edit MainPage.xaml by using repository as reference.

Dear Takahiro Miyaura,
It worked well.
Thank you very much for your help and your quick answer.


neurodocker generates files with unprintable characters [when used with docker]

@kaczmarj - we need to ensure that none of the generators contain non-printable characters.
+ '[' -n $'docker\r' -a -z '' ']'
+ '[' -x $'/usr/local/libexec/singularity/bootstrap-scripts/deffile-driver-docker\r.sh' ']'

on a unix system cat -v filename will show you the unprintable pieces. one can use dos2unix to remove them. otherwise, they go along even with copy and paste!

@satra - i'm really sorry about all of the headaches that this bug caused. i can't see the unprintable characters on my debian machine with cat -v. the neurodocker command i tried is
neurodocker generate singularity \
  --base neurodebian:stretch \
  --pkg-manager apt \
  --install git emacs vim nano gedit

@kaczmarj - try this:
docker run -it --rm kaczmarj/neurodocker:master generate singularity   --base neurodebian:stretch-non-free   --pkg-manager apt   --install eatmydata fsl-5.0-core fsl-mni152-templates   --run "eatmydata apt-get -y install --no-install-recommends file"   --add-to-entrypoint "source /etc/fsl/5.0/fsl.sh"

@satra - yes, i can reproduce it now. thanks. building a new neurodocker image to see if that fixes the issue

interestingly, running the neurodocker docker image produces the non-printable characters, but running a pip-installed neurdocker does not produce those characters

@kaczmarj - perhaps we can update the readme. no fix is needed.

FWIW. oh, just ran into it myself, I should remember to not use -t with a docker run of neurodocker!!!


Project Added -> JSP & Servlets

Hello,
This PR for issue #63
To add the simple JSP project
I hope this be good for others
Thanks

Thanks @SamarpanCoder2002

Thanks @SamarpanCoder2002


[stable/sonarqube] Fix: Init-Container not created

Fix issue that init-container was not created when
used without any additional plugins.
Signed-off-by: Jannis Oeltjen<EMAIL_ADDRESS>
What this PR does / why we need it:
Init container was not created when no additional plugins were set in the values.
Which issue this PR fixes
(optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close that issue when PR gets merged)

fixes issue from PR #15017

Special notes for your reviewer:
Checklist
[Place an '[x]' (no spaces) in all applicable fields. Please remove unrelated fields.]

[x] DCO signed
[x] Chart Version bumped
[x] Variables are documented in the README.md
[x] Title of the PR starts with chart name (e.g. [stable/chart])

/ok-to-test
/lgtm


Self Signed Certs all have hardcoded names, not allowing for multiple Client VPNs in a region

what
The certificate names are all hardcoded, not allowing modification via context.
why
In order to have multiple Client VPNs in the same region, the keys stored in SSM need to be unique, the hardcoded approach doesn't allow this.
I really don't know best practices around backwards compatibility or naming in general, just that the way it is doesn't allow for specifying unique names for the stored SSM keys.   let me know if a different approach would work better.
references

Closes https://github.com/cloudposse/terraform-aws-ec2-client-vpn/pull/31
Upstream fix to use id instead of name https://github.com/cloudposse/terraform-aws-ssm-tls-self-signed-cert/pull/10

/test all

@garrinmf please review the terratest failure if you get a chance

@nitrocode It doesn't seem like the self signed cert module, https://github.com/cloudposse/terraform-aws-ssm-tls-self-signed-cert, knows how to look to the attributes.   So all the keys are writing to the same SSM parameter name, in the test case it's example.pem as example is the module.this.name.  I pulled it and manually tried it locally and if I don't specify context (with a name) the keyname is actually just .pem.  If I do specify context with a name they're named the same, not taking into account attributes.  Not sure if this needs fixed downstream or a different approach in this module

?

Looks like terratests fail though

@garrinmf could you look at that?

@nitrocode  Is there another approach, besides the attributes, that works better than my original attempt but the downstream packages work with?

+1

/test test/terratest

/test all

/test all


Fix proxy config to honor allowlist

using bypass list for now and not worrying about allowlist for now. May want to consider a block list or similar instead.


Problem using AWS SDK for cpp - cmake - Creating an Out-of-Source Build

Hi
I would like to compile cpp https://github.com/awsdocs/aws-doc-sdk-examples/tree/master/cpp/example_code/s3/create_bucket.cpp example
What platform/OS are you using?
windows 10
What compiler are you using? what version?
visual studio 2017
What's your CMake arguments?
cmake -Daws-sdk-cpp_DIR=sdk_build folder1
where:
folder1 contains create_bucket.cpp as in AWS cpp example in github and CMakeLists.txt as below:
cmake_minimum_required(VERSION 2.8)
project(Project1)
#this will locate the aws sdk for c++ package so that we can use its targets
find_package(sdk_build)
add_executable(Project1 create_bucket.cpp)
#since we called find_package(), this will resolve all dependencies, header files, and cflags necessary
#to build and link your executable.
target_link_libraries(Project1 aws-cpp-sdk-s3)

p.s. sdk_build is the aws-sdk-cpp (after going through cmake commands)
I received this error through using command line commands:
CMake Warning at CMakeLists.txt:6 (find_package):
By not providing "Findsdk_build.cmake" in CMAKE_MODULE_PATH this project
has asked CMake to find a package configuration file provided by
"sdk_build", but CMake did not find one.
Could not find a package configuration file provided by "sdk_build" with
any of the following names:
sdk_buildConfig.cmake
sdk_build-config.cmake

Add the installation prefix of "sdk_build" to CMAKE_PREFIX_PATH or set
"sdk_build_DIR" to a directory containing one of the above files.  If
"sdk_build" provides a separate development package or SDK, be sure it has
been installed.
-- Configuring done
-- Generating done
CMake Warning:
Manually-specified variables were not used by the project:
aws-sdk-cpp_DIR

-- Build files have been written to: C:/AWSProjects/Project1

Hi, find_package will find the literal package name you supplied, not the directory name, it should be aws-sdk-cpp.


search causes game crash on some characters

screenshot - https://yadi.sk/i/N36OOOVD3Jx3Sx

This probably happened because of #46, changing line 1308 of control.lua from
return string.gsub(pattern, "[^%w]", "%%%0")
to
return pattern
should work as per these changes


Entity Name Template

I've left the entity name template at its default setting of "{{ device.location2 }} {{ device.location }} {{ device.name }}" and it works for most HS devices but I've got a couple of devices that look like they are coming in as "{{ device.location2 }} {{ device.location }} {{ device.featurename }}".  They have the Feature name instead of Device name.  This isn't a huge problem, I can rename them, but I can't see why this is happening.  The device names are unique but the feature names aren't.
David

This is happening because at the API level, HS treats each feature as a separate device. So, when this integration reads the API response, it creates a separate entity for each feature, and names them according to the name of the feature. This is partly down to how HS4 displays things in its UI which makes it seem like you have one device with a bunch of features. But under the hood at the JSON API level its the same as HS3 in terms of root device/child devices.

This is happening because at the API level, HS treats each feature as a separate device. So, when this integration reads the API response, it creates a separate entity for each feature, and names them according to the name of the feature. This is partly down to how HS4 displays things in its UI which makes it seem like you have one device with a bunch of features. But under the hood at the JSON API level its the same as HS3 in terms of root device/child devices.

HS4 is just a new body shell on top of the same old chassis...


Feature request-Spam mail Prediction (with app.py)

I propose adding a "Spam Mail Detection" feature to the ML Nexus project, which is not currently included. This feature will utilize machine learning to classify emails as spam or non-spam and will be built with a user-friendly app.py interface to allow real-time interaction. Users will input email text directly into the app, which will then instantly classify the email. This feature would enhance ML Nexus by providing a practical, widely applicable tool for email filtering, further broadening the project's utility and real-world application value. I am excited to contribute to ML Nexus by implementing this essential feature.
Please assign this to me.

@Shy029 please raise ideas which are not existed


Feature request: direct communication to the device (bypass Midea altogether)

I did some packet captures of communication between the cloud and the device and seen the strings similar to this:
c00087667f7f003c0000006347000000000000000000006c3000000000000000000000000000000000
It seems that the format is very similar to what we send/receive from the cloud. Will it be possible to bypass the cloud somehow?
p.s.
I am using this module with a Senville Aura AC (https://senville.com) and it works very well, it might be worth noting in the README that non-idea ACs are compatible.

Just moving this over from the home-assistant component to the underlying library which currently uses their cloud.
I agree this would be nice. Did you try sending any commands directly?
I think the original ruby project's github has some research on this, but not sure it was put into practice yet and I've not personally looked into it.

@andersonshatch can you please point me to the ruby project you mentioned above?

I've found https://github.com/mac-zhou/midea-msmart/ this weekend. Maybe @mac-zhou and @andersonshatch will be able to integrate that into a single library or a single homeassistant component?

@velaar did u ever find a way to control your Senville aura series? I'd love to integrate with home assistant but can't find any solutions.

@velaar did u ever find a way to control your Senville aura series?

The solution above works for me. https://github.com/mac-zhou/midea-ac-py Wifi modules are not great in terms of reliability but at least the component above provides direct (no cloud or even internet access) control.

@velaar what model do you have? When I run the discover script mine comes back as unsupported.
user@pop-os:~$ midea-discover --debug
INFO:msmart.cli:Debug mode active
INFO:msmart.cli:msmart version: 0.1.24
INFO:msmart.cli:Sending Device Scan Broadcast...
INFO:msmart.cli:Midea Local Data <IP_ADDRESS> 837000b8200f04045a5a0111a8007a80000000000000000000000000856b0100000e0000000000000000000000000000dc449482eb2a18046c25f9d6f40040bb7c5179b1de29da3850d76d9beb6696c43c62647f4cd2d2970bc61b40da818a41fc8e848a4e8dd114460862be7fde510a2a78f6fe90fe0607a7e5ae341e42aa7a27894ab6cf71c28b56b12c3c424196e7f31443d17c3aac03a7656614ae1dca4494835a2972a432f24b9ef863206fce4530ad07ec1162951f501b492fb9432443
INFO:msmart.cli:Decrypt Reply: <IP_ADDRESS> fc00000a2c19000030303030303050303030303030305131353032444242353933383441303030300b6e65745f61635f333834410000000001000000040000000000ac00000000000000502dbb59384a069fcd0400020103000000000000000000000000000000000000000000
DEBUG:msmart.command:Finalize request data: aa20ac00000000000003418100ff03ff000200000000000000000000000003cd9c
DEBUG:msmart.lan:Sending to <IP_ADDRESS>:6444 5a5a0111680020000000000026030f0c0f061514856b0100000e00000000000000000000000000006b000a76e27eed2c3647e57d8602df8bc4af172d627dc261b35011770d1013062a3b1c43d2f1c08ae8768502a22a836b194afc4687f3bb44c6b38740a6929555
INFO:msmart.lan:Couldn't connect with Device <IP_ADDRESS>:6444
DEBUG:msmart.device:refresh - Recieved from <IP_ADDRESS>, 856b0100000e:
INFO:msmart.cli:*** Found a unsupported device - type: '0xac' - version: V3 - ip: <IP_ADDRESS> - port: 6444 - id:<PHONE_NUMBER>1925 - sn: 000000P0000000Q1502DBB59384A0000 - ssid: net_ac_384A
user@pop-os:~$

you can control it in a wired way: https://github.com/mac-zhou/midea-ac-py/issues/33


trying to run az account subscription list fails

This is autogenerated. Please review and update as needed.
Describe the bug
Command Name
az account subscription list Extension Name: account. Version: 0.2.3.
Errors:
No module named 'azure.core.rest'
Traceback (most recent call last):
Temp\pip-unpacked-wheel-2huwp6jm\knack\cli.py, ln 215, in invoke
cli\core\commands\__init__.py, ln 654, in execute
cli\core\commands\__init__.py, ln 717, in _run_jobs_serially
cli\core\commands\__init__.py, ln 710, in _run_job
Local\Temp\pip-unpacked-wheel-in8b2jw5\six.py, ln 703, in reraise
cli\core\commands\__init__.py, ln 688, in _run_job
cli\core\commands\__init__.py, ln 325, in __call__
azure\cli\core\__init__.py, ln 775, in default_command_handler
...
azext_account\vendored_sdks\subscription\__init__.py, ln 9, in <module>
    from ._subscription_client import SubscriptionClient
azext_account\vendored_sdks\subscription\_subscription_client.py, ln 12, in <module>
    from azure.core.rest import HttpRequest, HttpResponse
ModuleNotFoundError: No module named 'azure.core.rest'

To Reproduce:
Steps to reproduce the behavior. Note that argument values have been redacted, as they may contain sensitive information.

Put any pre-requisite steps here...
az account subscription list

Expected Behavior
Environment Summary
Windows-10-10.0.19041-SP0
Python 3.6.8
Installer: MSI

azure-cli 2.16.0 *

Extensions:
account 0.2.3
cli-translator 0.3.0
webapp 0.3.1

Additional Context

@zhoxing-ms for awareness

Introduced by PR #4409, @PARADISSEEKR please help remember to update the appropriate azext.minCliCoreVersion for this extension

azure-cli 2.16.0 *

Hi, @RichardMcCormack Please update the CLI version and try again, the latest version is 2.36.0.

Done - thanks.


Enable prometheus/pprof debug

What type of PR is this?

/kind feature

What this PR does / why we need it:
Enable insecure-port for kube-apiserver

set env var KUBE_ENABLE_APISERVER_INSECURE_PORT=true

Add prometheus debug to cluster

set env var KUBE_ENABLE_APISERVER_INSECURE_PORT=true KUBE_ENABLE_PROMETHEUS_DEBUG=true to enable prometheus debug for kube-apiserver, etcd, kube-controller-manager, kube scheduler

Add pprof collecting for debug purpose

set env var KUBE_ENABLE_PPROF_DEBUG=true
Which issue(s) this PR fixes:

Fixes #
Special notes for your reviewer:
Does this PR introduce a user-facing change?:

/lgtm

/lgtm

@sonyafenge please add a section in description about how this PR was tested. thanks!

@sonyafenge please add a section in description about how this PR was tested. thanks!

/lgtm
Please consider my comments resolved. I don't see a button to resolve them - so it looks like PR owner needs to resolve.

/lgtm
Please consider my comments resolved. I don't see a button to resolve them - so it looks like PR owner needs to resolve.

/approve

/approve


Win 7 environment setup

Hi how to setup ENV_SETTINGS_FILE in Win 7? Thanks
In startup/create_app.py/create_app:
env_settings_file = os.environ.get('ENV_SETTINGS_FILE', 'env_settings_example.py')
app.config.from_pyfile(env_settings_file)

this needs to change to env_settings.py outside project directory as well?

<IP_ADDRESS> - - [07/Sep/2015 13:07:34] "GET /user/register HTTP/1.1" 200 -
<IP_ADDRESS> - - [07/Sep/2015 13:08:10] "POST /user/register HTTP/1.1" 500 -
Traceback (most recent call last):
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask/app.py", line 1836, in call
return self.wsgi_app(environ, start_response)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask/app.py", line 1820, in wsgi_app
response = self.make_response(self.handle_exception(e))
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask/app.py", line 1403, in handle_exception
reraise(exc_type, exc_value, tb)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask/app.py", line 1817, in wsgi_app
response = self.full_dispatch_request()
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask/app.py", line 1477, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask/app.py", line 1381, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask/app.py", line 1475, in full_dispatch_request
rv = self.dispatch_request()
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask/app.py", line 1461, in dispatch_request
return self.view_functionsrule.endpoint
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask_user/views.py", line 423, in register
_send_registered_email(user, user_email, require_email_confirmation)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask_user/views.py", line 662, in _send_registered_email
emails.send_registered_email(user, user_email, confirm_email_link)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask_user/emails.py", line 148, in send_registered_email
user_manager.send_email_function(email, subject, html_message, text_message)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask_user/emails.py", line 49, in send_email
mail_engine.send(message)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask_mail.py", line 491, in send
with self.connect() as connection:
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask_mail.py", line 144, in enter
self.host = self.configure_host()
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/site-packages/flask_mail.py", line 156, in configure_host
host = smtplib.SMTP_SSL(self.mail.server, self.mail.port)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/smtplib.py", line 796, in init
SMTP.init(self, host, port, local_hostname, timeout)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/smtplib.py", line 256, in init
(code, msg) = self.connect(host, port)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/smtplib.py", line 316, in connect
self.sock = self._get_socket(host, port, self.timeout)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/smtplib.py", line 801, in _get_socket
new_socket = socket.create_connection((host, port), timeout)
File "/home/osboxes/anaconda/envs/py27/lib/python2.7/socket.py", line 557, in create_connection
for res in getaddrinfo(host, port, 0, SOCK_STREAM):
TypeError: getaddrinfo() argument 1 must be string or None
<IP_ADDRESS> - - [07/Sep/2015 13:08:10] "GET /user/register?debugger=yes&cmd=resource&f=style.css HTTP/1.1" 200 -
<IP_ADDRESS> - - [07/Sep/2015 13:08:10] "GET /user/register?debugger=yes&cmd=resource&f=jquery.js HTTP/1.1" 200 -
<IP_ADDRESS> - - [07/Sep/2015 13:08:10] "GET /user/register?debugger=yes&cmd=resource&f=debugger.js HTTP/1.1" 200 -
<IP_ADDRESS> - - [07/Sep/2015 13:08:10] "GET /user/register?debugger=yes&cmd=resource&f=console.png HTTP/1.1" 200 -
<IP_ADDRESS> - - [07/Sep/2015 13:08:10] "GET /user/register?debugger=yes&cmd=resource&f=source.png HTTP/1.1" 200 -


Refactored a log message

Signed-off-by: Yinan Li<EMAIL_ADDRESS>

@pcadabam can you review?

LGTM


bug: only one order of instrument shows in limit-orders and stop-orders section

This bug occurred when fixing https://github.com/Tim55667757/TKSBrokerAPI/issues/17
If FIGI meet more than one time it dropped (it's a bug).

Bug fixed in v1.5.*
All limit and stop orders shows in Order section of the user portfolio. Also, price of similar instruments requests only one time.


ruby 1.9.3 compatibility

Hi, thanks for the contribution!
Please also add the needed ruby versions to the .travis.yml file so the CI process runs too. It is mandatory to have a working build process to review the PR.
Thanks again :)

Coverage remained the same at 99.904% when pulling c14c5648e3c2361e1196a00548ecbf37ab603bd6 on ditec:master into a1945cb68fafb552d8fed1b8ac95dc18f448b7fa on PortaText:master.

Hello! I'm going to close this one since the build is broken with 1.9.3.
But please do feel free to open it again once you can make the build pass successfully. Thanks :)


Added support for marking interfaces with SwaggerWcf attribute #82

Please review. Not elegant but should work in most cases.

thanks for the PR!
new release was published in nuget with this patch


fix bitbucket profile and transfer worst tests to it

Description
Follow-up to https://github.com/dockstore/dockstore/pull/5313
Move out the two worst bitbucket tests to the bitbucket test user 1 (which seems completely unused, which is why I needed to fix the encrypted bundle)
https://app.circleci.com/insights/github/dockstore/dockstore/workflows/everything/tests?branch=develop

Start cleaning up the horrible method naming and overloading in CommonTestUtilities in-case we use our fourth test user :grimacing:
Review Instructions
Should only allow tests to run somewhat more smoothly.
Issue
n/a
Security
n/a
Please make sure that you've checked the following before submitting your pull request. Thanks!

[x] Check that you pass the basic style checks and unit tests by running mvn clean install
[x] Ensure that the PR targets the correct branch. Check the milestone or fix version of the ticket.
[x] Follow the existing JPA patterns for queries, using named parameters, to avoid SQL injection
[x] If you are changing dependencies, check the Snyk status check or the dashboard to ensure you are not introducing new high/critical vulnerabilities
[x] Assume that inputs to the API can be malicious, and sanitize and/or check for Denial of Service type values, e.g., massive sizes
[x] Do not serve user-uploaded binary images through the Dockstore API
[x] Ensure that endpoints that only allow privileged access enforce that with the @RolesAllowed annotation
[x] Do not create cookies, although this may change in the future
[x] If this PR is for a user-facing feature, create and link a documentation ticket for this feature (usually in the same milestone as the linked issue). Style points if you create a documentation PR directly and link that instead.

Noticed invitations to dockstore test user 4 finally came through.
Some stats before
$ cat dockstore-web-cache.misses-bitbucket-tests-0-before.log | grep api.bitbucket.org | grep DockstoreTestUser | wc -l
57
$ cat dockstore-web-cache.misses-bitbucket-tests-0-before.log | grep api.bitbucket.org | grep dockstore_testuser2 | wc -l
216

and at this point in the PR
$ cat dockstore-web-cache.misses-bitbucket-tests-0.log | grep api.bitbucket.org | grep DockstoreTestUser | wc -l
179
$ cat dockstore-web-cache.misses-bitbucket-tests-0.log | grep api.bitbucket.org | grep dockstore_testuser2 | wc -l
101


TextBox Watermark not showing

                <TextBlock FontSize="14" VerticalAlignment="Center" x:Name="labPower" Text="Power:" Grid.Row="2"
                           Margin="0,0,5,0" />
                <TextBox FontSize="10" Grid.Row="2" Grid.Column="1" Watermark="0 - 255"
                         x:Name="txtPower" Width="100" FontWeight="Bold" />

happens on Windows and Linux
repo with code: https://github.com/AzyIsCool/HATE

Have you tried setting Foreground to black?

Not until now but still no luck.

This is happening because you're setting TextBlock.Foreground to White in this style:
https://github.com/AzyIsCool/HATE/blob/fef8d482c5ea2f32b35eeeac8d42a11f47cdb5ca/HATE/MainWindow.xaml#L13
This isn't a good idea. TextBlock is a primitive by which all text in an Avalonia application is drawn, including TextBox's watermark.
If you want to set the foreground for the window to white, just set Foreground="White" on the Window, e.g.:
<Window xmlns="https://github.com/avaloniaui"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Foreground="White">

Ah thanks, forgot that Foreground was in Window and I was so used to doing it that way from WPF


Arcball & Free Cameras update aspect ratio

Allow the aspect ratio to be updated and a new projection matrix be computed.  This is to be used when the window gets resized.

Same for field of view.

Made obsolete from #36


The suggestion bar will not disappear in editor mode (legacy mode)

If the new live preview version does not work well with the legacy mode. Is it possible that the user can select which version to use in the plugin setting?

Hmm, I didn't change anything regarding the new Editor.
Can you send a Screenshot of your problem?

Hmm, I didn't change anything regarding the new Editor. Can you send a Screenshot of your problem?

Well, It turns out to be a problem with the natural language date plugin's bug. Once I disable its suggestion menu function, the emoji shortcut plugin works just fine. Thanks


Feature/4 18 paging support and query builder

Closes issues #4 and #18
Replaces the two old PRs #17 #19 (easier to maintain one PR)

Re UTF-8 vs. ISO-8859 encoding: It’s actually hard to get simple definitive answers on that question …
RFC-3988 mentions UTF-8, but according to Wikipedia, it is only applicable to URI schemes introduced after ~2005 8which HTTP clearly isn't). On the other hand, the JavaScript method encodeURIComponent() that you typically use to encode values for URL parameters uses the UTF-8 encoding. So I guess at least these days it's safe/recommended to use UTF-8 for URL parameters.
Headers in general are ISO-8859-1, but the value for the Authorization header is always ISO-8859-1 (even plain ASCII) for basic authentication, as we're using a BASE64 encoder to create that ASCII string. The problem I guess is more the value that we pass to the Base64 encoder (either the user name or the password) - I think AEM will interpret it as UTF-8, and therefore we probably should use UTF-8 there as well.
Ideally we can quickly check it with a query that takes a parameter with a non-ASCII character that's different in ISO-8859-1 and UTF-8 and see if it works. Same for a user name or password that contains such characters.

So I guess at least these days it's safe/recommended to use UTF-8 for URL parameters.

I also found https://www.w3.org/TR/html40/appendix/notes.html#non-ascii-chars that recommends using UTF-8 for URL parameters.

Headers in general are ISO-8859-1, but the value for the Authorization header is always ISO-8859-1 (even plain ASCII) for basic authentication, as we're using a BASE64 encoder to create that ASCII string. The problem I guess is more the value that we pass to the Base64 encoder (either the user name or the password) - I think AEM will interpret it as UTF-8, and therefore we probably should use UTF-8 there as well.

After digging deeper into this I found that Sling uses ISO-8859-1 for decoding the password.
https://github.com/apache/sling-org-apache-sling-auth-core/blob/eb8be45e93e35d969302d4c671f2b092aed22791/src/main/java/org/apache/sling/auth/core/impl/HttpBasicAuthenticationHandler.java#L334
With this code on the server, there is no way to get passwords with non-ISO-8859-1 character working I suppose (I tested e.g. with test-智)

Improved the encoding in d7492dc8114a9f


Add ADR-001 for Dutch Auctions

Describe your changes
This creates a new folder for storing architecture design records, as part of our documentation. This adds the recent Dutch Auction design description here. This should encourage people to write more of them as there's a clear place to put them now.
Checklist before requesting a review

[x] If this code contains consensus-breaking changes, I have added the "consensus-breaking" label. Otherwise, I declare my belief that there are not consensus-breaking changes, for the following reason:

Just documentation.

Out of band, we've discussed storing ADRs in a separate repo, or even appending directly to the protocol docs. FWIW, I agree with the very simple approach here: just stick them in their own directory. At any point in the future, we can wrangle the files elsewhere.

Can we call these PADR or something so they're not confused with cosmos ADRS?

Can we call these PADR or something so they're not confused with cosmos ADRS?

Addressed


Horizontal List

Is it posible to have an horizontal list

https://react-window.now.sh/#/examples/list/fixed-size

@TrySound thanks! but that library does not support smooth scroll to index.

any update on this?

Would love an out of the box solution. I'm going to try the Grid component

So I'm happy to say this works!
Simply use Grid with one row :)


Allow array as selected values in search results

This change does two things. First, if the selected value is an array, it doesn't coerce it to a string (and as a result doesn't highlight it, either).
Secondly, if any component in the selected path results in array, the rest of the path is spread over the array value. To explain:
Data: { "variants": [ { "name": "red" }, { "name": "blue" } ] }
Path: "variants.name"
Result: [ "red", "blue" ]
This makes it much simpler to select array values, and the behavior without this change is that the result would have been "[object Object]".

@CGamesPlay I tried out this in Splainer, and I notice that now I get all the items in an array concatenated.   So my Result field would have: redblue.   Wondering if the fix is to add a space or a comma on the obj.map command?   Not totally sure.   This is definitly much nicer than [object Object] everywhere.

I'm pushing this up to http://splainer.io right now, just to get some feedback.

I'm guessing that's because que-is is converting the array into a string. If you accept the code that uses json-explorer, it will look better.
Note: if you select an array of objects, you're definitely not going to want it to be a single string value.


Unable to swap deployment on OpenShift

What were you trying to do?
I was following the guide at https://www.telepresence.io/tutorials/docker, and the traceback occurred when I ran the step to swap the deployment - telepresence --swap-deployment qotm --docker-run --rm -it -v $(pwd):/service qotm-dev:latest
What did you expect to happen?
I was expected the swap to happen :)
What happened instead?
Command line: ['/usr/bin/telepresence', '--swap-deployment', 'qotm', '--docker-run', '--rm', '-it', '-v', '/home/concaf/telepresence/qotm:/service', 'qotm-dev:latest']
Version: 0.81
Python version: 3.6.4 (default, Mar 13 2018, 18:18:20)  [GCC 7.3.1 20180303 (Red Hat 7.3.1-5)]
kubectl version: Client Version: v1.9.0 // Server Version: v1.7.6+a08f5eeb62
oc version: oc v3.7.1+ab0f056 // kubernetes v1.7.6+a08f5eeb62 // features: Basic-Auth GSSAPI Kerberos SPNEGO //  // Server https://<IP_ADDRESS>:8443 // openshift v3.7.2+5eda3fa-5 // kubernetes v1.7.6+a08f5eeb62
OS: Linux containscafeine 4.15.14-300.fc27.x86_64 #1 SMP Thu Mar 29 16:13:44 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux
Traceback:
Traceback (most recent call last):
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/cli.py", line 74, in call_f
    return f(*args, **kwargs)
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/main.py", line 494, in go_too
    runner, args
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/main.py", line 277, in start_proxy
    swap_deployment_openshift(runner, args)
  File "/usr/share/telepresence/libexec/lib64/python3.6/site-packages/telepresence/deployment.py", line 252, in swap_deployment_openshift
    )[0].split("/", 1)[1]
IndexError: list index out of range

Logs:
 Context: telepresence/192-168-42-188:8443/system:admin, namespace: telepresence, kubectl_command: oc
   0.1 TEL | [4] Capturing: minishift ip
   0.3 TEL | Looks like we're in a local VM, e.g. minikube.
   0.3 TEL | [5] Capturing: oc --context telepresence/192-168-42-188:8443/system:admin status
   0.3   1 | Client Version: v1.9.0
   0.3   1 | Server Version: v1.7.6+a08f5eeb62
   0.4   2 | oc v3.7.1+ab0f056
   0.4   2 | kubernetes v1.7.6+a08f5eeb62
   0.4   2 | features: Basic-Auth GSSAPI Kerberos SPNEGO
   0.4   2 |
   0.4   2 | Server https://<IP_ADDRESS>:8443
   0.4   2 | openshift v3.7.2+5eda3fa-5
   0.4   2 | kubernetes v1.7.6+a08f5eeb62
   0.6 TEL | [6] Capturing: ssh -V
   0.6 TEL | [7] Capturing: which torsocks
   0.6 TEL | [8] Capturing: which sshfs
   0.6 TEL | BEGIN SPAN main.py:232(start_proxy)
   0.6 TEL | [9] Capturing: oc --context telepresence/192-168-42-188:8443/system:admin --namespace telepresence get rc -o name --selector openshift.io/deployment-config.name=qotm

When we fix this, let's also update the swap-deployment methodology to be consistent with that under Kubernetes, i.e. PR #605 prompted by issue #575.


scRNA-seq rapmap --selAln option

I am running scRNA-seq pipeline with rapmap and get the following message. It seems that selAln option is not turned on for rapmap. I wonder whether it should not be turned on for rapmap or this can be turned on in configuration file?
Message:
NOTE: It appears you are running rapmap without the selective-alignment (--selAln) option.
Selective alignment can generally improve both the sensitivity and specificity of mapping, with only a moderate increase in use of computational resources. Unless there is a specific reason to do this (e.g. testing on clean simulated data), --selAln is generally recommended.

Hi Zhicheng,
There's a couple of new flags in RapMap/Salmon that we haven't investigated the effects of setting yet, so we haven't done it. The setting seems innocuous from that message, but if you look through the Salmon/Rapmap docs there are a bunch of parameters that control that setting so it might not be as straightforward as the message suggests. It's on our list of things to look at-- we could use help investigating it. If you compare with and without that setting we'd love to know.

Thanks!


Special Use for DiscordJS

Hi,
I just found ur work that is exactly what i was looking for.
Actually im working for a huge project that's on Discord and would use some character generator as you presented.
I just look at your documentation but i don't think that can be use on Discord right ?
I wanted to know if there's any way to generate an image (or a link) that i can use to display the image, because on Discord i can't precise an HTML element.
Thank you so much.
Have a great day

Currently faces.js is designed to be used in a website, but a modified version of https://github.com/zengm-games/facesjs/blob/master/src/display.ts could output an SVG file. Or you could use do something like https://playwright.dev/docs/screenshots and use faces.js without modification.
I've never written a Discord bot, but I imagine you could either send an image directly to Discord, or maybe you'd have to upload it to some intermediate server and link to it.


Download  YouTube_highway_demo.bag！！！

if I want to download  YouTube_highway_demo.bag，some errors while happened like this：

How to fix these problem？

#6

#6


feat: propagate client-side-cached-but-not-server custom 0 TTL to CDN

Untested! But saw the conversation in Slack.

@joeyAghion - this behaves the same as before, with redis: with serverCacheTTL: 0 the desired behavior was indeed to apply to any query keyed by that route to not cache -- because we don't want things to cache on those routes! So this seems correct (or rather, correct in the sense of the original design).


Implement new version/dynamic fetching for Internet-Drafts

The Internet-Drafts dataset is the special dataset that combines serving from both bulk loaded data with the latest data coming straight from datatracker.ietf.org.
datatracker.ietf.org is the authoritative source of the data. The bulk data the BibXML services loads is from a periodic export from datatracker.
There are two types of references that are served by the service:

Unversioned Reference pattern: draft-{example-name}. This is in fact a redirect reference to the draft of the highest draft-number number.
Versioned Reference pattern: draft-{example-name}-{draft-number}. The {draft-number} is a two-digit sequential integer, starting from 00 or 01 incrementally.

For the Versioned Reference pattern (given draft-{example-name}-{draft-number}), the operating mode is:

If the bulk Internet-Drafts dataset contains draft-{example-name}-{draft-number}, return it and done.
If the bulk Internet-Drafts dataset does not contain draft-{example-name}-{draft-number}, then it means that datatracker.ietf.org may have a new draft number or the draft did not exist in the bulk dataset. The BibXML Service should then contact datatracker.ietf.org to load draft-{example-name}-{draft-number}.

If datatracker returns with data, then we cache the entry by entering it into our database, and return this.
If datatracker does not have this draft, it means that the draft does not exist. We return an error.

For the Unversioned Reference pattern (given draft-{example-name}), the operating mode is:

We cannot know whether the draft-{example-name}-{draft-number} items we have are actually the newest.
We will have to proxy the request to datatracker.ietf.org every single time.
There may not be any point in caching this because again, we can never know. It would be better to err on the side of accuracy.

I’m currently addressing this the following way:

Changing the behavior for citation retrieval API and GUI so that, when citation is requested by document ID, external sources are also checked

The logic is 1) check internal sources, 2) check external sources, 3) merge citation data from all sources and display the result
Since (2) may take time,

In web GUI, (2) and (3) will happen client-side after the initial page is loaded
In API, requesters can specify a flag they are willing to wait for external sources (without this flag, API work faster but will only return results from indexed sources)

Adding Datatracker as an external source (like to DOI)
External source definition for Datatracker will support unversioned drafts

This means:

If we have a request for unversioned draft, BibXML service will not find an indexed citation
However, BibXML will be able to discover it after it calls Datatracker API

@ronaldtse As we use Relaton as internal citation data model, do we have a way of converting Datatracker output to Relaton? This can be a tiny Python library with minimal API—take a structure as returned by Datatracker, and convert it to Relaton; all self-contained, no need to handle HTTP requests at this point, BibXML will do that. If no one is on it, I can deal with that (in that case I’d appreciate some pointers to Datatracker API spec).

As we use Relaton as internal citation data model, do we have a way of converting Datatracker output to Relaton?

Yes, I believe @CAMOBAP has already done this in Python:

Relaton to BibXML format (Datatracker uses the BibXML format)
BibXML format to Relaton

Adding Datatracker as an external source (like DOI)

I don't object to this, but eventually treating Datatracker as DOI/Crossref is problematic.

DOI/Crossref will 100% flag us for traffic, and in our experience, goes down quite often.
Datatracker is "on our side" and will always be accessible (when it is available).

I wonder if one way to facilitate the check for the "latest draft version" is to have a new Datatracker API that just returns the "latest draft version".

e.g. If I request from datatracker.ietf.org/drafts/draft-xxx, I get the latest information on the draft version of xxx is (e.g. xxx-NN). Then if BibXML Service has already cached xxx-NN, we don't need a subsequent fetch, and that caching will be more effective. This will ease the load on Datatracker.

I wonder if one way to facilitate the check for the "latest draft version" is to have a new Datatracker API that just returns the "latest draft version".

What if published draft version is changed and our index has stale data? I can’t recall if this can happen.

Datatracker uses the BibXML format

Does it use BibXML format? This looks quite different from what we have in our BibXML data repositories: https://datatracker.ietf.org/api/v1/doc/state/?format=bibxml&limit=0&type__slug__in=draft-rfceditor

@strogonoff you're right! Don't know why I thought Datatracker used the BibXML format.
So... this is to be done using relaton-bib-py then (the Datatracker format => Relaton format conversion)?

IMO it could be least friction to just implement a quick converter from Datatracker JSON to Relaton as part of BibXML service itself and later split it out into its own package or included into relaton-bib-py.

This works for xml2rfc-style API already (see xml2rfc_compat.fetchers.internet_drafts() logic).
For main API, Datatracker should be queried by default only if requested document is not found (and request specifies correct doctype of “Internet-Draft”).
For GUI, this is not implemented yet. The original idea was to augment client-side part for item search and item details pages: query service API client-side and augment displayed data with new  results, if any.


Yellow Verified Button

Hello, I have a small bug, I have to put my mouse on the yellow verified button on the pages that are verified so that it is displayed perfectly.

Thanks

Tweak New Twitter shouldn't be touching these at all - is this still happening?

I still have the problem. I am looking for the source of the problem


If wait_for_port timeouts, the deploy says "done" to the user

This makes scripting extremely hard.

I think this (and other deploy tracking problems) could be solved if deploy returns "deployment id" or similar which can be polled.
/cc @nevalla @jnummelin

And deployment object should include reason for failure ...

Similar situations where "done" is said include (but not limited to) "could not find suitable node for placement", "command not set for container" ...
There should be multiple statuses given for the cli: "agent started deploy on node N", "agent pulling image from cristofferhh/ikea:latest", "image pulled", "container starting with command/entrypoint", "waiting for port to bind..."
etc. User/cli could then set the verbosity level. Personally I've seen deploys failing on so many different phases that I'd vote for max verbosity on the progress.

On 19 Sep 2016, at 18.42, Jari Kolehmainen<EMAIL_ADDRESS>wrote:
And deployment object should include reason for failure ...
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.

I like the idea of having traceable deployment object. Maybe like @matti proposes so that there can be N number of "events" relating to the deployment which could be streamed from CLI during the deployment process.

This can now be closed?


Brainstorm name of package

snakebox is taken on pypi.
Let's come up with another name, @grabear! lol

lol Ok.  What about these?
snaker
snaked
snakes
snaketools
snakeaid
snakeutils
snakepack
snakebag
snakekans
snaks
ouroboros
uroboros
Which leads to words like dragon or serpent..
We could also do something like dstools, but I think that was the one I was making fun of the other day.
Or dsutils, dsbox...

I love for snakeutils yassss  lol

Just to reserve it:
https://pypi.org/project/snakeutils/

@grabear add me! lol My name is sdhutchins.

@sdhutchins done.  You're an owner on PyPI now.


UX Minutia

Some more edits:

in address book, 'name' 'address' table capitalization
can remove 'Send status:' in messages (it can just show the status as colored text, no label needed), and capitalize 'Send Message'
capitalizations in the titlebar
Remove '...' from dialog titles (and Title Capitalize)
'Message to send as' can be switched for 'Sending as Identity: ___'
Message placeholder text 'Message...'
titles 'Conversation ...' and 'Contact list:' can be unitalicized and bolded
typo 'posisble' in Messaging -> Options... in titlebar, also 'Save & close' -> 'Save & Close'

All resolved.


not compatible with Ivy

ERROR in node_modules/ngx-tethys/module.d.ts:2:22 - error NG6002: Appears in the NgModule.imports of AppModule, but could not be resolved to an NgModule class.

This likely means that the library (ngx-tethys) which declares NgxTethysModule has not been processed correctly by ngcc, or is not compatible with Angular Ivy. Check if a newer version of the library is available, and update if so. Also consider checking with the library's authors to see if the library is expected to be compatible with Ivy.

2 export declare class NgxTethysModule {
                           ~~~~~~~~~~~~~~~

will ngx-tethys support lvy in the future?

I suggest you do not use this component library, It's just public repo right now,  currently customized for worktile.com, thank you for feedback.
Ivy has no specific schedule.

There is a long way to open source.

fixed


Add GNS3.app v1.3.11

Network simulator software similar to packet tracer. http://gns3.com

Thank you for the contribution. It was merged directly as d31d00ab38a75d2326229fa3b1c6a128d1dfc27a to keep commit history cleaner. Your contribution is still credited to you.


feat(types): Add gRPC Richer Error Model support (Examples)

Motivation
The gRPC Richer Error Model is quite useful to send additional feedback to clients, and is supported by many gRPC libraries in other languages.
Solution
This PR continues the work initiated in #1068, building on the changes made in #1295. It adds examples that show how to implement the richer error model using tonic-types.

Thanks! I will start working on the last PR of this series!


CC49774: Update using-gulp.md #54

Hello, @rick-anderson,
This proposed file change comes from this Community Contribution: https://github.com/aspnet/Docs.fr-fr/pull/54/
Please, help to check this proposed file change into the article and help to merge if you agree with fix. If not, please, let me know either if you would like me to fix it in another way within this PR, if you prefer to fix it in another PR or if I should close this PR as by-design. In case of using another PR, please, let me know of your PR number, so we can confirm and close this PR.
Many thanks in advance.
When creating a new PR, please do the following and delete this template text:

Reference the issue number if there is one:
Fixes #Issue_Number

The "Fixes #nnn" syntax in the PR description causes
GitHub to automatically close the issue when this PR is merged.

@carolinacmoravia We appreciate the PR; however, the original version of this doc reads better. For that reason, I'm closing this PR.


Bug: Responsive stat component not functional with CDN import

Current behaviour
Tailwind breakpoints do not seem to apply to the responsive stat classes when Daisy and Tailwind are imported via CDN.
An MWE using the example component from the documentation with some added margin:

  <meta charset="UTF-8" />
  <meta name="viewport" content="width=devide-width, initial-scale=1.0" />
  <link<EMAIL_ADDRESS>rel="stylesheet" type="text/css" />

Downloads

31K

Jan 1st - Feb 1st

New Users

4,200

↗ 400 (22%)

New Registers

1,200

↘ 90 (14%)

This stat component is displayed vertically regardless of the size of the window.
Tested on several browsers (Firefox, Edge, and Chrome).
Expected behaviour
The component works as expected in Tailwind Play.
That is, horizontal for large screens and vertical otherwise.
Other
I noted that #807 looks like a similar issue for a different component.

Yea, this is definitely the CDN build issue.
It's a simple fix so I did a PR to fix this issue.

Ah, I forgot to mention @saadeghi I have worked into this issue, I'm sorry for skipping the contribution guideline.
I did make a PR in #1211 regarding this issue.

Fixed in 2.36.1
Thank you @NikarashiHatsu


Base Sets

Objective
NOTE: This depends on #7267 and should not be merged until #7267 is merged. If you are reviewing this before that is merged, I highly recommend viewing the Base Sets commit instead of trying to find my changes amongst those from #7267.
"Default sets" as described by the Stageless RFC have some unfortunate consequences.
Solution
This adds "base sets" as a variant of SystemSet:
A set is a "base set" if SystemSet::is_base returns true. Typically this will be opted-in to using the SystemSet derive:
#[derive(SystemSet, Clone, Hash, Debug, PartialEq, Eq)]
#[system_set(base)]
enum MyBaseSet {
  A,
  B,
}

Base sets are exclusive: a system can belong to at most one "base set". Adding a system to more than one will result in an error. When possible we fail immediately during system-config-time with a nice file + line number. For the more nested graph-ey cases, this will fail at the final schedule build.
Base sets cannot belong to other sets: this is where the word "base" comes from
Systems and Sets can only be added to base sets using in_base_set. Calling in_set with a base set will fail. As will calling in_base_set with a normal set.
app.add_system(foo.in_base_set(MyBaseSet::A))
       // X must be a normal set ... base sets cannot be added to base sets
       .configure_set(X.in_base_set(MyBaseSet::A))

Base sets can still be configured like normal sets:
app.add_system(MyBaseSet::B.after(MyBaseSet::Ap))

The primary use case for base sets is enabling a "default base set":
schedule.set_default_base_set(CoreSet::Update)
  // this will belong to CoreSet::Update by default
  .add_system(foo)
  // this will override the default base set with PostUpdate
  .add_system(bar.in_base_set(CoreSet::PostUpdate))

This allows us to build apis that work by default in the standard Bevy style. This is a rough analog to the "default stage" model, but it use the new "stageless sets" model instead, with all of the ordering flexibility (including exclusive systems) that it provides.

Changelog

Added "base sets" and ported CoreSet to use them.

Migration Guide
TODO

bors r+

Is it possible to unify in_base_set with in_set?

bors r+

Is it possible to unify in_base_set with in_set?

In theory yes (it actually would have been much easier to just do that). In practice in_base_set exists solely to avoid implicit behavior and ensure users are actually thinking about base sets. Base sets and sets have different membership rules (default base sets can be overridden and base sets are exclusive, normal sets are not overwritten and are not exclusive). A good chunk of us think hiding this would be a mistake.

bors r+


Document $edit:abbr

The CLI abbreviation expansion feature isn't documented. You can create abbreviations via statements such as edit:abbr['l '] = 'less ' or edit:abbr[gcp] = 'git cherry-pick -x'. Abbreviations are sometimes preferable to a function of the same name for several reasons:

You might want to modify the expanded text before executing it.

You want the expanded text to appear in the command history.

You want a visual reminder of what will be executed by typing a cryptic shortcut like gcm.

You only want the shortcut to be available at an interactive prompt, not as a function that can be used in elvish scripts, to avoid potential problems.

The existing behavior isn't optimal, IMHO, but let's start by documenting it so people are aware it exists and know how to use it.

Note that what Elvish calls "abbreviations" are known as "aliases" in Bash. With several caveats such as bash, optionally, enabling expansion in non-interactive contexts (see shopt expand_aliases).

@krader1961 I don't agree that abbreviations and bash aliases are equivalent, since abbreviations expand automatically regardless of where they are typed in the command line, not only in the command position. The alias module implements a wrapper to provide a "traditional alias" functionality, which simply defines functions behind the scenes.

@zzamboni, Yes and no. Bash aliases are not functions. They result in a simple text substitution. They also allow expansion after the command position if the alias expansion ends in a space. When people switch from bash to fish they see that fish has an alias command and assume it implements the same behavior as the bash feature of the same name. Which results in confusion when they realize it isn't the same thing. Back when I used, and contributed to, fish it seemed like 98% of the time that a confused user opened an issue on this topic they were told to use an abbreviation instead.
My biggest complaint about the elvish abbreviation mechanism is that it isn't limited to expansion in the command position; at least by default.

My biggest complaint about the elvish abbreviation mechanism is that it isn't limited to expansion in the command position; at least by default.

Well, because abbreviations are not modeled after aliases, they are modeled after abbreviations in word processing software :)

Well, because abbreviations are not modeled after aliases, they are modeled after abbreviations in word processing software :)

Understood. But most users will expect the alias/abbr to only be substituted in the "command" position. Consider something like edit:abbr['l '] = 'less '. The Intent is to make it possible to type l /some/file and have that translated to 'less /some/filewithout the second lexpanded toless`.

@krader1961 you keep mentioning alias/abbr as if they are equivalent, but I think they are two fundamentally different mechanisms in Elvish. What in other shells is known as "aliases" are in Elvish simply functions, and are implemented as such by modules like alias. Whether such an "easy function definition" mechanism should be built into Elvish is a separate question, I think.
But the abbreviation mechanism is mean to provide a simple "text expansion" mechanism. I agree you can "abuse" it to implement alias-like function mappings, but even with the space, the potential for mistaken expansion remains.
I agree the abbr mechanism needs to be properly documented, but we should not try to make it into an alias functionality, as this will only cause confusion.

@zzamboni I think there is some confusion because in elvish (and fish) an "alias" is a simple function. But in POSIX shells like bash an alias is not a function -- it is a simple substitution of the alias with an arbitrary string which can include shell meta-chars (e.g., "|"). But limited to the "command" position in a statement.
Elvish definitely should not, ever, implement something like the horrible hack that is the POSIX "alias" command. Functions and text abbreviations are sufficient and much cleaner. My point is that it should be possible to limit abbreviation expansion to the "command" position in a statement. If I want an abbreviation such as l => less I shouldn't have to resort to a function. The whole point is that I want less to appear in my command history regardless whether I use the abbreviation or type the full command name. Similarly, with something like gcp => git cherry-pick -x I want the expansion to appear on the command line so I can backspace over the -x if it isn't appropriate. If I make gcp a function I can't do that.

Consider the following fish abbreviation definitions that I've been using for several years:
abbr -a -g -- gc 'git commit'
abbr -a -g -- gca 'git commit --amend'

This works because the expansion only occurs when the user types a space, |, or presses [enter]. But the Elvish abbreviation model means that the gca abbreviation cannot be used. At least not without including a space in the abbreviation definition. But that means you can't simply type gc or gca followed by [enter]. I'm sure there are good uses of the current Elvish behavior so I'm not proposing making that behavior impossible to use.
Note that Vim abbreviations are only expanded when the abbreviation is followed by punctuation such as a space or comma. As well as pressing [esc] to exit insert mode or pressing [enter]. That is arguably a superior model to the one used by fish. In fish I can type gc| and my gc abbreviation will be expanded. But typing gc, does not expand my abbreviation. I would argue it should expand when the comma is typed if we're going to use the "modeled after abbreviations in word processing software" definition.

Consider another example. I have a fish abbreviation that converts - => cd -. I've never had a problem using that in fish because abbreviations are only expanded in the command position in that shell. That is yet another example for why supporting, if not making abbreviation expansion only occur in the "command position" by default, is useful.

@krader1961
It has been my design intention to let abbreviations expands anywhere. I have the following in my rc.elv:
edit:abbr = [
  &'>!'= '> /dev/null'
  &'||'= '| less'
  &//ul= '/usr/local'
]

None of them is a command alias; I depend on the fact that they expand everywhere.
Command aliases are best implemented by defining a function, as @zzamboni pointed out.
I can see a possible argument in favor of using an abbreviation-like mechanism for aliases though: you may want to type gc but get git commit in the history, to make it easier to (for example) search for all git commands. I'm open to such a feature request if that's what you need.
Overall, it's counter-productive to insist that an Elvish feature must be a 1:1 replacement for a feature in another shell - Elvish has its own way of combining features, and let's focus on discussing how something should work with other parts of Elvish, rather than how it works elsewhere :)

@xiaq, I did not mean to imply that Elvish should behave exactly like a different shell. For example, the fish project has seen many requests to allow abbreviation expansion in other than the command position. My point was that fish's behavior at the time I stopped tracking its releases (just prior to fish 3.0) appeared to satisfy the expectations of the vast majority its users; including myself.
I think the Elvish abbreviation implementation would address my concerns if it only did the expansion when a non-word character was typed. That would be consistent with how abbreviations in Emacs and Vim work. That would probably also make it unnecessary to implement an option that limits the expansion to the "command position" of a statement. Which would be considerably simpler to implement and document.

you may want to type gc but get git commit in the history, to make it easier to (for example) search for all git commands.

Yes, precisely. If I use the abbreviation, or type the expansion, I want to be able to search for the expansion in the history regardless whether or not I initially typed the abbreviation. Not to mention seeing the expansion on the command line so that it is quite obvious what will be run. Also, so that I can modify the expansion. Such as removing the -x token from the expansion of my gcp => git cherrypick -x abbreviation. In this case I want the -x option to be visible to remind me that cherry-picking a change should normally include the commit ID of the change in the current branch.


All Calls not visible under Requests -> Show All tab for Newman Iteration Requests

Describe the bug
Under The Requests -> Show All tab, only Two Request are visible for Iteration Calls ( I did 3000 Iterations for collection of 2 calls)
Similarly Many Details are missing for the ouput.
To Reproduce
Steps to reproduce the behavior:
Do a Newman Execution with Iterations for a collection having multiple API calls
Expected behavior
As for normal newman execution, Details for all the calls be it in Iteration should be visible clearly.
Screenshots

Hello @guptarajatkn it's a huge problem, but when i investigate this, i discovered that is the default behavior of the newman and not an error in my template, therefore unfortunately i can't fix it.


Installation problem

I am using windows Os now how to use these commands? i have tried middleman from gitshell windows and it gives below error!!Also bundle install is not working how to make these things work?
middleman : The term 'middleman' is not recognized as the name of a cmdlet, function, script file, or operable
program. Check the spelling of the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:1

middleman build

  + CategoryInfo          : ObjectNotFound: (middleman:String) [], CommandNotFoundException
  + FullyQualifiedErrorId : CommandNotFoundException

middleman build

Do you already have Ruby and Bundler installed?
For Window OS, you can get:

RubyInstaller at http://rubyinstaller.org/
Bundler at http://bundler.io/

You can find HTML code at https://github.com/lab2023/hierapolis/tree/gh-pages gh-pages branch.


what does $z_t$ refer to in formulas (1) and (3)

The paper primarily draws inspiration from the ControlNet framework to incorporate reference image information and motion pose sequence information into the training and inference processes of a diffusion model. However, there is a question regarding the meaning of the variable $z_t$ in formulas (1) and (3) in the paper. During the training process, the only observable elements from Figure 2 are the random noises $z_0^{1:K}={z_0^1, z_0^2, \cdots z_0^K}$.
At $t=0$, in formulas (1) and (3), $z_t$ is one of the elements in $z_0^{1:K}={z_0^1, z_0^2, \cdots z_0^K}$, which is also not explained coherently.

Hi, thanks for your interest. Because our appearance encoder and controlnet do not contain temporal modeling, in formulas (1) and (3), $z_t$ represents one frame. But our complete framework predicts noise for 16 frames, therefore Figure 2 depicts the latents for 16-frame video clip, that is $z_0^{1:K}$.


Add Jest to CI/CD pipeline

Description

Jest coverage reports should be sent over to code climate so that it can assess what files are covered by tests, to what degree, as well as how maintainable the files are.
Possible Implementation

This entails running the Jest suite within our pipeline and generating a clover coverage report that is then passed to CodeClimate
Out of scope

N/a
Requirements / Restrictions

Coverage report must provide data to Code Climate

Actually @RobertoNittolo can you take care of this one? i probably have to many points this sprint

Actually @RobertoNittolo can you take care of this one? I probably have too many points this sprint

Yes, I can take care of this no problem!

Looks like #82 didn't actually solve this :( Re-opening !


proper collision system across based on the model

Remove the hard-coded if else statement and use the model skeleton to determine the area it is allowed in and collision

can you assign me this issue, It is something new and I want to contribute to it

Sure, you can fork it and contribute
You can use some already provided library or use the basic maths, upto you


DOC: Add GitHub Desktop Contribution Instructions

What's wrong with the existing documentation
I am interested in contributing to the project by adding detailed instructions on how to contribute using GitHub Desktop.
I believe that by providing clear and comprehensive guidance, we can encourage more contributors to participate in the project, especially those who prefer using GitHub Desktop for their contributions.
Could you please assign me the issue related to adding GitHub Desktop contribution instructions under gssoc24? I am excited about the opportunity to contribute to the project and help streamline the contribution process for others.
Add ScreenShots
No response
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

You are assigned @PradnyaGaitonde  ✔

Create detailed instructions with screenshots on how to contribute from GitHub Desktop, and highlight with a red marker square box so that new contributors don't get stuck anywhere.


[FLINK-20621][python] Refactor the TypeInformation implementation in Python DataStream API.

What is the purpose of the change
Currently, when users declare a TypeInfo in Python DataStream job it will create a Java TypeInfo instance when instantiating. We should make it in a lazy style that creates the Java TypeInfo instance only when calling TypeInformation.get_java_type_info().
Brief change log

Removed WrapperTypeInfo
No need to create Java TypeInfo in Python TypeInfo constructor

Verifying this change
This change has test case covered by all existing IT cases.
Does this pull request potentially affect one of the following parts:

Dependencies (does it add or upgrade a dependency): ( no)
The public API, i.e., is any changed class annotated with @Public(Evolving): (no)
The serializers: (no)
The runtime per-record code paths (performance sensitive): (no)
Anything that affects deployment or recovery: JobManager (and its components), Checkpointing, Kubernetes/Yarn/Mesos, ZooKeeper: (no)
The S3 file system connector: (no)

Documentation

Does this pull request introduce a new feature? (no)
If yes, how is the feature documented? ( not documented)

@flinkbot run azure

Hi @dianfu , Thank you for reviewing. I have addressed the suggestions you gave and refactor the proto of the TypeInfo. Please have a look.

@flinkbot run azure

@flinkbot run azure


have problem with character "-" when convert html to canvas

i'm have a problem when convert html to canvas when in string have a "-" symbol.
html : http://take.ms/yg3BT
canvas : http://take.ms/0yJb9
it's working fine in other case:
html : http://take.ms/jnBSh
canvas : http://take.ms/JYiO3
structure html/css of two cases it's same code.
Thanks.

Have the same issue, still no info or workarounds?

Well, maybe this would be useful. Described problem occurs only when we have whitespace before the minus symbol. I.e. "-1" renders fine, while minus in " -1" overlaps following symbols

using letterRendering: true fixed this for me

Is this still an issue with v1.0.0? If so, could you please share an example on jsfiddle.


[main] Upgrade to latest dependencies

Cron -knative-prow-robot
/cc knative-sandbox/eventing-writers lberk
/assign knative-sandbox/eventing-writers lberk
Produced by: knative-sandbox/knobots/actions/update-deps
Details:
bumping knative.dev/eventing 16771b5...91e8838:
  > 91e8838 use latest ce SDK (# 6557)
  > 57eb56d upgrade to latest dependencies (# 6556)
  > abe0a57 Using HorizontalPodAutoscaler v2 (# 6549)
  > 7527528 Very soon we will have minVersion of 1.23, see: https://github.com/knative/pkg/pull/2595/files (# 6548)
bumping knative.dev/hack 0198902...b3c9790:
  > b3c9790 Notarize Mac binaries (# 231)
bumping knative.dev/pkg 2b8e4ad...158538c:
  > 158538c upgrade to latest dependencies (# 2603)
  > 7c4fef1 upgrade to latest dependencies (# 2593)

/lgtm
/approve


Add two action: check usage and get edgenode to Azure CDN

This checklist is used to make sure that common issues in a pull request are addressed. This will expedite the process of getting your pull request merged and avoid extra work on your part to fix issues discovered during the review process.
PR information

[x] The title of the PR is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For information on cleaning up the commits in your pull request, see this page.
[x] Except for special cases involving multiple contributors, the PR is started from a fork of the main repository, not a branch.
[x] If applicable, the PR references the bug/issue that it fixes.
[x] Swagger files are correctly named (e.g. the api-version in the path should match the api-version in the spec).

Quality of Swagger

[x] I have read the contribution guidelines.
[x] My spec meets the review criteria:

[x] The spec conforms to the Swagger 2.0 specification.
[x] Validation errors from the Linter extension for VS Code have all been fixed for this spec. (Note: for large, previously checked in specs, there will likely be many errors shown. Please contact our team so we can set a timeframe for fixing these errors if your PR is not going to address them).
[x] The spec follows the patterns described in the Swagger good patterns document unless the service API makes this impossible.

LGTM. should be merged once the CI passes.

No modification for NodeJS

No modification for Python

 https://github.com/Azure/azure-sdk-for-ruby/pull/618


[BUG] - Double clicking to edit a prompt or response often opens the wrong one.

Description
This has been happening for quite a long time. January at least.
Double click to edit the bot / user message (I do this a lot)
A different message opens in editor.
I can't see a pattern for when it does / doesn't happen yet.
Other symptoms of potentially same bug:
In the editor for a prompt, (not the input), often typing or pasting doesn't do anything.
Generally exiting the prompt editor and coming back in fixes it.
Often I need to go to a different part of the same prompt, add some new lines and a few characters, then delete them, then it will let me freely edit again
Device and browser
macOS Sonoma 14.3.0
Screenshots and more
Will try to catch it!
Willingness to Contribute

[ ] 🙋♂ Yes, I would like to contribute a fix.

I also edit a lot the history @agdfoster . There's a full new rewrite of the message editing in the making. Already landed on the feature-multipart branch, but don't use it yet, it's in big flux.

Closing as the new editing experience will bring this for free.


Swift Package Manager requires Package.swift

Spinning up a new project (using XCode8-Beta4, Apple Swift version 3.0 (swiftlang-8<IP_ADDRESS> clang-800.0.36)) requires a non-empty Package.swift file.
⇒  swift build
warning: refname '0.6.1' is ambiguous.
warning: refname '0.6.1' is ambiguous.
HEAD is now at 62dca49 Merge pull request #10 from neonichu/linux-support
Resolved version: 0.6.1
Empty manifest file is not supported anymore. Use `swift package init` to autogenerate.
error: The package at `/Users/internicolae/Code/personal/From JSON/Packages/PathKit.git' has no Package.swift for the specific version: 0.6.1

The master branch has a Package.swift now, but we need a version tag to use it.

Support for Swift 3 has been added in PathKit 0.7.0.


Add Extensions login page

Creat login page

Layering issue

that being said, there's also no way to make it show specifically on the stage?

there's also no way to make it show specifically on the stage?

it's actually really easy to make html elements show up on the stage (Scratch.renderer.addOverlay, the iframe extension uses it if i recall correctly)

yes, I know but I don't want to put it in the scene because otherwise we can no longer select the text inside and use copy paste or tab. And once in pakage it appears in the middle of the screen.

I fixed the bug.

Layering issue  that being said, there's also no way to make it show specifically on the stage?

I can see BlockifyVR extension

We need a <is authenticated/registered>

this seems to be in the same boat as captcha & security keys -- it's only client side so there's no actual security but people will still treat it as though there is security.

I just wanted to create a simple interface to connect and then use an extension like https websockets or cloudlink for the actual connection between client and server.

I just wanted to create a simple interface to connect and then use an extension like https websockets or cloudlink for the actual connection between client and server.

Add a when authenticated/registered hat block and a boolean one pls and then add settings for the ui

I love how it saves my acc in this extension

And make a block so we can add animationvto ui

Ok

Ok

Yay

Ok

Also there's  a bug I found, in create account ui, there's a recover password thing it should be "Use Existing Account" thing,  especially recover password ui

this seems to be in the same boat as the captcha & security key extensions -- it's only client side so there's no actual security but people will still treat it as though there is security.

Thank God the pull request wasn't closed

this seems to be in the same boat as the captcha & security key extensions -- it's only client side so there's no actual security but people will still treat it as though there is security.

Thank God the pull request wasn't closed

Also, don't take it too seriously

Ok

So have you added it yet?

I just wanted to create a simple interface to connect and then use an extension like https websockets or cloudlink for the actual connection between client and server.

That won't work, because it stores the account in the client instead, that could be unsafe


Unable to reference theme context with sx prop

Description
Hi!
According to the documentation, we should use the theme from the same context as Primer and not import an instance of the theme.
I find that I'm able to reference things color, for example: sx={{bg: 'canvas.default'}}
But I'm unable to reference for example the radii key, so I have to import the theme:
sx={{ borderRadius: theme.radii[2] }}
This is against the documentation but seems to work. I wonder if this is by design or a bug?
Steps to reproduce

Use a Primer component
Style the border-radius with the sx prop and try to access the radii key without importing an instance of the theme

Version
v35.26.1
Browser
Chrome

Update, this seems to work:
sx={{ borderRadius: themeGet('radii.2') }}
Is this a correct pattern to use? themeGet is documented to work in styled components, but seems to work in the sx prop too!

Hi!

I find that I'm able to reference things color, for example: sx={{bg: 'canvas.default'}}

This works because css properties have a map to the related theme value. So, properties like bg, backgroundColor, borderColor map to theme.colors.
"canvas.default" acts like an alias to theme.colors.canvas.default, but only when used with a color property!

But I'm unable to reference for example the radii key, so I have to import the theme:
sx={{ borderRadius: theme.radii[2] }}

sx={{ borderRadius: 2 }} should work, 2 would act as an alias to theme.radii.2. Or as you figured out themeGet('radii.2') would get you to the same alias as well :)

Hope that answers your question, feel free to reply back if it doesn't! Or if you have another question :)


Reorganize packages and modules

Change namespace com.google.fhirengine to com.google.android.fhir
Rename module fhirengine to core
Rename module example to reference

Thanks @deepankarb. Addressed your comment. I think I still need an approval before I can merge :) thanks!


problem with setting up the plugin

Hi @hansfriedrich thank you very much for your plugin. I was so happy when i discovered it. Unfortunately, I'm not able to get the plugin up and running. Maybe you can help.
This is my config:
{
    "bridge": {
        "name": "Homebridge 189D",
        "username": "0E:A7:E5:D6:18:9D",
        "port": 51046,
        "pin": "xxx-xx-xxx"
    },
    "accessories": [],
    "platforms": [
        {
            "name": "Config",
            "port": 8581,
            "platform": "config"
        },
        {
            "ip": "<IP_ADDRESS>",
            "platform": "feller-wiser",
            "_bridge": {
                "port": 57992
            }
        }
    ],
    "disabledPlugins": []
}

And this is the error i get:
TypeError: Cannot read properties of undefined (reading 'toUpperCase')
    at /usr/local/lib/node_modules/homebridge/src/server.ts:411:75
    at Array.forEach (<anonymous>)
    at Server.loadPlatforms (/usr/local/lib/node_modules/homebridge/src/server.ts:372:27)
    at Server.start (/usr/local/lib/node_modules/homebridge/src/server.ts:159:29)

Thank you very much for your help anyway!

@Villagio88 may I ask if you had a enlightened moment to manage the api-key creation?

Hi, yes I was able to get it up and running! Thank you very much for your help.
Andrin Villa
............................................................................................
Prätschliweg 7
CH-7000 Chur
Tel. Mobil +41 79 406 38 92
.............................................................................................
<EMAIL_ADDRESS>www.andrinvilla.comhttp://www.andrinvilla.com/
.............................................................................................
Facebook https://www.facebook.com/andrin.villa/ · Instagram https://www.instagram.com/andrin_villa/ · LinkedInhttps://www.linkedin.com/in/andrin-villa-081728157· YouTube https://www.youtube.com/user/andrinvilla · @.***/>

Von: hansfriedrich @.>
Gesendet: Thursday, July 14, 2022 7:36:21 PM
An: hansfriedrich/homebridge-feller-wiser @.>
Cc: Villagio88 @.>; Mention @.>
Betreff: Re: [hansfriedrich/homebridge-feller-wiser] problem with setting up the plugin (Issue #7)
@Villagio88https://github.com/Villagio88 may I ask if you had a enlightened moment to manage the api-key creation?
—
Reply to this email directly, view it on GitHubhttps://github.com/hansfriedrich/homebridge-feller-wiser/issues/7#issuecomment-1184722450, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AXSKM6EUTF2QH4EBU5WS233VUBFZLANCNFSM5NM6QUIQ.
You are receiving this because you were mentioned.Message ID: @.***>

deleted Villagio88 's reply due to personal information.
@Villagio88, thanks for the reply. Nice to hear you managed it. I assume you don't want to have these informations here.


"Getting unknown property" error in control panel since upgrade to 1.4.1

When trying to view a Color Swatches field in the control panel, this error appears:
Getting unknown property: percipioglobal\colourswatches\models\Settings::colours
It appears that this error is being thrown from line 161 of /src/fields/ColourSwatches.php, and is due to the fact that the $colours property was removed from /src/models/Settings.php in version 1.4.1 of the plugin.

Thanks for that! If I could make a suggestion, though, it looks like that line might not have been a typo, but a fallback from $plugin->settings->colors to $plugin->settings->colours, if the first property was null. This is a bit clearer if we format the original code differently:
'configOptions' => Plugin::$plugin->settings->colors
    ? Plugin::$plugin->settings->colors
    : Plugin::$plugin->settings->colours,

If the colours property no longer exists, we could probably drop the ternary altogether and just do:
'configOptions' => Plugin::$plugin->settings->colors,

Thanks for the remarks @mtnorthrop we do have a major 2.0 release planned for this in 2021 with a lot more improvements and probably an entire codebase rewrite 🗡

Thanks for that! If I could make a suggestion, though...
If the colours property no longer exists, we could probably drop the ternary altogether and just do:
'configOptions' => Plugin::$plugin->settings->colors,

yeah there are several of these carryovers throughout that need to be addressed and cleaned - which will happen over the coming days. As @michtio says though, there's a full rebuild in the works with a bunch of new features including GraphQL and feedme support.


add supabase + pgvector datastore provider

What kind of change does this PR introduce?

add supabase as a datastore provider
add necessary migrations with

Postgres function to search closest vectors using pgvector extension
table to store embeddings
enable pgvector postgres extension

update readme

Hey, OpenAI team 👋 thanks for this great service template and plugin!

Supabase is just one of the hosted PostgreSQL options that supports pgvector. There are options listed here.
A user of this project could also choose to use their own PostgreSQL instance with pgvector enabled.
I believe in a more abstract implementation and the README/docs can mention the hosted providers.

Supabase is just one of the hosted PostgreSQL options that supports pgvector. There are options listed here.
A user of this project could also choose to use their own PostgreSQL instance with pgvector enabled.
I believe in a more abstract implementation and the README/docs can mention the hosted providers.

One does not replace another. This extension uses postREST to access database.
Both datasources: just postgres and Supabase would be great additions to this project :)

@egor-romanov sorry that I overlooked it.
As I see, this implementation ends up using postgREST and a PostgreSQL connection (init_db). Which requires more configuration from the user.
The other implementations require just a DATABASE_URL, works fine with Supabase and other hosted providers, plus self hosted.

@egor-romanov sorry that I overlooked it.
As I see, this implementation ends up using postgREST and a PostgreSQL connection (init_db). Which requires more configuration from the user.
The other implementations require just a DATABASE_URL, works fine with Supabase and other hosted providers, plus self hosted.

Hey, thanks. But it still is notably different, as init_db is not required and even discouraged to use :)
It is only to run migrations which is required only once and is much better to be done as a separate process.
While the actual work is done via postgREST requests and do not require any additional setup. You can find the same info in readme. In fact it requires much less, only url to supabase project and anon_key.
As I mentioned earlier both datastore providers would be nice additions to plugin as they work pretty much differently (using pg connection or using rest over http with postgREST).

Hey @mmmaia , supabase ceo here. You're right that we could provide a connection directly to the database.
Just to add a bit more color to our approach:

For security, we advise our users to restrict direct access to the database from the internet and only expose access through the API (PostgREST).
PostgREST has a built-in connection pooler. Without pooling, if 1000 users run a retrieval command concurrently it will crash the database (unless OpenAI is doing some sort of connection pooling on your side?). Postgres connections aren't so scalable unfortunately, and we often have users crashing their database when they connect directly in serverless environments

We can also push a generic Postgres retrieval plugin if you prefer, although it won't be as secure or scalable and will probably result in some support headaches for us

Hi, @isafulf!
Thanks for this amazing project, I just wanted to make a quick update about this PR:

Datastore provider docs are moved according to a new structure
Full local setup of supabase datastore provider now possible with new guide
Added a few simple tests for upsert/query/delete

Apologies for the bluntness, but this comes across as a sort of cheap advert for supabase at the expense of pgvector users - an attempt to capture pgvector users into supabase ecosystem, without supporting the open source that supabase leverages.  It's nice to support pgvector in supabase, but why not separate the pgvector support from the supabase support so that pure pgvector users who dont need a cloud solution can benefit too?
Supabase might benefit from users choosing pgvector use in that case too.  Or figure out how to provide supabase support on top of #65 instead?  One can well imagine that this project's owners do not want to support two different pgvector implementations.

@mtesch-um you should check pr and comments above to understand why this PR exists :)
But I can answer all these misunderstandings:

Apologies for the bluntness, but this comes across as a sort of cheap advert for supabase at the expense of pgvector users - an attempt to capture pgvector users into supabase ecosystem, without supporting the open source that supabase leverages.

This extension is called Supabase, not PgVector. And it benefits from supabase setup features like PostgREST, which is not possible when using just Postgres only.

It's nice to support pgvector in supabase, but why not separate the pgvector support from the supabase support so that pure pgvector users who dont need a cloud solution can benefit too?

See the comment from kiwicopple above to understand what are benefits of using postgrest, for example. Plus you can check out docs in this PR to see how to setup everything locally or self-host, so you don't need cloud, everything is still open-sourced and self-hostable.

Supabase might benefit from users choosing pgvector use in that case too. Or figure out how to provide supabase support on top of #65 or #45 instead? One can well imagine that this project's owners do not want to support two different pgvector implementations.

This repo and all other repos are not trash cans, where PRs just got merged and forgotten. You are responsible for your code not until the code is merged, but until there is at least a single developer using it. So I am making this PR understanding that I am responsible for its maintenance.
This is not a race of any kind. I am super happy, that there is pure postgres db only extension and I don't want to compete with it in any way. If you need postgres only, this is good. If you want to create a project using supabase, this is also good, and this extension uses supabase features such as PostgREST and python dependencies for it.
If this is still not an argument, just take a look at the existing providers: Zilliz and Milvus to be specific.


Consider adding BlazorGitHubPages from Daniel Roth

https://github.com/danroth27/BlazorGitHubPages

No more activity in this repo.


Add number controls for minimum/default and maximum fan speeds

Add number controls for minimum/default and maximum fan speeds
mark fan_speed_default as deprecated (superseded by fan_speed_min control)

Sorry, I've missed this PR. Merged now 👍
Thanks for the great work @github-k8n !


Repository maintenance script has incomplete functionality

The repository maintenance script USElecData currently has incomplete functionality. The following are currently broken or not implemented:

[ ] The source option does not respect the --resource-all flag. It will currently only update the existing source data.
[ ] The build option does not respect the --rebuild-all flag. It currently will only update the current build with new source data.
[ ] The package option only exports .zip files. It should examine the file extension and export .tar.gz files or remove the option from the description.
[ ] The delete option is not implemented.

Allow setting year bounds in the init script

The source and build options will now pass --resource or --rebuild flags to subprocesses when those flags are specified. The loadCEMSData.R script will respect the --rebuild flag.


Issues using the ModuleDetection SPI

While implementing a customized ModuleDetectionStrategy I stumbled upon JavaPackage#getClasses(). JavaPackage and the getClasses() method are public, but the return type_Classes_ itself is package protected.
This constraint leads to the restriction that I cannot use classes to detect a module.
Moreover I felt the desire to use the underlying ArchUnit API directly for detecting modules. I am sure that it's intended to have some abstraction like JavaPackage and Classes, but in the bootstrapping process of detecting modules a low level API might be the better choice in order to allow more sophisticated detection strategies.

Would you be fine if we simply made Classes public?

Would you be fine if we simply made Classes public?

I'm not sure about that, but I will check it.

Any feedback on this? I would like to get to an RC relatively soon and make sure the ModuleDetectionStrategy SPI is really useful.

I've made Classes public and also exposed the ….stream() method for now.

To be honest I did not find the time to try it in depth, but it look good to me.
org.moduliths.model.JavaPackage.that(DescribedPredicate<? super JavaClass>) provides a way to use the ArchUnit Core API to detect modules and org.moduliths.model.Classes.stream() provides a way to iterate these modules and map them using org.moduliths.model.JavaPackage.of(Classes, String).
This code (which should do the same as org.moduliths.model.ModuleDetectionStrategies.EXPLICITLY_ANNOTATED) compiles now and therefore I'm optimistic that it's possible to implement any mdoule detection strategy:
public class MarsModuleDetectionStrategy implements ModuleDetectionStrategy {
	@Override
	public Stream<JavaPackage> getModuleBasePackages( final JavaPackage basePackage ) {
		final Classes classes = basePackage.getClasses( );
		return basePackage.that( JavaClass.Predicates.simpleName( "package-info" )
				.and( CanBeAnnotated.Predicates.annotatedWith( Module.class ) ) ).stream( )
				.map( JavaClass::getPackageName )
				.distinct( )
				.map( it -> JavaPackage.of( classes, it ) );
	}
}


Discourage (or at least clarify) manual requests for IETF LC reviews for teams that have the automatically request review option set.

The review tool asks most review teams to review every document that goes into IETF last call. Manual requests for IETF last call to these teams is usually a mistake. Warn a requester making such a request.
Perhaps label teams on the request page if they automatically get IETF LC requests.

The current review request page already automagically suggest proper review type, but unfortunately we allow review requested to change it.
I propose we change the review request page from:

to

or
Telechat, as document is in telechat agenda
or
Last Call, as document is in IETF last call

I.e., we would remove the ability to change the type, and use the current code that already picks the type based on the state of the document.
Do you think this would solve the issue of asking wrong reviews, as it would be clear that you can't request last call review, as document is not in there yet. In addition to that we could add some character like '†' after the directorates that has automatic suggestion for reviews, and add text at the end saying '† signifies that review team will review documents during IETF last call or telechat automatically.'

🤴 👑


Improve SunBurst example

Improve example of SunBurst:

use a Legend explaining colors
use a Legend on segment hover to explain color, label, value.
have onClick alert also explain detail better.

Fixed in commit 99cd07c3ec73ad7d3cb4f884090a0ca860ba5ccc.


Revert the removal of the check for duplicate blocks

As requested by @howardwu; even with the stack overflow issue being fixed with https://github.com/AleoHQ/snarkOS/pull/847, the node can still be slowed down significantly if it repeatedly enters the path that applies after the check for duplicate block entries that was commented out in https://github.com/AleoHQ/snarkOS/pull/781 (as it could interfere with post-forking syncing). Since we can still receive batches of duplicate sync blocks under certain conditions, it is safer to restore the previous behavior until a long-term fix is found.

Filed https://github.com/AleoHQ/snarkOS/issues/856 to track the aforementioned slowness.

Actually, testing this change in tandem with the new test from https://github.com/AleoHQ/snarkOS/pull/858 hasn't triggered any failures in my initial tests, so it's entirely possible that we can just bring this check back without risking any post-fork sync issues :+1:.


Enhancement: Introduce Enum for Dashboard Routes to Improve Code Maintainability

Description
Currently, the Dashboard routes are hard-coded as strings throughout the project, leading to potential issues such as typos, duplication, and inconsistency. To enhance code maintainability, I propose the introduction of an Enum named DashboardRoutes to centralize and manage all routes in one place.
Example:
export enum DashboardRoutes {
    blog = "blog",
    about = "about",
}

Usage Example:
Instead of using routes as hard-coded strings like "route/route-name", we can leverage the Enum for better readability and to mitigate the risk of typos or duplication.
import { DashboardRoutes } from '@routes';

const blogRoute = DashboardRoutes.blog;
const aboutRoute = DashboardRoutes.about;

Issue Update
Work in Progress
Currently engaged in the process of replacing hardcoded routes throughout the application. The strategy involves creating an interface to consolidate and manage all route values.

Issue Update
Work Completed:

Introduced Enum DashboardRoutes for centralized route management.
Updated routes throughout the project to use Enum for better code maintainability.
Documentation for newly created Enum and updated routes.

Work in Progress (WIP):

Additional testing and validation of the changes are ongoing.

Investigation and Solution:

Investigated the current state of route management in the project.
Identified the need for a centralized approach using Enum to improve code maintainability.
The solution involved creating and implementing the DashboardRoutes Enum and updating routes accordingly.