Web API Error : No route matches the supplied values : MVC ASP CORE 3.1.3

Hi All,
Have seen this issue in widespread and a lot of comments and suggestions to help correct it. But still not able to resolve this :(
Please see my implementation (URL assignment) using MVC ASP CORE 3.1.3.
Tried both methods CreatedAtRoute and CreatedAtAction in the POST call but not having any luck. Logic for EF works
just fine but wanting to return resource info back on the response, I run into this exception.
Any help appreciated!
Nuget packages used..

ConfigureServices method..

Controller class snippet..

GET method used..

POST method used..

This is because your versioning by URL segment and haven’t included it in CreatedAtAction. The API Version is special and isn’t automatically included. Add the action parameter ApiVersion version to your action. Then add version = version.ToString() to the route parameters.

Hey, @commonsensesoftware, is this in the wiki? Otherwise, could we add it?
I've just spent a significant amount of time dealing with the same issue. I've tried many things that were close to passing a version to routeValues, but this one is tricky: for instance, I tried supplying both apiVersion = "1" and version = new ApiVersion(...), which don't work.

Got this finally resolved now by doing the following....maybe helpful to someone else.

Within the Controller class, keep versioning and routing decoration as previously

Within the Controller class, replace method decorations [MapToApiVersion] with [Route("")], updated GET below..

Within the Controller class, added a Version property to the CreatedAtAction method within the POST action result method
that matches the Controller ApiVersion decoration, updated POST below..

Maybe not the most elegant workaround, but functional for now.

@zachbester, if it's any help I do have a repo with a solution that works a bit different than yours.
https://github.com/bruno-brant/dotnet-api-versioning-error/tree/solution
You can also see a summary in the readme or on StackOverflow.

@zachbester and @bruno-brant
This scenario has been brought up a couple of times. Action parameters have a BindingSource. The ApiVersion is considered BindingSource.Special because it can come from multiple places. This behavior is similar to how the CancellationToken action parameter works. If memory serves me correctly, an action parameter must have BindingSource.Path to be considered in route URL generation, which makes sense.
The name of the action parameter that you add should not matter, but it should match what you've defined in your route template to be sensical. The member you add that's passed to CreatedAtAction or CreatedAtRoute must be the same as that defined your route template. The routing system wants to serialize the ApiVersion type into the route parameter, which is incorrect. To address that, you simply call .ToString(). There may be a way to solve that, but I haven't looked at it some time. It's certainly low on my list of things to spend time on.
Putting that all together, this will work every time:
[HttpGet]
[Route]
public ActionResult<DTODocumentCustomerRead> DocumentCustomerGet(int id) { /* ommited */ }

[HttpPost]
[Route]
public ActionResult<DTODocumentCustomerRead> DocumentCustomerCreate(
    DTODocumentCustomerCreate document,
    ApiVersion version)
{
    var model = _mapper.Map<DocumentCustomer>(document);

    _repository.DocumentCustomerCreate(model);
    _repository.SaveChanges();

     var dto = _mapper.Map<DTODocumentCustomerRead>(model);

    return CreatedAtAction(nameof(DocumentCustomerGet), new {id = dto.DocuID, version = version.ToString()}, dto);
}

The other way can get the requested API version is to call HttpContext.GetRequestedApiVersion(). This method can return null, but in this context it will never be null by the time things have been routed to your action.

This is the way...

I hope that helps.

Double-checking. Did this resolve your issue?

Hey @commonsensesoftware, it has. I'm sorry for forgetting to close the issue.
I do, however, insist that this should appear in the docs somehow (for instance, look at the comments from my own answer on SO).
I might be able to help there if you want me to, by submitting a PR to the wiki.

@bruno-brant thanks for the confirmation. After considerable review of the ASP.NET Core codebase, I've come to the conclusion that this exactly the way things are expected to behave, even if developers don't expect it. The routing system only considers well-known route parameter tokens (ex: [controller], [action], etc) as an ambient value. An ambient value is a route parameter that can come from route data without being explicitly specified in the values used to generate a route URL. I've made this argument before. You shouldn't expect something like api/{tenant}/values to work unless you specify the value tenant as an input. The API version route parameter is no different.
I'm sure people are grumbling at that. I get a lot of questions about this. On one hand, I'm inclined to leave it as is because versioning this way is just wrong, but that would be a bad steward of the community. Despite my strong and experienced reservations, I've researched whether this can be intrinsically supported before conceding to just posting something in the FAQ. I can confirm that I have something that will work and solve this problem - for good. I'm tracking it as #663 for those that want to follow. I don't have a commitment as to the date it will be released, but it will appear in the next minor or patch release. In the interim, you can continue to specify the value explicitly.
I'll close this one out. Thanks.


Failed to run custom action 'action_place_search'. Action server responded with a non 200 status code of 500. Make sure your action server properly runs actions and returns a 200 once the action is executed. Error: 500 Server Error: INTERNAL SERVER ERROR for url: http://localhost:5055/webhook

Rasa version:
rasa-core            0.13.1
rasa-core-sdk        0.12.1
rasa-nlu             0.14.4
Python version: 3.6.4
Operating system (windows, osx, ...): windows 10
Issue:
I am trying to implement train_interactive.py it gives some error
ERROR:rasa_core.actions.action:Failed to run custom action 'action_place_search'. Action server responded with a non 200 status code of 500. Make sure your action server properly runs actions and returns a 200 once the action is executed. Error: 500 Server Error: INTERNAL SERVER ERROR for URL: http://localhost:5055/webhook
ERROR:rasa_core.processor:Encountered an exception while running action 'action_place_search'. The bot will continue, but the events of the action are lost. Make sure to fix the exception in your custom code.
In an action server, the error is :
DEBUG:rasa_core_sdk.executor:Received request to run 'action_place_search'
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): www.googleapis.com:443
DEBUG:urllib3.connectionpool:https://www.googleapis.com:443 "POST /geolocation/v1/geolocate?key=AIzaSyBU9l9dlZS7J-CPWZchX0zUp2lpR4_HZkU HTTP/1.1" 200 None
DEBUG:urllib3.connectionpool:Starting new HTTPS connection (1): maps.googleapis.com:443
DEBUG:urllib3.connectionpool:https://maps.googleapis.com:443 "GET /maps/api/place/nearbysearch/json?location=12.9549945,77.6936837&radius=550&type=supermarket&key=AIzaSyBU9l9dlZS7J-CPWZchX0zUp2lpR4_HZkU HTTP/1.1" 200 1554
ERROR:flask.app:Exception on /webhook [POST]
Traceback (most recent call last):
File "C:\Program Files\Python36\lib\site-packages\flask\app.py", line 2292, in wsgi_app
response = self.full_dispatch_request()
File "C:\Program Files\Python36\lib\site-packages\flask\app.py", line 1815, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Program Files\Python36\lib\site-packages\flask_cors\extension.py", line 161, in wrapped_function
return cors_after_request(app.make_response(f(*args, **kwargs)))
File "C:\Program Files\Python36\lib\site-packages\flask\app.py", line 1718, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "C:\Program Files\Python36\lib\site-packages\flask_compat.py", line 35, in reraise
raise value
File "C:\Program Files\Python36\lib\site-packages\flask\app.py", line 1813, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Program Files\Python36\lib\site-packages\flask\app.py", line 1799, in dispatch_request
return self.view_functionsrule.endpoint
File "C:\Program Files\Python36\lib\site-packages\flask_cors\decorator.py", line 128, in wrapped_function
resp = make_response(f(*args, **kwargs))
File "C:\Program Files\Python36\lib\site-packages\rasa_core_sdk\endpoint.py", line 83, in webhook
response = executor.run(action_call)
File "C:\Program Files\Python36\lib\site-packages\rasa_core_sdk\executor.py", line 177, in run
events = action(dispatcher, tracker, domain)
File "C:\Users\trainee.1\Desktop\Place_Finder_Voice_Bot\actions.py", line 48, in run
rating = i['rating']
KeyError: 'rating'
<IP_ADDRESS> - - [2019-04-18 16:22:49] "POST /webhook HTTP/1.1" 500 412 2.313876
Content of configuration file (config.yml):
pipeline:
- name: "nlp_spacy"
- name: "tokenizer_spacy"
- name: "ner_crf"
- name: "intent_featurizer_spacy"
- name: "intent_classifier_sklearn"
- name: "ner_duckling"
  dimensions: ['number']

Content of domain file (domain.yml) (if used & relevant):

actions:
- utter_opening_hours
- utter_no_results
- utter_address
- utter_greet
- utter_goodbye
- action_place_search
- utter_what_radius
- utter_rating
- utter_thanks

entities:
- query
- number

intents:
- place_search
- thanks
- inform
- greet
- goodbye
- opening_hours
- address
- rating

slots:
  address:
    type: unfeaturized

  location_match:
    type: categorical
    values:
    - none
    - one

  number:
    type: text

  opening_hours:
    type: unfeaturized

  query:
    type: text

  rating:
    type: unfeaturized

templates:
  utter_address:
  - text: The address is {address}.
  utter_goodbye:
  - text: Talk to you later!
  utter_greet:
  - text: Hello! I am a places search assistant. I can help you find places wherever
      you are, provide information about the location like opening hours, rating,
      address. So what are you looking for?
  utter_no_results:
  - text: Sorry, I couldn't find anything.
  utter_opening_hours:
  - text: The place is {opening_hours}
  utter_rating:
  - text: The rating is {rating}
  utter_thanks:
  - text: You are very welcome.
  utter_what_radius:
  - text: Within what radius?
![Screenshot (39)](https://user-images.githubusercontent.com/48979102/56356995-fe227c00-61f7-11e9-8abf-a2c1a3b42e17.png)
![Screenshot (40)](https://user-images.githubusercontent.com/48979102/56357020-0d092e80-61f8-11e9-84d2-f20cba63ebe5.png)

Same problem. Any solution?

Thanks for raising this issue, @paulaWesselmann  will get back to you about it soon.

Hey @haripriyamvk, am I understanding it correctly that you are trying to run interactive learning via a webhook?
Can you post the content of your train_interactive.py file that you are trying to run?

@guilacerda Can you also share what exactly you are running?
Do your custom actions work when running the bot through the command line @haripriyamvk @guilacerda ?

I was updating rasa core 10.4 to version 13.x, but its solved.
I was having a problem with the docker that was running container with cache, so the methods were not updating.
Thanks for availability

Rasa Version
rasa-core==0.14.0
rasa-core-sdk==0.14.0
rasa-nlu==0.15.0
Python Version: 3.6.4
Operating System: Windows 10
Issue:
While interactive learning, I am facing the same issue which mentioned in Issue title.
ERROR:rasa_core.actions.action:Failed to run custom action 'actions_check_credit_limit'. Action server responded with a non 200 status code of 500. Make sure your action server properly runs actions and returns a 200 once the action is executed. Error: 500 Server Error: INTERNAL SERVER ERROR for url: http://localhost:5055/webhook
2019-04-27 19:07:34 INFO     main  - Starting action endpoint server...
2019-04-27 19:07:49 INFO     main  - Action endpoint is up and running. on ('<IP_ADDRESS>', 5055)
<IP_ADDRESS> - - [2019-04-27 19:10:44] "GET / HTTP/1.1" 404 342 0.064003
<IP_ADDRESS> - - [2019-04-27 19:10:46] "GET /favicon.ico HTTP/1.1" 404 342 0.003004
[2019-04-27 19:11:42,359] ERROR in app: Exception on /webhook [POST]
Traceback (most recent call last):
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\flask\app.py", line 2292, in wsgi_app
response = self.full_dispatch_request()
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\flask\app.py", line 1815, in full_dispatch_request
rv = self.handle_user_exception(e)
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\flask_cors\extension.py", line 161, in wrapped_function
return cors_after_request(app.make_response(f(*args, **kwargs)))
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\flask\app.py", line 1718, in handle_user_exception
reraise(exc_type, exc_value, tb)
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\flask_compat.py", line 35, in reraise
raise value
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\flask\app.py", line 1813, in full_dispatch_request
rv = self.dispatch_request()
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\flask\app.py", line 1799, in dispatch_request
return self.view_functionsrule.endpoint
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\flask_cors\decorator.py", line 128, in wrapped_function
resp = make_response(f(*args, **kwargs))
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\rasa_core_sdk\endpoint.py", line 59, in webhook
response = executor.run(action_call)
File "C:\Users\hardik.sanchawat\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\rasa_core_sdk\executor.py", line 177, in run
"No registered Action found for name '{}'.".format(action_name)
Exception: No registered Action found for name 'actions_check_credit_limit'.

Hey @hardiksanchawat,
Please check the file for your custom action for typos in the name and
post the part of your domain file where the actions are defined and also the name() function of your custom action.
For example:
class ActionJoke(Action):
    def name(self):
        # define the name of the action which can then be included in training stories
        return "action_joke"

Hi @paulaWesselmann ,
Using the below code, facing the same issue.
Custom Action code
    def name(self):
        return "**action_check_credit_limit**"
    def run(self, dispatcher, tracker, domain):
        response = "Hi"
        dispatcher.utter_message(response)```

Stories.md

```## first story
* CheckCreditLimit
    - **action_check_credit_limit**```

domain.yml

```actions:
- action_check_credit_limit```

@hardiksanchawat I'm not sure if this is from formatting or not, but if you have the stars around action_check_credit_limit, (**action_check_credit_limit**), in the stories or name function this won't work.

@paulaWesselmann Formatting is not correctly done. There is no star in action.py action_check_credit_limit

@hardiksanchawat since this is your error messsage: Exception: No registered Action found for name 'actions_check_credit_limit'.
You probably have an action somewhere (in a story?) that you call
actions _check_credit_limit instead of action_check_credit_limit

@paulaWesselmann I have corrected spell error. But, Still getting the same error.
"C:\Users\XX\AppData\Local\Programs\Python\Python36\hsa\lib\site-packages\rasa_core_sdk\executor.py", line 177, in run
    "No registered Action found for name '{}'.".format(action_name)
Exception: No registered Action found for name 'action_check_credit_limit'.same error.

@hardiksanchawat When you are running python -m rasa_core_sdk.endpoint --actions actions are you in the same directory as your custom actions file, called actions.py is located?

@paulaWesselmann Yes, I am running following cmd python -m rasa_core_sdk.endpoint --actions actions from the same directory where my custom action file is created actions.py

Hello guys, I have been getting the same error. I posted on Rasa community. Were you able to resolve?

 Action server responded with a non 200 status code of 500. Make sure your action server properly runs actions and returns a 200 once the action is executed. Error: 500 Server Error: INTERNAL SERVER ERROR for url: http://localhost:5055/webhook
2019-05-15 14:24:09 ERROR    rasa_core.processor  - Encountered an exception while running action 'email_autoreply_form'. Bot will continue, but the actions events are lost. Make sure to fix the exception in your custom code.
2019-05-15 14:24:09 DEBUG    rasa_core.processor  - Failed to execute custom action.

How can I handle this exception or bypass 202 code?

@haripriyamvk how did you resolve this?

2019-07-18 14:39:25 ERROR    rasa_core.actions.action  - Failed to run custom action 'action_match_news'. Action server responded with a non 200 status code of 404. Make sure your action server properly runs actions and returns a 200 once the action is executed. Error: 404 Client Error: NOT FOUND for url: http://localhost:5055/
2019-07-18 14:39:25 ERROR    rasa_core.processor  - Encountered an exception while running action 'action_match_news'. Bot will continue, but the actions events are lost. Make sure to fix the exception in your custom code.

Hello , i am facing the same issue,please help.
Failed to run custom action 'lead_form_p1'. Couldn't connect to the server at 'http://localhost:5055/webhook'. Is the server running? Error: Cannot connect to host localhost:5055 ssl:default [Connect call failed ('<IP_ADDRESS>', 5055)]
2020-07-31 18:39:55 ERROR    rasa.core.processor  - Encountered an exception while running action 'lead_form_p1'. Bot will continue, but the actions events are lost. Please check the logs of your action server for more information.


[Feature] Add trainable frequency feature maps

Closes #267

Thanks @jpmoutinho. Minor suggestions from me. Question: is it worth testing this ?

Thanks @Roland-djee. I tested the addition of the trainable parameter in the creation and running of the feature map for some given input values so it should be ok in terms of functionality, but I'm not sure there anything we test in terms of "correctness" here.


CImg problems with MacOS

Hi,
I get the following error:
/usr/local/Cellar/phash/0.9.6_1/include/pHash.h:50:10: fatal error: 'CImg.h'
      file not found
#include "CImg.h"
         ^

a solution to this error is to add the cimg include path by hand
      "include_dirs" : [
        "<!(node -e \"require('nan')\")",
        "/usr/local/Cellar/cimg/1.6.3/include"
      ]

unfortunately I do not know how to fix this in a generic way

how did you install CImg?

with ```brew install cimg````
I get cimg-1.6.3

+1ing this, I get the same issue. Can I somehow add the cimg installation to node-gyp's include path globally?

anyone know of a generic way?

https://github.com/lovell/sharp/blob/master/binding.gyp#L58 provides an example of building a cross-platform (OS X, Linux) pkg_config_path, which can be used via something like https://github.com/lovell/sharp/blob/master/binding.gyp#L67

@lovell i'm not sure that's it because i don't see cimg's package config file anywhere

maybe i just don't understand how pkg-config works

      "include_dirs" : [
        "<!(node -e \"require('nan')\")",
        "/usr/local/include"
      ]

is that okay? that seems to work since cimg.h is in /usr/local/include


Nested searching in relations

Hello there,
I have been searching through the documentation to see if nested searching is possible, in my case i have a relation called "Translations" which has translations of the title of the current Model. The reason why i want to search the translations is to make it possible to search for the title in multiple languages.
I was wondering if this is possible, and if so how can i achieve this?

Currently i am using the searchbyquery function, which limits me to only search for fields that are present in the model itself.

For this problem i have written an extended Trait, for the people who have a similair problem you can look into it:
`<?php
namespace App\Traits;
use Illuminate\Container\Container;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Http\Request;
use Lacodix\LaravelModelFilter\Traits\IsSearchable;
trait ExtendedSearchable
{
use IsSearchable;
/**
 * Extend the original scopeSearch to include nested relationships.
 *
 * @param Builder $query
 * @param string|null $search
 * @param array|null $searchable
 * @return Builder
 */
public function scopeSearch(Builder $query, ?string $search, ?array $searchable = null): Builder
{
    if (!$search) {
        return $query;
    }

    // Process searchable fields to extract nested relationship queries
    $searchable = $searchable ?? $this->searchable ?? [];
    $fieldGroups = $this->processSearchableFields($searchable);

    // Apply search to direct fields
    if (!empty($fieldGroups['direct'])) {
        $query->where(function ($q) use ($search, $fieldGroups) {
            foreach ($fieldGroups['direct'] as $field) {
                $q->orWhere($field, 'LIKE', '%' . $search . '%');
            }
        });
    }

    // Apply search to relationship fields
    foreach ($fieldGroups['relationships'] as $relationship => $fields) {
        $query->orWhereHas($relationship, function ($q) use ($fields, $search) {
            foreach ($fields as $field) {
                $q->where($field, 'LIKE', '%' . $search . '%');
            }
        });
    }

    return $query;
}

/**
 * Extend the scopeSearchByQueryString to include the extended search logic
 * for nested relationships and model's own columns.
 *
 * @param Builder $query
 * @return Builder
 */
public function scopeSearchByQueryString(Builder $query): Builder
{
    $request = Container::getInstance()->make(Request::class);
    $searchTerm = $request->get(config('model-filter.search_query_value_name'));
    $searchable = $request->get(config('model-filter.search_query_fields_name'), $this->searchable);

    return $this->scopeSearch($query, $searchTerm, $searchable);
}

/**
 * Process the searchable fields to categorize them into direct fields and relationship fields.
 *
 * @param array $searchable
 * @return array
 */
protected function processSearchableFields(array $searchable): array
{
    $fieldGroups = ['direct' => [], 'relationships' => []];

    foreach ($searchable as $field) {
        if (strpos($field, '.') !== false) {
            // Handle relationship fields
            [$relationship, $column] = explode('.', $field, 2);
            $fieldGroups['relationships'][$relationship][] = $column;
        } else {
            // Direct fields on the model
            $fieldGroups['direct'][] = $field;
        }
    }

    return $fieldGroups;
}

}
`

@zayd020 sorry for the late reply - I have overseen your answer...
and yes - you are right - I didn't read good enough so I though you are talking about filtering...
For search you just have to keep in mind, that searching is a science on its own and with this "simple" Database search, we come fast to the limits of performance when we use LIKE in combination with large datasets... But I wanted to have a "simple" search functionality in this package to solve the main usecases...
nevertheless I have created a draft for it (PR is open):
https://github.com/lacodix/laravel-model-filter/compare/feat/nested-search?expand=1
I took another aproach: when searching huge data-amounts: since laravel 9.something there is a withWhereHas method. This also eager loads the related elements on the found elements, what is very convenient - maybe this is a shot too far, but I like the idea to have the data available after the search... if this isn't handy, we could also remove it and replace it with a whereHas - doesn't matter.
Your solution finally does only the %LIKE% Search - i need to add it for all modes and it should also be possible to search for one field in one mode and another in another mode...
finally I came to the solution in the PR - it doesn't look very well, but id just hooks in where we currently apply the query for each field. Then we split up - contains a dot, then take the new way, doesn't contain a dot, take the old way.
The new way then adds the mode-query combined with withWhereHas to the search-query.
Finally the test-cases seems all to work - but I cannot publish it yet. You are welcome to test it with the development-branch-version. But there is one final problem to solve:
In one of my projects where I use this package I have more complex search querys (already joins on the base model, multiple tables are requested - especially when combining with filters that make joins) and for that I had to add qualified column names to the searchable field list like this: 'posts.title' when searching on the posts model. This is now indeed a problem, because the new solution now thinks this is a nested search...
So I have to go into this projects and think about how to solve it - best would be solving it in this package, so nobody else falls into the same trap... Otherwise it would be a breaking change.

Hey @zayd020
I merged the nested search in last Version - so you can use it now.
Regards


Added a new blog about web developmeny

🛠 Fixes Issue

👨💻 Changes proposed

✔ Check List (Check all the applicable boxes)

[ ] My code follows the code style of this project.
[ ] This PR does not contain plagiarized content.
[ ] The title of my pull request is a short description of the requested changes.

📄 Note to reviewers
Changed made

Link of the blog :- https://www.freecodecamp.org/news/beginners-roadmap-web-development/

closes #756


After install of Linutil get update error

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

clicked Linutil Installer
quit Linutil
run linutil
clicked update linutil
See error

Expected behavior
Used the Linutil to install its self pick the stable-bin
If i click on the Linutil update.
I get this error ??
Screenshots

Additional context
Add any other context about the problem here.
Checklist

[x] I checked for duplicate issues.
[x] I checked already existing discussions.
[ ] This issue is not included in the roadmap.
[ ] This issue is present on both stable and development branches.

I even uninstalled it and tried again still the same

Well, this is not an error (technically it is).
I thought the message would be pretty self explanatory. You said:

Used the Linutil to install its self pick the stable-bin

I understand that by stable-bin you mean linutil-bin.
This is an AUR package. It clearly says This script only updates the binary installed through cargo..
/close not planned

but that makes NO sense what so ever there an option to linutil installer and get replace by linuit update would you not assume this it suppose to update the installer ??..
there is no way this is working as intended ?... and if it is this is just dumb design ...

and if it is this is just dumb design ... the logic is flawed..
it give 3 option there nothing there about being install through cargo ..?
there is no way this is working as intended ?... and if it is this is just dumb design ... the logic is flawed..

This is working as intended and is not flawed. We're here to work on this project, not insult each others' work so please don't.
If you'd read the documentation (or have a basic understanding of our (and crate) packaging), you'd know that the crates.io package is only used as a fallback. It's not recommended to install standalone binaries through cargo, because updates just don't work.
Cargo is not a package manager.
That's why you don't see an option to install the crates.io package.

It not an insult I'm trying to explain to you some thing ?...  but your just not listening...  if installer and update are not mutually exclusive then one should not replace the other this is confusing to user....
if they are two different thing then they should be two different things...

I do understand your point and I know it may be confusing. Keeping both was my original idea but I reached out to the community for opinions and I think (don't really remember) that we decided to add a general preconditions if linutil exists in user's system. Theoretically, checking if the crate is installed and only then showing Linutil Updater would be a good idea but technically that would require changing a little too much in my opinion - adding an explicit cargo package check for linutil as a core functionality.
We could check for linutil in $HOME/.cargo/bin (file checking is already implemented) but although cargo is in $HOME/.cargo by default, it does not have to be the case for all users.
But yes I agree that we should probably change something here. Add a note about crates.io for example.

Thank you that was it I wasn't trying insult you sorry if it seam that way, but I new user will never understand what that errors mean it will be very confusing to them... if they don't understand the difference they would assume there  install in broken and that they cant update.. even for a some graces handling that just does a yay -Syu linutil-bin  or which method choice, or at the least an error that newbies friendly like update this way this command ect ...

No problem. I'll keep this issue in mind and do a bigger refactor of the scripts when I have time to do so. We want to focus more on fixing current bugs for now so UX gimmicks like this aren't our top priority ATM.
We might want to implement custom shell-command based preconditions for entries but a change like this, that could affect performance, will need a bigger discussion.
Anyway, thank you for reporting this, I will definitely be thinking of good solution. Other scripts might benefit from this aswell.


Update Composer dependencies (2021-04-26-00-12)

Visual regression test passed!
View the visual regression test report


Elapsed time is not reported for workflows

No longer seems to be an issue, e.g.:
$ prominence list workflows
ID      NAME                                      CREATED               STATUS    ELAPSED      PROGRESS
25777   lammps-stfc-many-with-db12-and-coremark   2019-11-29 07:53:33   running   0+07:42:57   4/10

so closing.


Pixi has trouble installing mlx

Checks

[X] I have checked that this issue has not already been reported.

[X] I have confirmed this bug exists on the latest version of pixi, using pixi --version.

Reproducible example
pixi init mlx
cd mlx
pixi add python=3.10
pixi add --pypi mlx

(mlx) ➜  mlx pixi add --pypi mlx
  × The following packages are incompatible
  │ |-- mlx * cannot be installed because there are no viable options:
  │     |-- mlx 0.0.4 is excluded because none of the artifacts are compatible
  │ with the Python interpreter or glibc version
  │     |-- mlx 0.0.3 is excluded because none of the artifacts are compatible
  │ with the Python interpreter or glibc version
  │     |-- mlx 0.0.2 is excluded because none of the artifacts are compatible
  │ with the Python interpreter or glibc version
  │     |-- mlx 0.0.2.dev20231130 is excluded because prereleases are not
  │ allowed

Issue description
mlx is the new machine learning library from Apple. It comes with wheels.
in pixi shell pip install mlx suceeds with pixi's python 3.10. mlx can then be imported.
Expected behavior
The installation shouyld work, i think?

Its hard to test for me as it is only available for osx-arm64. Maybe @wolfv or @tdejager could debug why this doesn't work.

I just checked and I get a similar error message. With rip itself it works, though.
I also think the glibc error message is a bit misleading since that doesn't really make sense on osx ...

Yeah, so I tested with the master branch of rip merged into pixi and I'm running into the same issue. Even though it works with rip directly. We will need to investigate further, thanks for the report!

So it seems it cannot select the correct version because of the WheelTags that are being passed to the dependency resolution algorithm. Will have some more info later :)

Actually, I just debugged this a little bit and the problem lies in our conservative macOS version choosing. We select an old macOS version but the mlx wheels are only compatible with more recent versions.
If you add the following to your toml:
[system-requirements]
macos = "14.0"

It will start to work.
We will definitely have to make the error message better and give actionable advice.

Super debugging! Thank you folks!!

Thanks! We were already discussing making the error clearer, I mean even we had to dig into the code 😅 Alright if we close this?

Yes, totally! Happy mlx+pixi user here!


Run ruff and pep8 tests on all code in mass doc and tests

Original report by Joseph Fowler (Bitbucket: joe_fowler, ).

Might as well fix all python code style warnings. Why not?

Original comment by Joseph Fowler (Bitbucket: joe_fowler, ).

Fixed by PR 248.

Original comment by Joseph Fowler (Bitbucket: joe_fowler, ).

Don’t forget to add some kind of info to the README or other documentation about how best to set up one’s VS Code to run ruff automatically (which I am doing now, with great success) and maybe also check for pep8 violations automatically (which I am not).


python310Packages.datasette: 0.64.4 -> 0.64.5

Automatic update generated by nixpkgs-update tools. This update was made based on information from passthru.updateScript.
meta.description for python310Packages.datasette is: Multi-tool for exploring and publishing data
meta.homepage for python310Packages.datasette is: https://datasette.io/
meta.changelog for python310Packages.datasette is: https://github.com/simonw/datasette/releases/tag/0.64.5
Updates performed

Ran passthru.UpdateScript

To inspect upstream changes
Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
found 0.64.5 with grep in /nix/store/y107x7yyps9ap6sqcyyjrf84zvihb6bh-python3.10-datasette-0.64.5
found 0.64.5 in filename of file in /nix/store/y107x7yyps9ap6sqcyyjrf84zvihb6bh-python3.10-datasette-0.64.5

Rebuild report (if merged into master) (click to expand)

7 total rebuild path(s)

7 package rebuild(s)

First fifty rebuilds by attrpath
datasette
python310Packages.datasette
python310Packages.datasette-publish-fly
python310Packages.datasette-template-sql
python311Packages.datasette
python311Packages.datasette-publish-fly
python311Packages.datasette-template-sql

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/y107x7yyps9ap6sqcyyjrf84zvihb6bh-python3.10-datasette-0.64.5 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A python310Packages.datasette https://github.com/r-ryantm/nixpkgs/archive/af5b8c8acbf6897989dd5aaa34c90a8fe08e56a5.tar.gz

Or:
nix build github:r-ryantm/nixpkgs/af5b8c8acbf6897989dd5aaa34c90a8fe08e56a5#python310Packages.datasette

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/y107x7yyps9ap6sqcyyjrf84zvihb6bh-python3.10-datasette-0.64.5
ls -la /nix/store/y107x7yyps9ap6sqcyyjrf84zvihb6bh-python3.10-datasette-0.64.5/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

6 packages built:

datasette (python310Packages.datasette)
python310Packages.datasette-publish-fly
python310Packages.datasette-template-sql
python311Packages.datasette
python311Packages.datasette-publish-fly
python311Packages.datasette-template-sql

Maintainer pings

@fabaff your first additional commit is missing a closing second quotation mark, causing the build to break.
https://github.com/NixOS/nixpkgs/commit/cd55cf04526e0c3c1bf45492fdebfb9475055a47


Doesn‘t work - can‘t see device at Homebridge.

After installing the plugin and making all the settings - unfortunately I can't find a "Unifi" device in the Homebridge.
Am I doing something wrong or does the plugin simply not work?

Debug Log?

My problem same i cant see the led, only seen all devices (AC)


Add files via upload

https://www.bsz-bietigheim.de/

@timo42 I am sorry, I have to close this request without merging, because you requested to add a non-existent domain to this repository:
$ host bszbb-onmicrosoft.com
Host bszbb-onmicrosoft.com not found: 3(NXDOMAIN)

It is likely that the actual filepath has to be lib/domains/com/onmicrosoft/bszbb.txt, if the email domain is bszbb.onmicrosoft.com.
Please ensure you are familiar with this repository rules located at the bottom of this page and submit a new request with correct information. Thank you for the understanding!
In a new request please provide us with an URL of a page or another proof (.pdf or a screenshot are OK) showing that the school recognizes the domain which you are submitting as an official email domain for the students.


Update fastrtps

Although the project was rebranded to Fast-DDS, the CMake project kept the name fastrtps.

[X] Changes comply with the maintainer guide.
[X] SHA512s are updated for each updated download.
[X] The "supports" clause reflects platforms that may be fixed by this new version.
[ ] Any fixed CI baseline entries are removed from that file.
[X] Any patches that are no longer applied are deleted from the port's directory.
[X] The version database is fixed by rerunning ./vcpkg x-add-version --all and committing the result.
[X] Only one version is added to each modified port's versions file.

@microsoft-github-policy-service agree

At present, the version information of your commit is inconsistent with your local one:
##[error]Found the following errors:
##[error]versions/f-/fastrtps.json(2,): error : while parsing versions for fastrtps from version/f-/fastrtps.json
2.14.0 is declared with fb90618f4b70b4e6199791c504c57dcf638b9df7, but the local port has a different SHA d8f4041591c457d3000828b4d24984f0b9544a87.

--overwrite-version
After the first modification, please run ./vcpkg x-add-version portName to generate the corresponding json; for subsequent modifications of the same version, please use ./vcpkg x-add-version portName --overwrite-version to update git-tree.


Typescript Ref

Hello,
I'm having some kind of weird mistake with the refs.
I've been trying to get forwardRef to work for several days... maybe I missed something, maybe there's a typing issue with @theme-ui/components.
Type 'Ref<unknown>' is not assignable to type 'string | ((instance: HTMLDivElement | null) => void) | RefObject<HTMLDivElement> | null | undefined'.
  Type 'RefObject<unknown>' is not assignable to type 'string | ((instance: HTMLDivElement | null) => void) | RefObject<HTMLDivElement> | null | undefined'.
    Type 'RefObject<unknown>' is not assignable to type 'RefObject<HTMLDivElement>'.
      Type 'unknown' is not assignable to type 'HTMLDivElement'.

I reproduced the error in that sandbox.
https://codesandbox.io/s/interesting-kilby-r970e
Thanks

After a lot of unsuccessful research and trials. I finally found the key to the problem. There is a type conflict between the 'color' property of styled-system and the 'HTMLAttributes' property.
Here is a functional but imperfect example thanks to an ugly hack.
import React, { FC, forwardRef } from 'react';
import classNames from 'classnames';
import { Box as $Box, BoxProps } from 'reflexbox';

export interface TitleProps extends BoxProps {
  isType?: 'title' | 'subtitle';
  isSize?: '1' | '2' | '3' | '4' | '5' | '6';
  isSpaced?: boolean;
}

export const Title = forwardRef<HTMLDivElement, TitleProps>(
  ({ isType = 'title', isSize, isSpaced, ...rest }, ref) => (
    <$Box
      as="div"
      color={rest.color as any} /* HACK */
      ref={ref}
      {...rest}
      className={classNames({
        [`${isType}`]: isType,
        [`is-${isSize}`]: isSize,
        'is-spaced': isSpaced,
      })}
    />
  )
);

https://stackoverflow.com/questions/53711454/styled-system-props-typing-with-typescript


CTFE improved error handling + ref param bug 6934

Unfortunately this pull request is a bit complicated because one bug (6934) involved multiple problems.
There are two parts in this pull request.
(1) a cleanup to the CTFE backtraces.
In the backtrace for both CTFE and templates, it was writing directly to stderr.
I added a new error message type "errorSupplemental" to standardize this.
I made progress to fixing 6984 "CTFE generates a torrent of spurious errors, if there was a previous error" by improving the CTFE error handling in funcDeclaration::interpret and CallExp, and a improved error handling in static assert.
(2) initial refcounting for aggregate types (string, array, AA, and struct literals)
I had to do this to fix the serious bug 6934. It also gives a minor improvement to speed and memory consumption, even though it never releases any memory.
Bugs fixed:
6934 [CTFE] can't use $ in a slice of an array passed by ref
6964 Error message with __error: static assert(undefined+1)
6985 [CTFE] Non-constant case expressions can't be interpreted
Also mitigates bug 6933 from segfault without line number, into rejects-valid.

I think the refCount should be in Expression, not distributed around other nodes. I also don't see where it is incremented and decremented. Should it get an addRef() and Release() ?

I found where it was inc/dec'd. But I think the inc and dec should be encapsulated in a proper addRef() and Release(). I also think that conflating the reference count with "has it been interpreted yet" is a mistake.
The idea is that new Expression() should do the addRef() inside the constructor, and then a Release() should free the Expression. The CTFE can do the Release()'s on the ones it allocates, the rest can just harmlessly leak for now.

I found where it was inc/dec'd. But I think the inc and dec should be encapsulated in a proper addRef() and Release().

I also think that conflating the reference count with "has it been interpreted yet" is a mistake.
OK, I'll split that into a separate field. That's really the important feature in this commit, not the ref count.

The idea is that new Expression() should do the addRef() inside the constructor, and then a Release() should free the Expression. The CTFE can do the Release()'s on the ones it allocates, the rest can just harmlessly leak for now.

Oddly, this works on D1 on Windows, but fails on D1 on Linux with:
test42.d(3427): Error: CTFE fails for structs with destructors (Bugzilla 6933)
test42.d(3461):        called from here: bug2931()
test42.d(3461):        while evaluating: static assert(bug2931() == 2)
--- errorlevel 256

I checked in the D1 merge; could you please look into why it fails for D1.

I think I found it; testing now.

valgrind for the win!


Q: Maturity of this library

I apologise as I know this the wrong place as it's not an issue, if you could point me to a better place to ask this question I'm happy to go elsewhere.
Anyway, we are wondering what usage this library is getting in production environments, as we just want to confirm the project is mature enough for our usage.
Is it possible to confirm if Absa is using this in prod?

Yes, it is used in ABSA in production.
We see the status of the library as MVP. In additional to unit and integration tests in the open repository we have integration tests on our company's data that we do on premises.

It works now, thank you yruslan!


Retire VS 2019 UWP projects

Dropping support for building UWP projects using VS 2019. VS 2022 is now required to target UWP.

https://github.com/walbourn/directxtktest/pull/43


No module named 'speech_recognition'

when executing index.py i am getting this error
File "/home/pi/stephanie-va/Stephanie/boot.py", line 1, in
import speech_recognition as sr
ImportError: No module named 'speech_recognition'

ok solved it :)

hey , why STT engines take so much time , it takes like 10 sec to process my voice , i have tried google , wit , bing but same result . how can i get result faster . any tweak in python code :) not an issue here but just curious about it :) as i have used jasper before and voice processing speed  is still the same , i am running stephanie in my pi3 :)

Hmm, that's weird, can you boot up Stephanie in a regular machine (pc, mac)? because it takes at maximum 5 seconds in my machine to process the STT part. could it be your internet connection problem?

no i have tried in my ubuntu 16.04 pc but STT is taking lot of time . and another weired issue i found is tts out put rate is so fast in my pi but its ok on pc . how to fix tts talking rate

it's a system issue, try switching the driver from os to mixer and vice-versa to see which works best under TTS in config.ini file of tts_player settings.

so , STT is bringing some trouble is there cli interface so i can chat with stephanie and output comes in speaker too . i ll try to fix this in pi thank you , you are awesome man :+1:

What is the solution to the error
"No module named 'speech_recognition' #22"

you can try doing a pip install SpeechRecognition

ok solved


Extract gRPC wire protocol core classes to a protocol package.

For #1703
This is the first of a series of PRs to create a package that allows users to have simple gRPC functionality without dependencies on the gRPC It is almost purely moving classes around, with some bridge classes between armeria-specific classes for Status and compression and the gRPC ones for normal users.
After this PR, I will add some simple helper methods for doing unary server / client invocation based on these classes for users like @adriancole Want to make sure this isn't on the entirely wrong path in the first place for now.

Thanks, updated

Thanks, @anuraaga. :-)


Performance of mtcnn package

It turns out that the speed of face detection with mtcnn package is almost two times slower than with the original implementation of facenet.

Hello @LShostenko. I could not reproduce this issue.
For an RGB image with 900x1260 pixels, the process time for both implementations is almost the same:
Facenet - Total time: 0.5284574031829834
mtcnn package - Total time: 0.5193462371826172
Perhaps it might be related to the usage of the GPU. The mtcnn package is currently not allowing configuration for this scenario. Could you please post your benchmark and configuration?
If you need it, I can provide you a simple script for using the MTCNN version from facenet - the one I created for this benchmark.

Sorry, my mistake. Indeed the performance of both implementation is almost the same. I did my measures with modified code integrated to our company repository.


Fix flash of unstyled icon

First load occasionally showed a flash of an unstyled icon, this removes the icon and accounts for there being no styles loaded at all and applying minimal inline styles which expects to be displayed in a flash most of the time.
It also adds support for a container border radius customisation.

:tada: This PR is included in version 1.38.1 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


As a dApp user, I WANT to see a modal pop-up in the center of the screen that displays different available NEAR wallets SO THAT I can choose the preferred option to sign-in/connect with dApp

Acceptance criteria
GIVEN that I access dApp
WHEN I choose to connect to it and click sign-in/connect button
THEN the wallet selector modal pops-up


wercker configuration

Wercker is an online CI system, it is free for private/public repos while in beta. Once out of beta it will stay free for open-source projects  (see: https://twitter.com/Wercker/status/486148925376974848 )
Here is a wercker configuration that will build / test / vet / lint code whenever code is pushed to the repository (note that linting problems don't break the build).
Pull-Requests will be automatically built as well.
After merging the PR you should register on wercker.com and add the app for the CI to start.

Thanks!

np, just saw the badges on the readme, so cool


Add single value coordinate fix to next clisops PR

See details at:
https://github.com/roocs/clisops/compare/cmip6-area-rlds-test?expand=1

done

done


feature request: write cleaned subtitles into srt file

Dear Federico,
I did not managed to get the cleaned text into the subtitle object:
Frist I tried:
sub_gen = parse('./Keep the Home Fires Burning.srt')

for subtitle in sub_gen:
     subtitle.text = subtitle.clean_up()

I've got an AttributeError:
AttributeError: can't set attribute

My second idea was to write the data into a new subtitle object  by creating a method:
def get_clean_subtitle(subtitle):
     clean_text = subtitle.clean_up()
     return Subtitle(subtitle.index, start=subtitle.start, end=subtitle.end, text_lines=clean_text)

But here I could not access the Subtitle class. I could not import it via from pysubparser.classes import Subtitle. An ImportError is raised:
ImportError: cannot import name 'Subtitle' from 'pysubparser.classes' (/home/pfeifer/dev/pysub-parser/pysubparser/classes/__init__.py)

However, even if I would managed these issues, my goal to write the cleaned subtitles  into a srt file is not been solved, too. I am quite new in Python, thus could you explain why my effords ware not successful and add a method to write corrected subtitle files?
Best regards,
Sebastian

Hi again @spfeifer222!
You should be able to get the cleaned text of a subtitle by doing subtitle.clean as you can see here: https://github.com/federicocalendino/pysub-parser/blob/master/pysubparser/classes/classes.py#L28

I could send you a file with advertising, but I find no way to attach. Thus, here some example lines:

www.addic7ed.com
- Synced and corrected by chamallow -
- www.addic7ed.com -
contact www.OpenSubtitles.org today
to remove all ads from www.OpenSubtitles.org
- Synced and corrected by VitoSilans -

However, if you look at my fork https://github.com/spfeifer222/pysub-parser on feat-save_srt branch I made some changes. If you like we could merge it all together.
Here is what I did (and remember):

I focused on srt handling - no changes on the other types.
I introduced a Subtitles class to save all subitles of a movie.

It takes as argument/attribute:

subtitles: a list of Subtitle objects
source: the source path of the file from which the subtitles are  imported
subtype: file extension taken from source
encoding: encoding used

I add the following methods:

shift: shift all Subtitle objects by a given timedelta
write: backup original *.srt file and write (modified) subitles into file with original name. To do so,

I changed the parse function for srt files to return an initiated Subtitles object instead of a generator. Additionally, I created a writers folder.
New in the parse function is a boolean  named clean. Default is 'True` in order to clean subtitles during import.
I changed some default values for the cleaning function. Here, did I forget a possibility to change that? (I put that in to-do's - see below)
Minor changes in def __repr__(self)

To-do's (in my mind):

Possibility to change default values for clean_up function
shift function in classes.py: remove subtitle before new start time (maybe the same for after new end time.
create error class for write function.
I do not now the other filetypes for subtitles, maybe the Subtitles class need be extended to handle them correctly.

However, I am quite new to python. Please tell me what you think about and how to improve my code!
Take care!
Sebastian

Hi @spfeifer222 !
I've just pushed the version 1.2 of this library to PyPI. I added a more clean way of adding cleaners for subtitles, feel free to send a PR if you still want to add the cleaner for advertising.
I also added a writer for SRT files.
You can check the tests that I added for help on how to use this new stuff.


How should i connect my bot to c# application(unregistered channel) using direct line?

[Enter feedback here]

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

ID: ed1f3a8b-7e5f-c008-6e02-5970c558afdf
Version Independent ID: 92f45b5e-e643-8125-70ab-70dab613bb77
Content: Start a conversation - Bot Service - Bot Service
Content Source: articles/rest-api/bot-framework-rest-direct-line-3-0-start-conversation.md
Service: bot-service
GitHub Login: @RobStand
Microsoft Alias: kamrani

Hi @mahendra48, have you looked at the connect a bot to Direct Line article yet? It details how to connect your bot and application using Direct Line.

Closing due to inactivity.


[WIP] Baaca - Your ledger Bitcoin companion

This PR Introduce a new binary: 'Baaca - Your ledger Bitcoin companion'
baaca is a tool that let user install firmware on a ledger device (S/S+/X).
i've only test against S/S+ as i don't have a x in hand.

this application is separated in 2 parts:

The Iced(12.1) front-end that run in the main thread:

The GUI implementation is contained in baaca/src/gui.rs
The GUI used the Liana theme that is at the moment in baaca/src/theme.rs and baaca/src/color.rs but should be linked to the Liana GUI theme.rs and color.rs after #597 will be merged

Ledger backend that run in its own separated thread, this back-end largely reuse code from darosior ledger_installer:

This part is still messy, contained in 2 files (baaca/src/ledger.rs / baaca/src/ledger_lib.rs ), i need to rework some functions in order to have a more clean/clear API (maybe we should do that in a separate crate containing only the lib +  a CLI in order to be more reusable outside of Liana?)

they communicate via mesage through  async-channels
Fews comments about this implementation (that is still alpha):

Update of firmware is deactivated (uncommenting this line will allow used to click on a Try update button that will barely overwrite the actal app on device by installing the latest one).
The ledger thread try to connect to ledger devices every 2 seconds and stop when it get connected ( i let it poll continuously while idle before, but have sometimes weird behaviour )
I do not try the behaviour if 2 ledger devices connected
We rely on minreq as dependency, patched by dorosior because I hit an issue about IPV6 w/ his PoC.
For both fetching the firmware and know the app version installed(w/ app not opened) we have to connect to the Ledger API, that can be at the moment very slow (i sometime experience 40 seconds wait, not sure if it is about ledger API side or a minreq issue)
Wording and sequence  and sequence of info messages passed to user can be improved a lot (i'm very bad at wording :smile: )
The binary have been tested only under linux at  the moment

I think this should be left as a separate project. Probably at all, but at least for now for sure.

closing here, move there


arm64: Segfault when enabling use_egraphs=true

Given this input wasm module:
(module
  (type (;0;) (func))
  (func (;0;) (type 0)
    global.get 0
    i32.eqz
    if  ;; label = @1
      unreachable
    end
    global.get 0
    i32.const 1
    i32.sub
    global.set 0
    i32.const -320017172
    v128.load32_splat
    i8x16.bitmask
    v128.load32_zero align=1
    i64x2.extend_high_i32x4_u
    i64x2.extend_high_i32x4_u
    v128.const i32x4 0x9bececec 0x00007171 0x00000000 0x00000000
    drop
    drop
  )
  (memory (;0;) 0 3)
  (global (;0;) (mut i32) i32.const 1000)
  (export "" (func 0))
  (export "1" (memory 0))
  (data (;0;) (i32.const 0) "")
)

I get these results on a local arm64 marchine:
$ cargo run -q testcase0.wat --invoke ''
Error: failed to run main module `testcase0.wat`

Caused by:
    0: failed to invoke ``
    1: wasm trap: out of bounds memory access
       wasm backtrace:
           0:   0x44 - <unknown>!<wasm function 0>

vs
$ cargo run -q testcase0.wat --invoke '' --cranelift-set use_egraphs=true
zsh: segmentation fault  cargo run -q testcase0.wat --invoke '' --cranelift-set use_egraphs=true

The faulting instruction appears to be:
(gdb) disas $pc,$pc+20
Dump of assembler code from 0xfffff7b25038 to 0xfffff7b2504c:
=> 0x0000fffff7b25038:  ld1r    {v1.4s}, [x5]
   0x0000fffff7b2503c:  sshr    v25.16b, v1.16b, #7
   0x0000fffff7b25040:  mov     x4, #0x201                      // #513
   0x0000fffff7b25044:  movk    x4, #0x804, lsl #16
   0x0000fffff7b25048:  movk    x4, #0x2010, lsl #32
End of assembler dump.
(gdb) print/x $x5
$1 = 0xffff5cececec

so I think this may be an alignment issue? I'm not 100% familiar with vector instructions on arm myself.
cc @cfallin

Oh actually reading over the code for more than half a second I realize that this is expected to be an out-of-bounds segfault, so the actual issue here may be that the metadata for "this instruction is allowed to trap" may be getting accidentally lost during the egraphs translation

Perhaps related, but https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=52721 is an issue on x86_64 which also may be related to egraphs since the fuzz configuration there has egraphs enabled. The problem in the fuzz bug is that it's failing to execute this function where it should be successful but a trap is showing up. The fuzz test case is using a CustomUnaligned memory which means that the base address of linear memory is forcibly unaligned. That may or may not be a valid thing to do at runtime, but it seems like it may be related to this egraphs issue?

Thanks!
I have a meta-thought here actually: we've had some discussions in the last few days about a way to restructure the egraph storage to be more directly integrated into the DataFlowGraph (core CLIF structure) which would alter the specific details leading to some of these recent fuzzbugs (storing types appropriately, storing trap metadata). We're pretty sure we want to do it, we just don't have the time quite yet (perhaps in the next few weeks). Rather than spending time chasing down these fuzzbugs and then refactoring again in a few weeks, I think it might make more sense to just turn off egraph mode in fuzzing for now; to be re-enabled later. I'll go ahead and create a PR for this and we can discuss further there...

Handled by https://github.com/bytecodealliance/wasmtime/pull/5128 for now


[Feature Request] Default On/Off option for "Mouse Highlighter"

Description of the new feature / enhancement
simply add an option for setting it On/Off when system startup , I have to remember to turn on this every single time when system starts.
Scenario when this would be used?
I use this as a tool to display mouse clicks for my videos when i click mouse. but i simply don't want to remember to  turn it On every single time. I want to leave it default to On .
Supporting information
No response

/dup #14784


ARM Template: esux.json used in the wiki no longer exists

Describe the bug
The esux.json ARM template is used in the Introduction of the Wiki, in the Goal state section: https://raw.githubusercontent.com/Azure/AzOps/main/template/esux.json
It should be located here: https://raw.githubusercontent.com/Azure/AzOps/main/template/esux.json
(i.e. in the "template" folder which no longer exists).
Steps to reproduce

Open the following page: https://github.com/azure/azops/wiki/introduction#goal-state
Click on the quick start ARM Template link:

Screenshots

Thank you for reporting, while we fix this, please refer to https://github.com/Azure/Enterprise-Scale#deploying-enterprise-scale-architecture-in-your-own-environment for up to date reference implementation links.


Changing the ServiceClassCode validation for ARC, BOC, CIE, POP, RCK, T…

…RC, TRC, XCK
Fixes: https://github.com/moov-io/ach/issues/1072

Codecov Report

Merging #1075 (5fbfe2b) into master (0d49280) will not change coverage.
The diff coverage is 0.00%.

:exclamation: Current head 5fbfe2b differs from pull request most recent head d1927cd. Consider uploading reports for the commit d1927cd to get more accurate results

Additional details and impacted files
@@           Coverage Diff           @@
##           master    #1075   +/-   ##
=======================================
  Coverage   91.04%   91.04%
=======================================
  Files          68       68
  Lines        6368     6368
=======================================
  Hits         5798     5798
  Misses        333      333
  Partials      237      237


Fix mask in contribution form

Coverage remained the same at 81.355% when pulling 8ac032dba8f3b90ba721eacf32a501d87c9ac69d on fix/mask into 4f9c6d01ef9cbcfc97cdba744cda0f8a8907aa57 on master.

Coverage remained the same at 81.355% when pulling 0a61b92cd1f6b3f6c04fef393ff0c48694552496 on fix/mask into 4f9c6d01ef9cbcfc97cdba744cda0f8a8907aa57 on master.


[BUGFIX] Replacing the occurrences of gen_range with a safe alternative

Description
Following up with the issue https://github.com/rust-random/rand/issues/1326 created by @lsampras. The function gen_range in itself can cause panics and error handling isn't done for some cases. This is a unpredictable behaviour and needs to be replaced with a safe alternative which allows for error handling and recoverability.
Objective

Deciding open a safe alternative for gen_range while keeping the behaviour relatively same
Replacing the occurrences of gen_range with the decided safe alternative

Guidelines

Please mention the approach for solving the above mentioned issue and reasoning of it being recoverable.

@NishantJoshi00 I'm happy to take this one

Hey @anupj, sure I'll assign it you!
If you have any question feel free to drop them here!

@NishantJoshi00 so if I understand the issue correctly. gen_range doesn't return a Result and therefore not ideal to use.
We want to replace it with Uniform or something similar that returns a Result. Is that a fair assessment?

Yes. We need to return a result that can handle errors whenever the code panics.
Result<T, E>

Hey Nishant,
Busy two work weeks, but i have book marked couple of evenings next week to resolve this. If its too late or is a blocker the feel free to reassign; i will pickup another issue next week. Sorry just poor timing on my behalf.
Anup
On Thu, Aug 3, 2023 at 11:07, Pa1NarK @.***(mailto:On Thu, Aug 3, 2023 at 11:07, Pa1NarK < wrote:

Hi @.***(https://github.com/anupj), just checking in on the bug fix progress on GitHub. Any updates? Thanks!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you were mentioned.Message ID: @.***>

@pixincreate and @NishantJoshi00 i'm actively working on this issue this week so will reach out if I need help. Thanks for your patience.

@NishantJoshi00 after making the changes when I run cargo test --all-features I get the following error messages:
failures:

---- core::api_keys::tests::test_hashing_and_verification stdout ----
thread 'core::api_keys::tests::test_hashing_and_verification' panicked at 'called `Result::unwrap()` on an `Err` value: {"error":{"type":"server_not_available","code":"HE_00","message":"Something went wrong"}}
├╴at crates/router/src/core/api_keys.rs:47:18
├╴Failed to KMS decrypt API key hashing key
│
├─▶ Failed to KMS decrypt input data
│   ├╴at crates/external_services/src/kms.rs:82:14
│   ╰╴Failed to decrypt KMS value
│
╰─▶ failed to construct request
    ╰╴at crates/external_services/src/kms.rs:81:14', crates/router/src/core/api_keys.rs:564:10
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

---- types::storage::payment_attempt::tests::test_payment_attempt_mandate_field stdout ----
thread 'types::storage::payment_attempt::tests::test_payment_attempt_mandate_field' panicked at 'Failed to decrypt master enc key: Failed to KMS decrypt input data
├╴at crates/external_services/src/kms.rs:82:14
├╴Failed to decrypt KMS value
│
╰─▶ failed to construct request
    ╰╴at crates/external_services/src/kms.rs:81:14', crates/router/src/services.rs:264:14

---- types::storage::payment_attempt::tests::test_find_payment_attempt stdout ----
thread 'types::storage::payment_attempt::tests::test_find_payment_attempt' panicked at 'Failed to decrypt master enc key: Failed to KMS decrypt input data
├╴at crates/external_services/src/kms.rs:82:14
├╴Failed to decrypt KMS value
│
╰─▶ failed to construct request
    ╰╴at crates/external_services/src/kms.rs:81:14', crates/router/src/services.rs:264:14

failures:
    core::api_keys::tests::test_hashing_and_verification
    types::storage::payment_attempt::tests::test_find_payment_attempt
    types::storage::payment_attempt::tests::test_payment_attempt_mandate_field

test result: FAILED. 48 passed; 3 failed; 1 ignored; 0 measured; 0 filtered out; finished in 3.24s

Have you come across this before? I'm running all tests for the first time.

Hey @anupj, you can ignore that error since KMS is an AWS feature and won't work on local systems

Got it, i'll ignore these for now. thanks @pixincreate

after making the changes when I run cargo test --all-features I get the following error messages: [...]

Hey @anupj, if the code that you'd like to test is not behind a feature gate, you can just run cargo test.
If it is indeed behind a feature gate and the feature is not one of kms, s3, basilisk, or release, you should still be able to run/test it locally. The mentioned features can only be run/tested in production environments with all the services set up, they involve a significant amount of effort to be set up locally.

Thanks @SanchithHegde When I run cargo test I can move forward but I now get this error message:
failures:

---- types::storage::payment_attempt::tests::test_find_payment_attempt stdout ----
thread 'types::storage::payment_attempt::tests::test_find_payment_attempt' panicked at 'called `Result::unwrap()` on an `Err` value: Timed out while trying to connect to the database
├╴at crates/router/src/connection.rs:118:10
│
╰─▶ Timed out in bb8
    ╰╴at crates/router/src/connection.rs:117:10', crates/router/src/types/storage/payment_attempt.rs:85:14

---- types::storage::payment_attempt::tests::test_payment_attempt_mandate_field stdout ----
thread 'types::storage::payment_attempt::tests::test_payment_attempt_mandate_field' panicked at 'called `Result::unwrap()` on an `Err` value: Timed out while trying to connect to the database
├╴at crates/router/src/connection.rs:118:10
│
╰─▶ Timed out in bb8
    ╰╴at crates/router/src/connection.rs:117:10', crates/router/src/types/storage/payment_attempt.rs:130:14
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

failures:
    types::storage::payment_attempt::tests::test_find_payment_attempt
    types::storage::payment_attempt::tests::test_payment_attempt_mandate_field

test result: FAILED. 49 passed; 2 failed; 1 ignored; 0 measured; 0 filtered out; finished in 10.17s

Did I miss a step to setup a local database for testing the codebase?


Timx 287 ead field method refactor

Purpose and background context
A few updates worth noting:

Three (3) "private" methods have been added to retrieve a few key elements from the EAD-formatted XML. These elements are <archdesc>, <did>, and <controlaccess>.

<archdesc> and <did> are required by the EAD transform; if either element is missing, most (if not all) fields cannot be derived, resulting in a SkippedRecordEvent.
<did> and <controlaccess> are descendants of the <archdesc> element

(Related to 1) The new "private" methods are called inside the field methods. Previously, the collection_description, collection_description_did, and control_access_elements were derived at the beginning of get_optional_fields(). However, given that get_optional_fields() will be removed as part of the upcoming orchestration refactor, it was necessary for these "private" methods to get called inside the field methods that depend on these elements. As expected, this results in repeated calls to the methods. This should be revisited as part of the orchestration work but is outside the scope of this PR.

How can a reviewer manually see the effects of these changes?
Explain how to see the proposed changes in the application if possible.
Delete this section if it isn't applicable to the PR.
Includes new or updated dependencies?
YES | NO
Changes expectations for external applications?
YES | NO
What are the relevant tickets?

Include links to Jira Software and/or Jira Service Management tickets here.

Developer

[ ] All new ENV is documented in README
[ ] All new ENV has been added to staging and production environments
[ ] All related Jira tickets are linked in commit message(s)
[ ] Stakeholder approval has been confirmed (or is not needed)

Code Reviewer(s)

[ ] The commit message is clear and follows our guidelines (not just this PR message)
[ ] There are appropriate tests covering any new functionality
[ ] The provided documentation is sufficient for understanding any new functionality introduced
[ ] Any manual tests have been performed and verified
[ ] New dependencies are appropriate or there were no changes

Will be parsed into smaller PRs.


Added serializer directives for Guid

We're using Guids as PKs instead of ints and I think this might be used by others as well.

Good catch. Need to document this because .Net Native with its tree-shaking is major PITA for dynamic code generation.


spring.config.import configuration clashes with spring.cloud.config.enabled

Observed behaviour
A spring.config.import config property is set to optional:configserver:http://myconfigserver:5656 in a main configuration file application.properties. In the application-dev.properties config file, the property spring.cloud.config.enabled is set to false, since we don't require any property to be loaded from the remote config server on the dev profile. However, the observed behavior is that ConfigServerConfigDataLoader implementation doesn't take into account that setting and is going to try to pull that configuration from the remote server. If the connection fails, it will check for the fail-fast and isOptional flags and make a decision based on that outcome.
Intended behavior
If the spring.cloud.config.enabled property is set to false, ConfigServerConfigDataLoader should not even try to connect to the remote server and return as soon as possible.

Spring Cloud 2020.0.2
It's not an error that is thrown, only that the behavior is not the expected one.
When I disable the cloud config client, I expect the config server not to be called at all, which is not the case.

I created a small project to demonstrate the issue.
https://github.com/nucatus/spring-config-enabled-issue

the problem is that you have spring.cloud.config.enabled in a profile specific document.  My guess is that spring.config.import is processed before any properties from profiles are applied and so boot includes the config data loader from the config client.
if you move the property to application.properties, or use an environment variable, it works as expected.
@spencergibb @philwebb is this behavior intended?  Should we look at any profile specific configuration properties and apply those before fetching configuration?

The problem doesn't get worse IMO, that is the expected behavior.  Boot does not know what configserver is because you have removed disable spring cloud config and it has not config data loader to handle that protocol.
Lets take a step back...
Why disable spring cloud config in the first place?  With the optional syntax it will fail silently when the config server is not present.

Because that optional flag actually means that spring cloud config will try to connect to that server and will keep retrying until finally decides to step back. You will loose few good seconds there in the startup process, which in a development environment, it's quite a pain.
This is why we need a dev profile where we don't rely on that config loaded from the spring config remote server.
Moreover, what is then the purpose of having the ability to disable the client config if that is not working?! Basically, that flag becomes useless.

all spring.config.import entries are evaluated. They do not behave like normal properties that can be overridden. Properties in a profile can not, by definition, influence an import in the default profile. If you don't want import in default, the only option is to not put an import there.

OK. This, indeed, is the path we should have thought of. The slightly change is that we have to enable the config client and provide the config server URL thgrough environment variables for the targeted profiles and have the client config disabled on the default configuration. This is the other way around compared to the old implementation where we had a spring config server set for the default profile and config client disabled for some particular profiles, like dev.
After reading the documentation again for the spring.config.import, it is clear that that import is evaluated before any profile specific configuration is applied. However, there is a bit of confusion that comes with the added complexity. Maybe, this is because the new mechanics about how configuration is loaded in Spring Boot 2.4.

@nucatus let us know if there is anything we can do to make things clearer.  I will close this for now.

Just spent two days trying to figure out why the dockerfile command line argument does not override spring.config.import specified in application.properties.
#spencergibb
all spring.config.import entries are evaluated. They do not behave like normal properties that can be overridden.
this migration has been very painful =_=

o problema é que você tem spring.cloud.config.enabledem um documento específico do perfil. Meu palpite é que spring.config.importé processado antes que quaisquer propriedades dos perfis sejam aplicadas e, portanto, a inicialização inclui o carregador de dados de configuração do cliente de configuração.
se você mover a propriedade para application.properties ou usar uma variável de ambiente, ela funcionará conforme o esperado.
@spencergibb @philwebbesse comportamento é intencional? Devemos examinar as propriedades de configuração específicas do perfil e aplicá-las antes de buscar a configuração?

Hi Ryan, thank you very much. I was having problem with this, so I put the 'spring.config.import' first than any property and that solved it for me. I am using Spring 3.1.1

For others searching for solutions to this problem,
have a look at https://github.com/awspring/spring-cloud-aws/issues/824 and the fix part https://github.com/awspring/spring-cloud-aws/pull/1009.
In short the following is possible and may helpful if you want to disable secretsmanager and parameterstore during testing:
# src/main/test/resources/application.properties
spring.cloud.aws.secretsmanager.enabled=false
spring.cloud.aws.parameterstore.enabled=false

The above assumes src/main/resources/application.yml is used (with multi-document support and profile activation -- though not necessary)


⚠ Fortnite has degraded performance

In 2de6889, Fortnite (https://fortnite.com) experienced degraded performance:

HTTP code: 200
Response time: 1637 ms

Resolved: Fortnite performance has improved in 915f9c8.


Append livereload.js if body close tag is absent

In a webpage, if neither </body> nor </BODY>
is found (and replaced), then assume that it is a HTML5
document which omits optional tags including  body,
and inject the livereload script at the end of content.
This makes livereload work for such webpages.

Earlier, livereload only worked on webpages generated from
layouts that have a body closing tag.

There was no way to achieve this new behaviour using present
command line flags.

This behaviour is desired by all people who wish to omit
optional HTML tags, including body, in layouts. See,
https://google.github.io/styleguide/htmlcssguide.xml#Optional_Tags

It is harmless to inject the livereload script at the end
of content as a last resort when all attempts to replace
patterns (like "</body>") fail.

Anyone who wants to avoid this new behaviour (why?) can use
--disableLiveReload with hugo server (and other commands that
rebuild the site).

See #1526

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.

It is harmless to inject the livereload script at the end of content as a last resort when all attempts to replace patterns

This assumes, of course, that all content is HTML.

@bep if some other kind of content is generated, and its proper function depends on non injection of livereload.js  based on  absence of body tag, then I agree that I have not considered that case.

The non HTML content is rare currently, but I have a site that produces a JSON file that would be messed up by this PR.
Footnote remark: Your replacement logic is also slightly flawed: It seems to add an end body tag and it is more effective to use append instead of bytes.Join.

Thank you for pointing out flaws. I have improved the code.
Now, it:
- Does not end body tag when it was not there in first place
- uses append instead of bytes.Join
This is the first time I am writing something in Go. I did
look up for something like bytes.Append but there wasn't
one, so I had settled for first thing I found, that did the job.

I searched the master branch for usages (direct and indirect) of
LiveReloadInject.
This is the rough tree:

LiveReloadInject in transform/livereloadinject.go

renderAndWritePage in hugolib/site.go

pageRenderer in hugolib/site.go
taxonomyRenderer in hugolib/site.go
renderListOfTaxonomyTerms in hugolib/site.go
renderSectionLists in hugolib/site.go
renderHomePage in hugolib/site.go

For this pull request to work, it is necessary that hugo calls these
functions only to generate content that is HTML.
To support other content types, it is sensible to provide a
page specific nolivereload variable.

We have had this discussion before, and my argument is this:
If you want livereload and do not have a body in your HTML template: Add a body tag to your HTML template.

For users who omit optional tags, adding a body close tag is a workaround,
not a solution. They have no proper way to get livereload feature. Having
to change layouts to something inconsistent with their style of authoring
HTML is disheartening.  More so, because this is easily avoidable.
The requirement that injector function must allow non HTML content to pass
through cleanly, is an unclear design restriction considering that:

The injector function is called only in situations where an HTML page is
being generated.
Injection of livereload script makes sense only for HTML content.
No other kind of content requires to pass through this.
Support for correct generation of other formats, can be added by creating
clear and distinct interfaces. For example, by adding a renderAndWriteJSON
function for handling JSON. See renderAndWriteXML which does not pass
content through livereload injector.

For now, I have added a check to ensure that livereload is injected only to
documents beginning with "". I would have started with a more
inclusive check, but using regexp might slow down the service of html pages
too much. This is the most unintrusive way that I could think of, to resolve
this.
Still, if this fallback behaviour conflicts with other goals of hugo
project, please consider adding a command line flag like --forceLiveReload
for this use case. Usability of livereload feature should not depend on
how one authors HTML in layout files.

I'm closing this. This works fine as is, and making it more complex will introduce other problems, for non HTML files etc. Thanks for your contribution.


Sorted sets are pretty printed in arbitrary order

This is really weird. How can I help diagnose this?

Wrapping the thing with println and running the file via clj works as expected.
$ clj wtf.clj
#{1 2 4 5 6 7 8}

I understand this issue and will explain soon. It's too do with reparsing
the result for pretty printing losing the sorted info since the text
representation of sorted and unsorted sets is the same, I think?
On Wed, 11 Dec 2019, 07:20 Francisco Demartino<EMAIL_ADDRESS>wrote:

This is really weird. How can I help diagnose this?
[image: image]
https://user-images.githubusercontent.com/726447/70599955-3fbfc700-1bcd-11ea-8f60-a27988ed7ab9.png
Wrapping the thing with println and running the file via clj works as
expected.
#{1 2 4 5 6 7 8}
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/Olical/conjure/issues/73?email_source=notifications&email_token=AACM6XNVWSOQG43V3R4SG2LQYCIDDA5CNFSM4JZKK4M2YY3PNVWWK3TUL52HS4DFUVEXG43VMWVGG33NNVSW45C7NFSM4H7VSZPQ,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AACM6XNAAOOSHA3JGCEOGA3QYCIDDANCNFSM4JZKK4MQ
.

I can assure you it is a sorted set, it's just being unsorted when Conjure parses the output from the prepl so that it can pretty print it. (sorted-set 3 2 1) returns #{1 2 3} which Conjure will then parse as Clojure data from the string the prepl returned.
This results in an unsorted regular set of #{2 1 3} (order undefined). This is purely for pretty printing, the solution would be to move pretty printing down into the JVM / JS env hosting the prepl so that it returns an already formatted string which maintains sorting. This is something I may address in a drastic rewrite of some underlying mechanisms of Conjure.
Sadly, I don't think I can fix this right now since the string representation of a sorted-set is identical to an unsorted set :sob: I promise the value is a sorted set, it just loses the sorting when displayed in Conjure. If you pr-str it or print it yourself it'll display with sorting.

Ah, it being an issue with the pretty printing seems a bit less worrying. Thanks for the detailed explanation! I guess this issue could remain open as a heads up for the next time it comes up / tracking the "move the pretty printing down" task, but feel free to close it up as you will :)

Humble hint from a total newbie: maybe you can skip pretty-printing for PersistentTreeSets?
user=> #{1 2 3 4 5}
#{1 4 3 2 5}
user=> (type *1)
clojure.lang.PersistentHashSet
user=> (sorted-set-by < 1 2 3 4 5)
#{1 2 3 4 5}
user=> (type *1)
clojure.lang.PersistentTreeSet

Decent idea! I'll take a look soon :smile: I'll leave the issue open though, definitely useful.

I've taken the liberty to change the title to something that kind of explains the issue, just for those skimming the issue list etc. I hope that's okay!

The develop branch is now usable and doesn't have this issue (among many others!) I highly recommend you check it out :smile: kind of fixed bugs by completely rewriting the project. May be closable since I'm deprecating the old JVM implementation.

Nice! Thanks!


Add type to Portal

Expected outcome
A portal should have type field, this could be "ContextTypeDrivenPortal" or "AppDrivenPortal"
GET: api/portals/types

POST: api/portals

PUT: api/portals/{portalId}

if the portal type is "ContextTypeDrivenPortal" the body should include:
{
  // Portal data...
  type: "ContextTypeDrivenPortal",
  contextTypes: ["ProjectMaster"]
}

if the portal type is  "ContextTypeDrivenPortal" and no contextTypes is provided the endpoint should produce a validation error.
if the portal type is "AppDrivenPortal" the body should include adn the contextType field can be empty:
{
  // Portal data...
  type: "AppDrivenPortal",
  contextTypes: []
}

Business Value / Developer Experience
Easier configuration and more understandable api

User Acceptance Tests (UAT)
All portal endpoints should receive and return type on the portal object.

Environments
All testing of issues are done in project-portal-test

project-portal-prod
project-portal-test
project-portal-feature

For Backend use these

project-portal-api-prod
project-portal-api-test
project-portal-api-feature

I am not sure if I see the need for creating additional data, logic and thus more complexity on the backend/database for this. This can be inferred by checking whether the have been added contextTypes or not.
So:

ContextTypes == [] = Global
ContextTypes == ["ProjectMaster", "..."] = Contextual / ContextDriven

If the only requirement for this issue is so that the frontend doesn't have to calculate this, we can supply something in the API view model


[Improvement|testing] Use scriptfusion to immediately print PHPUnit output

Props to @madmatt for the idea.
This change updates the output of the unit tests, to use the pretty-print method, which outputs errors immediately (no waiting for all tests to finish), and show a better progress of the tests.
More information:
https://github.com/ScriptFUSION/PHPUnit-Immediate-Exception-Printer

I think I should revert this for now; It's had the effect of creating excessively verbose output.
https://github.com/silverstripe/silverstripe-framework/pull/6950
If we can get this to work on errors only that would be good, thanks @Firesphere :)

Or errors-and-warnings (including those warnings about slow tests)

It's not really any of my business, and I'm glad you've taken an interest in the plugin, but what's the problem with verbose output? I understand it might not be what you're used to seeing, but that's the whole point, and it comes with added benefits. For example, it's easy to check a specific test actually ran. Sometimes we might misconfigure PHPUnit or put a test in the wrong directory or give it an incorrect name. With the verbose output we can easily search for a test to make sure it was actually executed, just by way of example.

It's not really any of my business, and I'm glad you've taken an interest in the plugin, but what's the problem with verbose output? I understand it might not be what you're used to seeing, but that's the whole point, and it comes with added benefits. For example, it's easy to check a specific test actually ran. Sometimes we might misconfigure PHPUnit or put a test in the wrong directory or give it an incorrect name. With the verbose output we can easily search for a test to make sure it was actually executed, just by way of example.

That's ok, it's open source, so we love any feedback and aren't precious about our code. :)
The issue is that our tests runs are 2000+ tests, and we rely on build logs for debugging. When we increase the ratio of useless information / useful debug information, it becomes more maintenance burden. I see the reversal of this code as temporary until we can refine the solution to limit debugging to verbose errors, and non-verbose non-error logging.
All of the use cases you presented are perfectly valid, but they can be run locally by adding the plugin manually, and do not need to be included by default in our CI test suite.
@Bilge It's good to see you taking an interested in our ticket at https://github.com/ScriptFUSION/PHPUnit-Immediate-Exception-Printer/issues/5; As you pointed out, every project seems to have their own vision and goals for their testing suite, and as an open source project we respect that it's important for you to remain true to the goals of your own project, and not try to please everyone. :) We have that same issue, and respect those challenges.
As you quoted:

I think it should be a priority to create a PR to pass options to printers in PHPUnit so we can configure them to our heart's content and make everyone happy in a maintainable way.

As we have a project have improved our understanding of the community, we have found that making everyone happy is not only impossible at times, it probably shouldn't be a goal at all. A better goal is to allow users to build the tools themselves they need to solve their problems, rather than taking on responsibility for that directly. The challenge here is to learn to address the root problems that our users suffer, rather than trying to simply implement the solutions people want.
I would love to see some of the solutions and suggestions that come out of the above discussion; I share your idea that we should not be suppressing success at all.

When we increase the ratio of useless information / useful debug information, it becomes more maintenance burden. I see the reversal of this code as temporary until we can refine the solution to limit debugging to verbose errors

We still get the skips, warnings and errors summary at the end of the test run exactly the same as before. If that's all you're interested in just skip to the end encounter no more burden than before.


Cannot call write after a stream was destroyed

Screenshot

Expected Behaviour
Do not write to the stream after it is closed / destroyed
Actual Behaviour
Writes to stream after it was destroyed which results in an error.
Debug Information
This bug resulted when using the use/express handler created with a createHandler call. According to the code there is no check in place wether the stream was closed in the meantime.
Further Information
Maybe introduce a variable let cancelled = false; and set it to true once the stream was closed. Check for cancelled before trying to do a .write().

Hmm, I thought that the res.once('close', body.return) above the loop should suffice, but apparently not.
I am trying to write a failing test now and then I'll proceed with fixing the bug.
Thanks for reporting!

@michelalbers any luck with the repro?

Unable to reproduce. Added some tests too.

Same error:
Node version: 16.14.2
`Error: Cannot call write after a stream was destroyed
at new NodeError (node:internal/errors:371:5)
at write_ (node:_http_outgoing:750:11)
at ServerResponse.write (node:_http_outgoing:707:15)
at /Users/vadim/Projects/graphql-api/node_modules/graphql-sse/lib/use/express.js:75:56
at new Promise ()
at handleRequest (/Users/vadim/Projects/graphql-api/node_modules/graphql-sse/lib/use/express.js:75:19)
at runMicrotasks ()
at processTicksAndRejections (node:internal/process/task_queues:96:5)
at /Users/vadim/Projects/graphql-api/src/express.js:162:5 {
code: 'ERR_STREAM_DESTROYED'
}
node:internal/errors:464
ErrorCaptureStackTrace(err);
^
Error: Cannot render headers after they are sent to the client
at new NodeError (node:internal/errors:371:5)
at ServerResponse.writeHead (node:_http_server:312:13)
at ServerResponse.writeHead (/Users/vadim/Projects/graphql-api/node_modules/on-headers/index.js:44:26)
at ServerResponse.writeHead (/Users/vadim/Projects/graphql-api/node_modules/on-headers/index.js:44:26)
at /Users/vadim/Projects/graphql-api/src/express.js:166:9
at runMicrotasks ()
at processTicksAndRejections (node:internal/process/task_queues:96:5) {
code: 'ERR_HTTP_HEADERS_SENT'
}
Process finished with exit code 1
`

A repro would be very helpful as I am unable to create one myself.

The write loop should break as soon as the connection closes (see https://github.com/enisdenjo/graphql-sse/issues/69#issuecomment-1642080038).
This line takes care of it:
https://github.com/enisdenjo/graphql-sse/blob/256b590370f694afc5dbc143a2fcc3a74a41be20/src/use/express.ts#L96
I am suspicious that express itself is late in reporting the closed connection event.

Lets assume express actually is late in reporting the closed connection event. Isn't that enough reason to check the res availability before calling .write on it?

Also I suppose that setting a handler on a 'close' event put it on a Macrotask queue, while setting a promise callback put it on a Microtask queue. Because of the fact that Microtask queue is consulted more frequently by design, we can meet a situation when the "for loop" handler is called before the "once" one.

:tada: This issue has been resolved in version 2.2.2 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

It's still happening
Error: Cannot call write after a stream was destroyed
    at new NodeError (node:internal/errors:371:5)
    at write_ (node:_http_outgoing:750:11)
    at ServerResponse.write (node:_http_outgoing:707:15)
    at closed (/Users/vadim/Projects/graphql-api/node_modules/graphql-sse/lib/use/express.js:81:25)
    at new Promise (<anonymous>)
    at handleRequest (/Users/vadim/Projects/graphql-api/node_modules/graphql-sse/lib/use/express.js:75:34)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at /Users/vadim/Projects/graphql-api/src/express.js:162:5 {
  code: 'ERR_STREAM_DESTROYED'
}
node:internal/errors:464
    ErrorCaptureStackTrace(err);
    ^

Error: Cannot render headers after they are sent to the client
    at new NodeError (node:internal/errors:371:5)
    at ServerResponse.writeHead (node:_http_server:312:13)
    at ServerResponse.writeHead (/Users/vadim/Projects/graphql-api/node_modules/on-headers/index.js:44:26)
    at ServerResponse.writeHead (/Users/vadim/Projects/graphql-api/node_modules/on-headers/index.js:44:26)
    at /Users/vadim/Projects/graphql-api/src/express.js:166:9
    at processTicksAndRejections (node:internal/process/task_queues:96:5) {
  code: 'ERR_HTTP_HEADERS_SENT'
}

Wow, then the .closed flag is wrong too. 🤔

:tada: This issue has been resolved in version 2.2.3 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:

@groundmuffin, @michelalbers can you try out v2.2.3? I use the .writable flag there instead.


Interactable GUI

Thread safe interactable GUI screens
Base layer GUI HUD screen
Textures, font rendering, transparency
InputHandler focuses to determine which systems handle inputs
Different coordinate spaces to specify size and offset from anchors of GUI components

so true bestie


[translation] add repr to models

__repr__ provides a print-friendly string representation of objects which helps in debugging and in the REPL. We should add this to all wrapped models in the _models.py file.
See example here: https://github.com/Azure/azure-sdk-for-python/blob/master/sdk/textanalytics/azure-ai-textanalytics/azure/ai/textanalytics/_models.py#L123

closed with #17726


Forward/rel/6.2.5

@ironman-machine check it

Hello @LaurenSpiegel
Starting end to end procedure using the following payload:
{"REPO_NAME": "S3", "SCALITY_S3_BRANCH": "forward/rel/6.2.5", "DEFAULT_BRANCH": "rel/6.3"}
CI message: "Branch not found"
Please follow the last build of ultron/rel/6.3 for CI status.

@ironman-machine what about now

Hello @LaurenSpiegel
Starting end to end procedure using the following payload:
{"REPO_NAME": "S3", "SCALITY_S3_BRANCH": "forward/rel/6.2.5", "DEFAULT_BRANCH": "rel/6.3"}
Please follow http://ci.ironmann.io/gh/scality/Integration/7401 for CI status.

end to end passed: http://ci.ironmann.io/gh/scality/Integration/7409


Cannot find certain pages due to truncation

VBA-Docs/api directory shows that 31k documents were truncated from the list.  How do we access these files?
Additionally, can you put a link to the DEPLOYED location of these documents on the ReadMe?
Thx,
Mojo

@MojoRobbins You mean they were truncated in the GitHub repo? To find a file in GitHub, choose the Find File button in the top navigation. I'll add this link to the live docs in the ReadMe: https://docs.microsoft.com/en-us/office/vba/api/overview/


bugfix: fix for issue #22 using commons.io

This is a simple fix to issue #22 using apache commons.io as was discussed on pull request by slothspot/wisp@043e7eef62927ae6e6e34dd5ed878026fa041bd4
We like your project at our lab, and a couple of guys are experiencing this issue on Linux.
Hope this helps to close it.

Great! Thanks a bunch Ghazi.


Update create-apps-for-teams-meetings.md

Docs Build status updates of commit 570238a:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel

Docs Build status updates of commit 46f7334:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

msteams-platform/apps-in-teams-meetings/create-apps-for-teams-meetings.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching the docs.microsoft.com contributor guidesPost your question in the Docs support channel


⚠ WSINGRESOS - RECIBOPAGO has degraded performance

In ba6aa8e, WSINGRESOS - RECIBOPAGO (https://srvshyweb.yucatan.gob.mx/cgi-bin/wspd_cgi.sh/WService=wsingresos/internet/servicios/wsRecibosPagosWeb.r) experienced degraded performance:

HTTP code: 200
Response time: 6195 ms

Resolved: WSINGRESOS - RECIBOPAGO performance has improved in 400558d after 19 minutes.


Feature request: Add Bolt.cm

I only had to add the stuff for location ^~ /thumbs to your config and it worked.

Hello @Jogai!
Please add this rule manually if needed.

Thank you for your answer. I did add it manually, but I thought you might be interested in listing more cms system next to wordpress and drupal.