Business-to-business (B2B) model support

What I'm trying to achieve
Better support of business-to-business (B2B) sales.
In the B2B model, the customer is a business which, in turn, may have multiple purchasers (i.e., users), and whose purchasers may change over time. It is important in the B2B model to link all sales to the appropriate business-customer to inform marketing and customer relationship management decisions. Also, in the B2B model, certain sellers may offer discounts to customers that are purchasing in high volume, and may only offer certain products to specific customers.
It's also worth noting that I've evaluated a number of cart systems. I've only found 2 that, in my opinion, do a decent job of supporting the B2B model: TradeGecko and Odoo. TradeGecko's cart, however, is severely lacking in most of the features one expects of a cart (e.g., catalog browsing). Odoo's is fairly complete and would work for our initial needs. We'll likely be selecting Saleor, however, because we envision a number of future enhancements that are somewhat specific to our business and Saleor is fully open source while Odoo is only partially open source.
Describe a proposed solution

Introduce a Company model in the accounts module. This can be done in a way that doesn't disrupt B2C support. A User can then be optionally associated with a Company (via a foreign key).
Users who are associated with a Company will inherit settings from the associated Company including: addresses, default_billing_address, as well as a list of stored credit cards (as tokens). It doesn't look like stored credit card tokens are currently a supported feature so I think that would need to be introduced. I envision users being able to choose whether or not to share the credit card with the whole company or make it private.
Add an optional Company FK to orders.Order.
Modify the order history view to show all orders placed by the company-customer in the case that the User is associated with a Company.

I am happy to make these changes and submit them to the core. I much prefer that to maintaining a separate branch, and I think that these features would look particularly valuable to B2B users such as ourselves, especially given the dearth of solutions.
Other solutions I've tried and won't work
I can't really think of another solution to this. The best alternative would be to use a separate inventory/order management system that would identify the order's company using the users's email address (or a custom field for customer_id). A solution of this nature would only support a subset of what I'm trying to achieve, however. For example, I wouldn't be able to show a user a list of all the orders made by their company - only the orders they've made.
Screenshots or mockups
I don't think this is necessary but I'm happy to provide some if requested.

Oh i need this please. I will be very eager to contribute on this. But need someone to guide.

I've begun this work here: https://github.com/jfialkoff/saleor/tree/b2b

Hey @jfialkoff, I'm happy to read that you're choosing Saleor. I'd like to share my thoughts on your issue.
My main concern about it is how general is the use-case of the Company model and whether it will be useful and understandable to others. For sure it can't interfere with the flow for regular customers, and the visibility of it in the UI should probably be switchable in settings (I guess).
If I understand correctly, you will use that model mainly to group the orders and share addresses between users. I'm not sure though if we would use that for sharing credit cards, as we don't store them in Saleor and I guess we'll never be. This is due to security reasons (we want payment gateways to be responsible for that), second, we're planning a new storefront with checkout based on the Payment Request API, that stores credit cards in the browser. I don't know if sharing credit cards as you described would work then.
You also wrote about offering discounts or products to specific customers based on the Company. To me, it sounds like a more general feature that I'd love to have in Saleor - customer groups. As a shop admin, you should be able to create arbitrary groups of customers based on various rules, e.g., a number of placed orders, total money spent or belonging to a particular company. Those groups could be then used to create specific discounts or product-visibility rules.
Do you think that implementing such general approach would solve your issue?

Hey @maarcingebala, thanks so much for truly considering this, and for your well thought out reply. I don't have any data to back up the claim that this is generally useful but it's hard for me to understand how it wouldn't be, at least for companies that operate on this model. That said, I think B2B is a little behind B2C when it comes to ecomm so the demand might not be there, and many B2B companies have probably just shoehorned themselves into a B2C solution. I'd prefer something that works correctly for us.
I also can't speak to how intuitive it would be. It seems intuitive to me but I'm clearly biased and entrenched in the B2B market.
As far as approach, I do really like your suggestion of  Customer Groups. That sounds really powerful, and was offered by many of the systems I evaluated. That alone won't satisfy my needs because it won't allow for shared order history, addresses, or CCs (more on this later). However, I do see it as a more general, and superior, solution to offering different product sets and unique pricing. I'd be happy to use this approach to satisfy those requirements. I'd have to allow the list to to include companies and customers though. It'd be good to code this alongside a core developer since there are some design decisions we'd need to make, and I'd want to ensure the Mirumee team would accept it into master once complete.
Regarding CCs, thanks for sharing info about moving to the Payment Request API. That's a pretty interesting development I wasn't aware of. I don't think my proposal is incompatible with that move.
First, a clarification on storing CCs: I didn't mean to recommend storing actual information about the CC. The recommended approach here is to let the gateway gather all the information and return a token. With the token, you can get some non-sensitive data like name, and last 4 digits. With this approach you don't need to worry about PCI compliance. Not sure if that's an international standard or not though.
So now, a case for stored CCs. Many businesses doing online sales will also do sales and support over the phone. With a stored CC token, a representative can make a purchase on behalf of a customer much more easily, and certainly more securely (since the representative will never see all the CC info, and the information isn't passed over an insecure phone line). I do like the idea of using the Payment API, but whether the user enters their info manually or it's gathered through the API, I'd strongly argue for a stored CC feature.
It might be good to do a video chat sometime if that works for you. There's a lot to weed through here, and it seems like a voice conversation would be more efficient. Thanks!

@jfialkoff Sure, feel free to reach me via email<EMAIL_ADDRESS>and I'd be happy to schedule a video call with you to talk about this issue as well as our plans.

@jfialkoff what do you have in mind for companies discounts? In production we had global discounts for given companies (fixed percentage in user account), and the logged company user sees the prices with that percentage removed.
I'm gonna re-implement tomorrow or the following day, so if there are things that could be taken into consideration maybe for a PR.
Is this also what you are looking for? Applying a account fixed percentage to every products, no matter what category, etc.

Hey, thanks for checking in. My goal would be to be able to specify a discount (as a percentage or absolute value) to a particular category, product, or variant. I would also like the ability to override the active state of a product. This way, for my use-case, certain products could be made available only to certain companies. This is relevant to us because we produce custom products for our customers that they tend to repurchase. It might be better to introduce a new available state for this purpose instead of repurposing active.
In my ideal world, you would be able to set availability, and discounts at the global, category, product, and variant level. A good way, in my opinion, to present this to users is to introduce an interface for managing groups - a set of customers and/or companies (according to @marekbrzoska 's suggestion). Then, there'd be another interface for overriding price and availability for any category, product, or variant for any single group.
One issue that comes up here is what to do in the case that a single customer/company has multiple overrides for the same category/product/variant. In that case, I'd propose we just give them the most favorable price.


AttributeError: 'module' object has no attribute 'SIGKILL'

On Windows the execution thread throws:
Exception in thread execution:
Traceback (most recent call last):
  File "C:\Python27\lib\threading.py", line 801, in __bootstrap_inner
    self.run()
  File "C:\Python27\lib\threading.py", line 754, in run
    self.__target(*self.__args, **self.__kwargs)
  File "C:\Users\IEUser\nixstatsagent\nixstatsagent.py", line 128, in _execution
    os.kill(process.pid, signal.SIGKILL)
AttributeError: 'module' object has no attribute 'SIGKILL'

I believe, I fixed that without any additional magic, just by using SIGTERM instead of SIGKILL. It will be now a subject of testing how SIGTERM would be handled by the most stubborn plugins. In any case though, I believe, it's up to the administrator, to use a brutal SIGKILL if he really wants so, since all good dogies should obey SIGTERM!


vulkaninfo: Fix issue 202

Vulkaninfo was replacing function snprintf
with function _snprintf on windows.
This seems to be for backwards compatiblity
with VS2013.
_snprintf is considered deprecated in VS2015
as snprintf is properly implemented.
Since we are dropping compatibility with VS2013 it
seems like this replacement can be removed.
Thus, this commit removes the pre-processor command
that replaces snprintf with _snprintf.
Fixes #202

@jeremyk-lunarg That addresses the _snprintf warning, but not the fopen warning.
vulkaninfo.c(5563): warning C4996: 'fopen': This function or variable may be unsafe. Consider using fopen_s instead. To disable deprecation, use _CRT_SECURE_NO_WARNINGS. See online help for details.

@mikew-lunarg  Updated.

@mikew-lunarg Update.  The Microsoft docs confirm that out does not get set to NULL on failure.
Thanks for catching that.
Also, made a few changes to hopefully fix that AppVeyor failure.


Non-concurrently executing Vue 3 and Deepgram subtitles

Proposed title of the article
Non-concurrently executing Vue 3 and Deepgram subtitles
Proposed article introduction

This article will cover how to use Vue 3 composables to power a text-captions component that integrates with Deepgram's speech-to-text API and also illustrate how to build the AudioCaptions.vue. Some of the things covered in this article are:

Using async and await to write a composable that fetches a temporary API key from Deepgram.
Using Vue 3's watch method to react to data that is updating in real-time as Deepgram sends a text transcription back through a browser WebSocket.
Writing logic that is sensitive to the order things occur - i.e., asynchronous logic that flows between the component and the composable.

Key takeaways

By the end of this article, the following is expected;

Composables and Asynchronous Logic
Composable Using Async and Await
Composable That Relies on Asynchronous Events in Other Composables

Article quality
This article will be on point, simple to understand, well formatted and I'm sure users will be able to learn the procedure of building the AudioCaptions.vue. The code snippets in this article will be simple to understand and implement. I hope we will have a good ride all along.
References
N/A

Thank you for your response and we thank you for submitting your topic. After some careful consideration it struck us that this topic may be a bit over saturated throughout other blog sites and official documentations as previously mentioned on your topic form by our content moderator.
We typically refrain from publishing content that is covered widely on the net or other blogs. As we're more interested in original, practitioner-focused content that takes a deeper dive into programming-centric concepts.
We believe this is the best way for students to build a great portfolio (for potential employers) is by building what does not exist and what can provide the most value.
You are more than welcome to pursue another more in depth topic


Support more regex engines for testing

Is your feature request related to a problem? Please describe.
Currently, tests can only be executed with PCRE2. They should be executable with a regex engine for every flavor. Also, the --test <ENGINE> CLI interface is confusing.
Describe the solution you'd like
Extend the supported engines to include at least the following (in addition to pcre2):

rust
onig
python
node
deno
java

Getting C# to work cross-platform is more tricky, which is why it isn't included in this list for now.
Strategies

Rust, Oniguruma: Regex engine is statically linked in the executable
Python: python3 -c ...; fallback to python executable if unavailable
Node: node -e ...
Deno: deno eval ...
Java: java with a temporary class file

Batch checking
A command that tests all pomsky expressions in a directory would be immensely helpful, e.g. for pre-commit hooks and CI. It should

walk the provided directory recursively, respecting .gitignore and .pomskyignore files
follow symlinks ??
compile and test all files with a .pomsky extension
if not using a statically linked regex library, re-use the process that does the testing for all files (similarly to regex-test)
provide a summary (number of succeeded/failed tests) and errors

any chance for RE2 support?  (go and DuckDB for instance).
I'm using pomsky to generate regexes (w/o the features RE2 lacks) so testing with PCRE is equivalent but having this checked off during tests would be nice.

Rust is now supported.


[v2] Query parameters passed to filename are removed when passed to rule test function.

Do you want to request a feature or report a bug?
feature

What is the current behavior?
Requiring a file with a query parameter appended at the end works but the querystring parameter gets removed.
If the current behavior is a bug, please provide the steps to reproduce.
import './my-styles.css?module';

In webpack config:
...rules: [{
  test: path => {
    console.log(path); // /full/path/to/my-styles.css
    ....
  },
  loader: 'css-loader?...!...'
}, ...],
...

What is the expected behavior?
In webpack 1, the absolute path passed to the test function still contained the query parameter.
If this is a feature request, what is motivation or use case for changing the behavior?
This feature used to allow further customization of the loader chain instead of only relying on the extension. For e.g. we used it to force a CSS file as a CSS module by passing a ?module query parameter to the file name.
Please mention other relevant information such as the browser version, Node.js version, webpack version and Operating System.
Node.js 6+

This was changed for webpack 2.
You can match the resource query by using resourceQuery: condition in the rule.

@sokra Thanks for pointing me in the right direction 👍


Very strange bug

Finally, the subtitler works, but can't hear anything from my PC.
But when I use the voice translator, it worked 1 time, it translated my voice but after,
Any running application start to crash, until windows crashes itself and becomes blank.
And when windows don't crash, I can't stop the docker, and docker desktop won't stop running.
I called a friend for help and he couldn't help me, It's the weirdest thing that happend to me, and I have no idea how to fix that.
It happen everytime I launch the voice translator.

I tried to setup Whisper in Google Colab instead, but I got this error while I try to run and host Whisper with ngrok
`Exception in thread Thread-11:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/dist-packages/urllib3/connection.py", line 174, in _new_conn
conn = connection.create_connection(
File "/usr/local/lib/python3.9/dist-packages/urllib3/util/connection.py", line 95, in create_connection
raise err
File "/usr/local/lib/python3.9/dist-packages/urllib3/util/connection.py", line 85, in create_connection
sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/dist-packages/urllib3/connectionpool.py", line 703, in urlopen
httplib_response = self._make_request(
File "/usr/local/lib/python3.9/dist-packages/urllib3/connectionpool.py", line 398, in _make_request
conn.request(method, url, **httplib_request_kw)
File "/usr/local/lib/python3.9/dist-packages/urllib3/connection.py", line 239, in request
super(HTTPConnection, self).request(method, url, body=body, headers=headers)
File "/usr/lib/python3.9/http/client.py", line 1285, in request
self._send_request(method, url, body, headers, encode_chunked)
File "/usr/lib/python3.9/http/client.py", line 1331, in _send_request
self.endheaders(body, encode_chunked=encode_chunked)
File "/usr/lib/python3.9/http/client.py", line 1280, in endheaders
self._send_output(message_body, encode_chunked=encode_chunked)
File "/usr/lib/python3.9/http/client.py", line 1040, in _send_output
self.send(msg)
File "/usr/lib/python3.9/http/client.py", line 980, in send
self.connect()
File "/usr/local/lib/python3.9/dist-packages/urllib3/connection.py", line 205, in connect
conn = self._new_conn()
File "/usr/local/lib/python3.9/dist-packages/urllib3/connection.py", line 186, in _new_conn
raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7f9d4c93ac40>: Failed to establish a new connection: [Errno 111] Connection refused
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/local/lib/python3.9/dist-packages/requests/adapters.py", line 439, in send
resp = conn.urlopen(
File "/usr/local/lib/python3.9/dist-packages/urllib3/connectionpool.py", line 787, in urlopen
retries = retries.increment(
File "/usr/local/lib/python3.9/dist-packages/urllib3/util/retry.py", line 592, in increment
raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='localhost', port=4040): Max retries exceeded with url: /api/tunnels (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f9d4c93ac40>: Failed to establish a new connection: [Errno 111] Connection refused'))
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "/usr/lib/python3.9/threading.py", line 980, in _bootstrap_inner
self.run()
File "/usr/lib/python3.9/threading.py", line 1306, in run
self.function(*self.args, **self.kwargs)
File "/usr/local/lib/python3.9/dist-packages/flask_ngrok2.py", line 92, in start_ngrok
ngrok_address = _run_ngrok(port, auth_token)
File "/usr/local/lib/python3.9/dist-packages/flask_ngrok2.py", line 57, in _run_ngrok
tunnel_url = requests.get(localhost_url).text  # Get the tunnel information
File "/usr/local/lib/python3.9/dist-packages/requests/api.py", line 76, in get
return request('get', url, params=params, **kwargs)
File "/usr/local/lib/python3.9/dist-packages/requests/api.py", line 61, in request
return session.request(method=method, url=url, **kwargs)
File "/usr/local/lib/python3.9/dist-packages/requests/sessions.py", line 542, in request
resp = self.send(prep, **send_kwargs)
File "/usr/local/lib/python3.9/dist-packages/requests/sessions.py", line 655, in send
r = adapter.send(request, **kwargs)
File "/usr/local/lib/python3.9/dist-packages/requests/adapters.py", line 516, in send
raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='localhost', port=4040): Max retries exceeded with url: /api/tunnels (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f9d4c93ac40>: Failed to establish a new connection: [Errno 111] Connection refused'))`

When running docker in google Colab, you need to update the WHISPER_BASE_URL variable in the .env file with the public URL provided by ngrok

I did it

You might need to save changes to the file or restart the program

I'm so unlucky 😂
Got another error:

Maybe you can try running !pip install flask in a separate cell and running the cell again

I'm so unlucky 😂
Got another error:

Try run all the cell. Runtime -> Run all (iirc)

It will never work 😭
And I'm a newbie in python so, it doesn't help
* Serving Flask app '__main__'
 * Debug mode: off
INFO:werkzeug:WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead.
 * Running on http://<IP_ADDRESS>:5000/
INFO:werkzeug:Press CTRL+C to quit
Exception in thread Thread-11:
Traceback (most recent call last):
  File "/usr/local/lib/python3.9/dist-packages/urllib3/connection.py", line 174, in _new_conn
    conn = connection.create_connection(
  File "/usr/local/lib/python3.9/dist-packages/urllib3/util/connection.py", line 95, in create_connection
    raise err
  File "/usr/local/lib/python3.9/dist-packages/urllib3/util/connection.py", line 85, in create_connection
    sock.connect(sa)
ConnectionRefusedError: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/dist-packages/urllib3/connectionpool.py", line 703, in urlopen
    httplib_response = self._make_request(
  File "/usr/local/lib/python3.9/dist-packages/urllib3/connectionpool.py", line 398, in _make_request
    conn.request(method, url, **httplib_request_kw)
  File "/usr/local/lib/python3.9/dist-packages/urllib3/connection.py", line 239, in request
    super(HTTPConnection, self).request(method, url, body=body, headers=headers)
  File "/usr/lib/python3.9/http/client.py", line 1285, in request
    self._send_request(method, url, body, headers, encode_chunked)
  File "/usr/lib/python3.9/http/client.py", line 1331, in _send_request
    self.endheaders(body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.9/http/client.py", line 1280, in endheaders
    self._send_output(message_body, encode_chunked=encode_chunked)
  File "/usr/lib/python3.9/http/client.py", line 1040, in _send_output
    self.send(msg)
  File "/usr/lib/python3.9/http/client.py", line 980, in send
    self.connect()
  File "/usr/local/lib/python3.9/dist-packages/urllib3/connection.py", line 205, in connect
    conn = self._new_conn()
  File "/usr/local/lib/python3.9/dist-packages/urllib3/connection.py", line 186, in _new_conn
    raise NewConnectionError(
urllib3.exceptions.NewConnectionError: <urllib3.connection.HTTPConnection object at 0x7f193c96a8e0>: Failed to establish a new connection: [Errno 111] Connection refused

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/local/lib/python3.9/dist-packages/requests/adapters.py", line 439, in send
    resp = conn.urlopen(
  File "/usr/local/lib/python3.9/dist-packages/urllib3/connectionpool.py", line 787, in urlopen
    retries = retries.increment(
  File "/usr/local/lib/python3.9/dist-packages/urllib3/util/retry.py", line 592, in increment
    raise MaxRetryError(_pool, url, error or ResponseError(cause))
urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='localhost', port=4040): Max retries exceeded with url: /api/tunnels (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f193c96a8e0>: Failed to establish a new connection: [Errno 111] Connection refused'))

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/usr/lib/python3.9/threading.py", line 980, in _bootstrap_inner
    self.run()
  File "/usr/lib/python3.9/threading.py", line 1306, in run
    self.function(*self.args, **self.kwargs)
  File "/usr/local/lib/python3.9/dist-packages/flask_ngrok2.py", line 92, in start_ngrok
    ngrok_address = _run_ngrok(port, auth_token)
  File "/usr/local/lib/python3.9/dist-packages/flask_ngrok2.py", line 57, in _run_ngrok
    tunnel_url = requests.get(localhost_url).text  # Get the tunnel information
  File "/usr/local/lib/python3.9/dist-packages/requests/api.py", line 76, in get
    return request('get', url, params=params, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/requests/api.py", line 61, in request
    return session.request(method=method, url=url, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/requests/sessions.py", line 542, in request
    resp = self.send(prep, **send_kwargs)
  File "/usr/local/lib/python3.9/dist-packages/requests/sessions.py", line 655, in send
    r = adapter.send(request, **kwargs)
  File "/usr/local/lib/python3.9/dist-packages/requests/adapters.py", line 516, in send
    raise ConnectionError(e, request=request)
requests.exceptions.ConnectionError: HTTPConnectionPool(host='localhost', port=4040): Max retries exceeded with url: /api/tunnels (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x7f193c96a8e0>: Failed to establish a new connection: [Errno 111] Connection refused'))

Ok maybe try disconnecting and deleting the run time, then click run time, run all again

I got the exactly same error

Did you make any changes to the notebook?

No, I just did what you said, I disconnected, deleted the runtime and run all

I updated my files from GitHub, it solved the problem for whisper on Colab


Fade out irrelevant text on symbol selection

Implement the first version of the "declutter" interaction, where selecting a symbol causes the text using that symbol to be foregrounded, and all other text to fade into the background. As of issue #48, the pipeline has been augmented to support this.
As part of this task, we need to:

[ ] update the API to return bounding boxes of the sentences that a symbol is used in
[ ] update the existing public database schema to support our main test papers
[ ] extend the UI interactions with the abovementioned interaction

See an early candidate implementation in a development branch at 7ace207041c210d12d85b24c0148708357633150.

Additional challenges that will need to be addressed in future issues:

[ ] accurate inference of order of sentences
[ ] In paper 1904.02792, some symbols are matched to the wrong sentences (i.e. finding symbols in prose sentences, though maybe this was fixed with some recent bug-fixes)


Alternate Type based on superclass or interface

Please take the time to search the repository, if your question has already been asked or answered.

[x] What version of the library are you using? Is it the latest version? The latest released version is

What kind of issue is this?

[x] Question. Is this a question about how to do a certain thing?

[ ] Bug report. If you’ve found a bug, spend the time to write a failing test. Bugs with tests or
steps to reproduce get fixed faster. Here’s an example: https://gist.github.com/swankjesse/6608b4713ad80988cdc9

[ ] spring xml/java config that is relevant
[ ] springfox specific configuration if it makes sense
[ ] include any output you've received; logs, json snippets etc.; and what the expected output should be
[ ] if you have a repo that demonstrates the issue for bonus points! See this example

[x] Feature Request. Start by telling us what problem you’re trying to solve. Often a solution
already exists! Don’t send pull requests to implement new features without first getting our
support. Sometimes we leave features out on purpose to keep the project small.

Please do consider starring this repository if you do like this project and find it useful.

I'd like to create an alternate type rule where original type can be the super or interface of the class being processed.
For example, if I have class Dog extends Animal, and the Docket builder defines:
.alternateTypeRules(AlternateTypeRules.newRule(Animal.class, String.class))

I would expect the swagger output to define Dog as a string. Is this possible? I've searched for this and looked at the codebase, and it doesn't seem to be there.

Alternate type rules are explicit. You can use conventions to solve that yourself, see this example

I have same problem, do you resolve it?
I declared a interface of enum, but I would expect enum to be shown on the swagger api debug page
I also try to use example of @ApiModelProperty or subType of @ApiModel, all useless

I have same problem, do you solve it?
I declared a interface of enum, but I would expect enum to be shown on the swagger api debug page
I also try to use example of @ApiModelProperty or subType of @apimodel, all useless

I have same problem, do you solve it?
I declared a interface of enum, but I would expect enum to be shown on the swagger api debug page
I also try to use example of @ApiModelProperty or subType of @ApiModel, all useless

I have same problem, do you solve it?
I declared a interface of enum, but I would expect enum to be shown on the swagger api debug page
I also try to use example of @ApiModelProperty or subType of @ApiModel, all useless

I have same problem, do you solve it?
I declared a interface of enum, but I would expect enum to be shown on the swagger api debug page
I also try to use example of @ApiModelProperty or subType of @`ApiModel, all useless


Update sbt-native-packager to 1.7.0

Updates com.typesafe.sbt:sbt-native-packager from 1.6.2 to 1.7.0.
GitHub Release Notes - Changelog - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "com.typesafe.sbt", artifactId = "sbt-native-packager" } ]

labels: sbt-plugin-update, semver-minor

Codecov Report

Merging #485 into master will not change coverage by %.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #485   +/-   ##
=======================================
  Coverage   79.14%   79.14%
=======================================
  Files         110      110
  Lines        3419     3419
  Branches       85       85
=======================================
  Hits         2706     2706
  Misses        713      713

Continue to review full report at Codecov.

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


Increased test coverage for forms.ImageField.to_python().

Added a test for ImageField to check that an error is raised if Pillow doesn't recognise the image. This is to cover these lines here.
The sample image I took from Pillow's own repo, a little unsure if this is frowned upon?
I tried to cover line 629/630 using TemporaryUploadedFile. Whilst I can get these lines to run by creating a 'fake' file, Pillow of course can't open it. So it didn't feel like a great test.

@smithdc1 Thanks :+1: I added assertion also for "temporary" corrupted image.

Merged in 911545da1d8d263f650721f6985e1d43e84d68eb.


(7.7) AmazonS3Sender produces invalid XML when action=write

❗ please do not add sensitive information in issues, you can provide extra information via email using issue number as reference ❗
Describe the issue
The following line causes the name attribute to appear twice in the XML produced by AmazonS3Sender when action=write:
https://github.com/ibissource/iaf/blob/7.7-release/core/src/main/java/nl/nn/adapterframework/filesystem/AmazonS3FileSystem.java

In the 7.8 release and master branches this has been changed to bucketName.
Reporter
Laurens

Laurens can we consider this to be a backport request?

Yes, I made a PR #4604 for the 7.7 release branche


Error in "Explore Robots" session in tutorial

Hi,
I try to follow the tutorial here https://github.com/vikashplus/robohive/wiki/6.-Tutorials-&-FAQs#explore-robots, but it shows the error below which seems confusing:

Thanks in advance!

Thanks for catching the bug. I have resolved the bug 65d129b7b150b4c72f0e119dfaf105bc7d32caf9. It will be a part of the next release which is slated in roughly 2 weeks.
Thanks for your interest in RoboHive.


Starting signalhub-server internal

For local installation it would be cool to add possibility to start the hub internal. something like:
var hub = signalhub('robotopia', [
  P2P_CONFIG.habUrl
])

@stritti Just to make sure I understand this right.
Instead of the provided SignalHub server you want to run Robotopia locally and use your own SignalHub server instead of the provided on.
If it's the case that you want to run it locally anyway you can simply edit this:
https://github.com/robotopia-x/robotopia/blob/38e43f1d546aafacfad8a121cea2e1fd3d050ac7/index.js#L1-L4
And build and start it on your own system.
If this is not what you meant, feel free to open this issue again.
Thank you

Hi @timgrossmann thanks for the pointer. I found this,
The base issue was, that you will receive a CORS-Exception if you run the project locally using existing hub. See console of browser if you run presenter mode (also on http://robotopia.co/#presenter):
No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://robotopia.co' is therefore not allowed access. The response had HTTP status code 403.
To get a easy setup to run, I thought it could be a good idea to add the hub internally.
BTW, I switched for now to https://signalhub-jccqtwhdwc.now.sh/, which works for me for the moment.


updated readme.md

I have added all the necessary steps about how to contribute to this project in the readme.md file. I hope you will like it and merge it and provide me a hacktoberfest-accepted label.

Thanks for Your help :)


[Reimplementation] How to install mmdet 2.11.0?

Prerequisite

[X] I have searched Issues and Discussions but cannot get the expected help.
[X] I have read the FAQ documentation but cannot get the expected help.
[X] The bug has not been fixed in the latest version (master) or latest version (3.x).

💬 Describe the reimplementation questions
when running tools/train.py,it told me that "ConfigDict" object has no attribute 'model'.I think maybe I use wrong version, because I want mmdet 2.11.0, but I can only get version 2.28.1 if I install flollowing readme.
How can I install mmdet 2.11.0?
Environment
Python 3.8, Pytorch 1.13.1
Expected results
I want some Installation command for installing mmdet 2.11.0
Additional information
I changed some code to impliment Knowledge Distillation, but I think it has nothing to do with this issue.

You can git clone the code, then git checkout v2.11.0. Thus when you change the code, it will take effect.


Allows chaining when adding file system binds.

Impl note: rather than change the method name of addFileSystemBind, I have added a delegating method following the with... convention, used by other chaining methods.

Thanks - this was needed! Will merge shortly.


Generate Input Action Names

Inputs are defined in project settings, and could easily by generated by SceneGen too:

This turned out to be more complicated than I guessed:

There's no method on ProjectSettings to list all settings, just accessors to look them up by name
A name would be Input/left but left is user defined, so we can't know it ahead of time.
I was about to propose it be added when I found this: https://github.com/godotengine/godot-proposals/discussions/4794 which points to using getPropertyList() function on Object
But there's an issue in SwiftGodot preventing the ProjectSettings singleton from being reachable:
https://github.com/migueldeicaza/SwiftGodot/issues/171

Once that issue is fixed, it should be a matter of digging into getPropertyList to find any properties prefixed with input/ and then looking them up using the ProjectSettings methods.

This is done and working for me locally, just waiting for SwiftGodotKit to bump its SwiftGodot dependency, and then I'll push it.


An Item Input Suggestion

An Item Input Suggestion
Describe your suggestion:
It'll certainly become very convenient for automatically doing things if could add Fay Crafter's input items' support.
Describe alternatives you've considered:
If the hopper could input items, it'll be enough.
Of cource we'll appreciate it that if you add some support for mods like EnderIO and Applied Energistics XD.
Additional context:

All the measures I could come up with had been tried three days ago.
Including hopper, Immersive Engineering's Conveyor Belt, EnderIO's conduits, Applied Energistics's ME Interface and Export bus.

This is something I've been mulling over for a while, actually. The problem is, each slot can take a full stack of items. So how do you handle inputs from a hopper? Accept one item at a time, and distribute them per slot? It would work for the first recipe, but you'd then need something to determine that the hopper is empty and that you can now put another set of items in...
It's complicated, which is why I haven't added "activate fey crafter" feature to dispensers-using-knives.
On the flip side, in the future, with the elemental grove (focused around automation, amongst other things), or even without, I could do some sort of ritual involving 5 separate containers surrounding a fey crafter with the ingredients, and a chest underneath, and it could take 1 of each and try crafting with it...
Now, that is a much more workable idea.

Thx for reply my Suggestion!!!
Emmm..... A crazy idea would be workable if the hopper could be support.
It's based on EnderIO's impulse hopper, Extra Utilities' user and hopper.
The EIO's impulse hopper could output a set of things once.
Then I could use the user to automatically right click crafter with the knife.
But what you said is so fascinating XD.
It seems like thaumcraft's Infusion. That's very splendid, impresive indeed.

Actually, the concept is very similar to how the alchemy stand used to be automated in 1.7.10 for Blood Magic -- except you had to specify the item that you were trying to construct -- I can also do it that way, because presumably you have 1 of the thing you're trying to automate.
Alternately, I could make a separate fey crafter designed for automation where you can just put in the item that you want to craft and it will try crafting that... options!

I'll be delaying this until 3.2 unfortunately. At this point, I just want to get 3.1 released.


Smoke test often fails with error "PR for Reconciling HLD not found"

Describe the bug:
While running smoke tests locally or from my own environment in AzDO, I run into this error almost 75% of the time. Although there is a PR for Reconciling HLD, it doesn't seem to find it and fails the smoke test. See here for an example.
To Reproduce:
Run a smoke test locally or from an AzDO environment
Expected behavior:
PR for Reconciling HLD should be found since it is successfully created
Screenshots:

Additional context:
Low-pri, since it does not fail in master.
Does this require updates to documentation?:
No

Related: This is also happening in smoke tests on master but the error looks like this:

Since the reconciling PR was not approved and merged, this pipeline fails as it can't cd into that directory.


Merge pull request #1 from DMPRoadmap/master

Pull
Fixes # .
Changes proposed in this PR:

Closing as the PR contains no changes


Repository.save not fully updating postgres database

Hello again, here is my situation:

I create an entity, and save it to the database. This works as expected
I update the entity, including some data in a joined foreign table
I call repository.save again, and the data in the foreign table is inserted, but the entity is not updated

The repository has not been customized:
@Repository
interface ShipmentRepository : LcR2dbcRepository<ShipmentEntity, Long>

This is the initial save, which works as expected.
        var shipment = ShipmentEntity()
        shipment.createdBy = auth.id!!
        shipment.name = request.name
        shipment.fragile = request.fragile
        shipment.weight = request.weight
        shipment.length = request.length
        shipment.width = request.width
        shipment.height = request.height
        shipment.storeId = request.storeId.value.toLong()

        val shipmentHistory = arrayListOf(ShipmentHistoryEntity())
        shipmentHistory[0].shipment = shipment
        shipment.history = shipmentHistory

        shipment = shipmentRepository.save(shipment).awaitSingle()

For debugging purposes, this is the corresponding SQL statements run by r2dbc (these look good to me):
2022-04-02 04:09:18.307 DEBUG 11312 --- [actor-tcp-nio-1] o.s.r2dbc.core.DefaultDatabaseClient     : Executing SQL statement [INSERT INTO shipment (id, name, created_by, customer_id, delivery_image, delivery_image_ext, store_id, fragile, weight, width, length, height, reserved_at, store_location, customer_location) VALUES (NEXTVAL('shipment_id_seq'), $1, $2, $3, NULL, NULL, $4, $5, $6, $7, $8, $9, NULL, NULL, NULL)]
2022-04-02 04:09:18.604 DEBUG 11312 --- [actor-tcp-nio-1] o.s.r2dbc.core.DefaultDatabaseClient     : Executing SQL statement [INSERT INTO shipment_history (id, status, updated_at, driver_id, transport_id, shipment_id) VALUES (NEXTVAL('shipment_history_id_seq'), $1, $2, NULL, NULL, $3)]

Then some updates are made to the shipment entity:
            shipment.customerId = data.createShipmentUserInfo.toLong()

            val storeLocation = addressData.createShipmentAddressInfo.storeLocation
            val customerLocation = addressData.createShipmentAddressInfo.customerLocation
            shipment.storeLocation =
                geometryFactory.createPoint(Coordinate(storeLocation.longitude, storeLocation.latitude))
            shipment.customerLocation =
                geometryFactory.createPoint(Coordinate(customerLocation.longitude, customerLocation.latitude))
            val newHistory = ShipmentHistoryEntity()
            newHistory.status = ShipmentStatus.REQUESTED
            newHistory.shipment = shipment
            shipment.history.add(newHistory)

            shipmentRepository.save(shipment).awaitSingle()

I understand that the geometry point updates may be a unique case, however customerId is a simple bigint/long, but that is not updating either. Here is the corresponding SQL:
2022-04-02 04:09:32.218 DEBUG 11312 --- [actor-tcp-nio-2] o.s.r2dbc.core.DefaultDatabaseClient     : Executing SQL statement [INSERT INTO shipment_history (id, status, updated_at, driver_id, transport_id, shipment_id) VALUES (NEXTVAL('shipment_history_id_seq'), $1, $2, NULL, NULL, $3)]

As you can see, the new history element is generated, but nothing in shipment is updated, even though customerId, customerLocation, and storeLocation have been updated. Note that I updated the r2dbc driver to org.postgresql:r2dbc-postgresql:0.9.1.RELEASE, to support the PostGis extension (for the geometry type). Am I doing anything wrong here?

I am also getting a second error trying to get the Geometry/Point type working:
2022-04-02 19:55:17.784  WARN 18080 --- [atcher-worker-1] n.g.e.SimpleDataFetcherExceptionHandler  : Exception while fetching data (/createShipment) : Sub-entity without @ForeignKey is not supported: storeLocation

org.springframework.data.mapping.MappingException: Sub-entity without @ForeignKey is not supported: storeLocation
	at net.lecousin.reactive.data.relational.mapping.LcEntityReader.readEntityProperty(LcEntityReader.java:169) ~[core-0.8.1.jar:na]
	Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException:
Error has been observed at the following site(s):
	*__checkpoint ⇢ SELECT FROM ShipmentEntity AS e WHERE e.id EQUALS 21
Original Stack Trace:
		at net.lecousin.reactive.data.relational.mapping.LcEntityReader.readEntityProperty(LcEntityReader.java:169) ~[core-0.8.1.jar:na]
		at net.lecousin.reactive.data.relational.mapping.LcEntityReader.readProperty(LcEntityReader.java:113) ~[core-0.8.1.jar:na]
		at net.lecousin.reactive.data.relational.mapping.LcEntityReader.read(LcEntityReader.java:99) ~[core-0.8.1.jar:na]
		at net.lecousin.reactive.data.relational.query.SelectExecution$JoinStatus.readNewInstance(SelectExecution.java:549) ~[core-0.8.1.jar:na]
		at net.lecousin.reactive.data.relational.query.SelectExecution$RowHandler.handleRow(SelectExecution.java:584) ~[core-0.8.1.jar:na]
		at reactor.core.publisher.LambdaSubscriber.onNext(LambdaSubscriber.java:160) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxPeek$PeekSubscriber.onNext(FluxPeek.java:200) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onNext(FluxOnErrorResume.java:79) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxUsingWhen$UsingWhenSubscriber.onNext(FluxUsingWhen.java:358) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxFlatMap$FlatMapMain.tryEmit(FluxFlatMap.java:543) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxFlatMap$FlatMapInner.onNext(FluxFlatMap.java:984) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxHandle$HandleSubscriber.onNext(FluxHandle.java:119) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.MonoFlatMapMany$FlatMapManyInner.onNext(MonoFlatMapMany.java:250) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxHandleFuseable$HandleFuseableSubscriber.onNext(FluxHandleFuseable.java:184) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxFilterFuseable$FilterFuseableConditionalSubscriber.onNext(FluxFilterFuseable.java:337) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxContextWrite$ContextWriteSubscriber.onNext(FluxContextWrite.java:107) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onNext(FluxPeekFuseable.java:854) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onNext(FluxPeekFuseable.java:854) ~[reactor-core-3.4.13.jar:3.4.13]
		at io.r2dbc.postgresql.util.FluxDiscardOnCancel$FluxDiscardOnCancelSubscriber.onNext(FluxDiscardOnCancel.java:91) ~[r2dbc-postgresql-0.9.1.RELEASE.jar:0.9.1.RELEASE]
		at reactor.core.publisher.FluxDoFinally$DoFinallySubscriber.onNext(FluxDoFinally.java:130) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxHandle$HandleSubscriber.onNext(FluxHandle.java:119) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxCreate$BufferAsyncSink.drain(FluxCreate.java:793) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxCreate$BufferAsyncSink.next(FluxCreate.java:718) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxCreate$SerializedFluxSink.next(FluxCreate.java:154) ~[reactor-core-3.4.13.jar:3.4.13]
		at io.r2dbc.postgresql.client.ReactorNettyClient$Conversation.emit(ReactorNettyClient.java:635) ~[r2dbc-postgresql-0.9.1.RELEASE.jar:0.9.1.RELEASE]
		at io.r2dbc.postgresql.client.ReactorNettyClient$BackendMessageSubscriber.emit(ReactorNettyClient.java:887) ~[r2dbc-postgresql-0.9.1.RELEASE.jar:0.9.1.RELEASE]
		at io.r2dbc.postgresql.client.ReactorNettyClient$BackendMessageSubscriber.onNext(ReactorNettyClient.java:761) ~[r2dbc-postgresql-0.9.1.RELEASE.jar:0.9.1.RELEASE]
		at io.r2dbc.postgresql.client.ReactorNettyClient$BackendMessageSubscriber.onNext(ReactorNettyClient.java:667) ~[r2dbc-postgresql-0.9.1.RELEASE.jar:0.9.1.RELEASE]
		at reactor.core.publisher.FluxHandle$HandleSubscriber.onNext(FluxHandle.java:119) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxPeekFuseable$PeekConditionalSubscriber.onNext(FluxPeekFuseable.java:854) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onNext(FluxMap.java:220) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.core.publisher.FluxMap$MapConditionalSubscriber.onNext(FluxMap.java:220) ~[reactor-core-3.4.13.jar:3.4.13]
		at reactor.netty.channel.FluxReceive.drainReceiver(FluxReceive.java:279) ~[reactor-netty-core-1.0.14.jar:1.0.14]
		at reactor.netty.channel.FluxReceive.onInboundNext(FluxReceive.java:388) ~[reactor-netty-core-1.0.14.jar:1.0.14]
		at reactor.netty.channel.ChannelOperations.onInboundNext(ChannelOperations.java:404) ~[reactor-netty-core-1.0.14.jar:1.0.14]
		at reactor.netty.channel.ChannelOperationsHandler.channelRead(ChannelOperationsHandler.java:93) ~[reactor-netty-core-1.0.14.jar:1.0.14]
		at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:324) ~[netty-codec-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.handler.codec.ByteToMessageDecoder.fireChannelRead(ByteToMessageDecoder.java:311) ~[netty-codec-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.handler.codec.ByteToMessageDecoder.callDecode(ByteToMessageDecoder.java:432) ~[netty-codec-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.handler.codec.ByteToMessageDecoder.channelRead(ByteToMessageDecoder.java:276) ~[netty-codec-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:357) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.DefaultChannelPipeline$HeadContext.channelRead(DefaultChannelPipeline.java:1410) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:379) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:365) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:919) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:166) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:722) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:658) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:584) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:496) ~[netty-transport-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:986) ~[netty-common-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.72.Final.jar:4.1.72.Final]
		at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.72.Final.jar:4.1.72.Final]
		at java.base/java.lang.Thread.run(Thread.java:833) ~[na:na]

I have tried switching storeLocation to org.locationtech.jts.geom.Geometry but still getting the error. This support was added to r2dbc recently: https://github.com/earlbread/r2dbc-postgresql/pull/1 so I'm not sure if it's compatible with your library or if I'm doing something wrong.

The version 0.9.0 should fix the issue with customerId not updated. However for Geometry types, it is not yet supported by this library. I'll look into this to add this feature.

Hi Lecousin, updating is still not working for me. Even my entity have ID (I am fetching it by email, than change some property and saving), final SQL is INSERT where it fails on UNIQUE constraint.
I updated to version 0.9.0, I am using postgres, kotlin
Entity is defined as:
@Id
@GeneratedValue(strategy = GeneratedValue.Strategy.SEQUENCE, sequence = "personal_user_id_seq")
var id: Long? = null,

If I am debugging, I can see that the entity object has also additional property _lcState = null if this helps
Debug message: Caused by: org.springframework.dao.DataIntegrityViolationException: executeMany; SQL [INSERT INTO personal_user (id, first_name, last_name, password, registration_date, email, username) VALUES (NEXTVAL('personal_user_id_seq'), $1, $2, $3, $4, $5, $6)]; duplicate key value violates unique constraint "personal_user_email_key"; nested exception is io.r2dbc.postgresql.ExceptionFactory$PostgresqlDataIntegrityViolationException: [23505] duplicate key value violates unique constraint "personal_user_email_key"

@chrisvettese for the geometry types, even it is not yet fully supported by this library, if you don't need schema generation, you can already use the specific types from the r2dbc postgresql driver: io.r2dbc.postgresql.codec.Point... This seems to work.

Good to know, thank you for investigating these issues.


add test-driver node to templates

The integration tests that we run are executed on a node within the cluster. This node should be a dedicated node that is not part of the K8s cluster (= has no agent installed). The cluster definition should offer an option to provision such a test-driver server.

The solution is a little different from the one proposed in the issue's description. Instead of introducing a new kind of node, we added an boolean option "agent" to all custom nodetypes to decide individually if a certain nodetype should come with an agent installed. As the default is "true", that change is backward compatible. If an agent-free node is required, just set "agent" to "false"


Waynergy client on kde wayland system.

Hello. I am running input-leap on my windows host and waynergy on a laptop.
Input-leap is version 2.4.0-release 282523a3
Waynergy is version 0.0.15
My issue is specifically I can get regular character keys to map. things like letters numbers etc, however all modifier keys and combinations of keys do not seem to register. I did run waynergy-mapper to correct the keymap and stored the raw-keymap it generated under .config/waynergy/config.ini which seemed correct. However I am not 100% positive.
I generated the waynergy-mapper keymap by running waynergy then pressing the keys it asked me.
even after that and restarting waynergy I did not seem to be able to get the super/windows key to work or ctrl, alt etc. however shift did work which was nice.
The command im running to launch waynergy is
waynergy -b kde -d <IP_ADDRESS>

Unsure if this is some sort of kde wayland limitation or waynergy not quite handling stuff correctly.
Help would be greatly appreciated. Thank you!

Can you post the raw-keymap section you're using? Also, as a sanity check, if you run waynergy-mapper again (to try and correct the mapping again) does it generate any output?

Sorry to waste your time. I apparently needed to remap another time. I guess I didn't press the right keys sometimes yesterday. Thank you for your time and have a great day


Bad grep flag in sops:encrypt task

This should be a lower case -l
  -L, --files-without-match  print only names of FILEs with no selected lines
  -l, --files-with-matches  print only names of FILEs with selected lines

https://github.com/onedr0p/cluster-template/blob/38d00e2197abf549da3c7f39fb618041d1aa9fb3/.taskfiles/Sops/Taskfile.yaml#L21

I'm dumb...  lol.  Encrypt is fine.  The decrypt needed the lower case -l.  Can close the PR if you don't want the decrypt.

As of sops 3.9.0 we can now use the filestatus arg, so this can be improved in other ways, e.g.
sops filestatus cluster-secrets.secret.sops.yaml | jq --exit-status '.encrypted'


Make development dependencies optional

WIth these changes if you add phoenix_gen_socket_client to your project you won't end up with potentially unwanted dependencies (and you won't get dependency conflict errors).
Fixes #32

I'm closing this in favour of #35, which is a simpler PR (doesn't include the :optional directive).


Validating Email and password

[X] Would you like to take up this task?
[x] Are you from GSSoC'23?

✨
Feature request

Is your feature request related to a problem?
Yes, Validation of Email and password while signing up is required

Describe the solution you'd like
I'd like to add a validation part to the Email and password, and password to confirm password. On letting our users just put a random weak password will be cracked easily, on doing this the users will get to know we care about their credentials.

| Screenshot | |
I would like to take up this task, I believe I can complete this task.
THANK YOU!

Hey @sourabhsikarwar, I've linked a pull request. Let me know if changes are to be done.
THANK YOU!


Conditionally load IEx and related assets based on viewport

User story
In https://github.com/mdn/sprints/issues/921 a couple of initial tests and experiments was done to see if there is a quick fix to the performance issues on mobile with regards to the interactive examples.
We have come to the conclusion that the only way we will gain the needed performance improvements for mobile users is to conditionally load IEx based on viewport dimensions.
To do this the following changes needs to be made to the existing code:
KumaScript
The EmbedInteractiveExample needs to have the following changes:

Set the src url of the iframe as a data attribute(data-iframe-src) instead of directly on the src attribute
Set the src attribute value to about:blank
Add the class hidden to the iframe
To more uniquely identify the IEx iframe, give it an id of iex-interactive

Kuma
Add a new script called iex-init.js that:

Test whether the viewport size is equal to mobile using matchMedia
If we are on mobile, do nothing further
If the above is not true, check for the presence of an iframe with the id iex-interactive

If the iframe is not found.

Do nothing

If the iframe is found.

Load and inject the following scripts async using fetch or XHR
1.1 perf-post-message-handler.js
1.2 post-message-handler.js
1.3 interactive.js
Once the above is complete, get the source url for the iframe from the above-mentioned data attribute, set the iframe src attribute, remove the hidden class.

There are some minor changes needed to interactive.js to ensure it executes correctly in the new context but, from here on everything should work as it currently does.
Tests
There is no easy way to test this alongside the current implementation so, I suggest the following approach:

Test existing implementation locally using auditing tools in DevTools and record the stats on desktop and mobile
Make changes as detailed
Test new implementation locally using auditing tools in DevTools and compare stats
If the stats indicate a positive result
Open pull request for review
Push to production
Watch high traffic pages for a period of 5 days?
Based on the results, back out the changes or, leave in place if successful.

Acceptance criteria

[ ] IEx works on the desktop as it does currently
[ ] IEx is not loaded at mobile viewport sizes, the iframe is not loaded, and no unnecessary assets and scripts are loaded/executed.
[ ] We see a significant performance improvement on mobile

Tasks
Tasks are described in the above user story section.

I'm generally okay with this, even though I'd really prefer testing the changes side by side.
Can you add another acceptance criteria for performance on desktop? That one should not be negatively impacted by this.

Watch high traffic pages for a period of 5 days?
Can you specific what we'd be watching for?


Custom skill pointing to Azure Function via System Managed Identity get Unauthorized

Cognitive Search (CS) indexer is unable to enrich documents calling Azure Function (AF) endpoint. The AF is setup with EasyAuth and AppRoles to enforce authentication and the indexer's system managed identity is given permissions to execute the AF endpoint (a parallel setup to ensure AppRoles are effective is setup and working fine). Upon execution the following error message is returned:
"statusCode": 400,
"name": "Enrichment.WebApiSkill.entity-enrichment-skill",
"errorMessage": "Could not execute skill because the Web Api request failed.",
"details": "Web Api response status: 'Unauthorized', Web Api response details: 'You do not have permission to view this directory or page.'",
"documentationLink": "https://go.microsoft.com/fwlink/?linkid=2106475"

This page lists System-Managed Identity auth as supported scenario, but it is unclear if additional skill parameters  need to be added to what is already defined in the documentation.
An example also misses to point out authorization aspect of calling an external API and assumes AuthorizationLevel.Function that necessitates a ?code=***** to be passed in the URI of the skillset definition.
What is the setup necessary to authorize a request from a Indexer/CustomWebSkill to an EasyAuth fronted Azure Function API endpoint?

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

ID: 3a54c00f-9e78-d4d9-cc62-1ec2b05e320e
Version Independent ID: a0a19016-ccc1-43f9-7ac7-317f4ebd8b1c
Content: Connect using a managed identity - Azure Cognitive Search
Content Source: articles/search/search-howto-managed-identities-data-sources.md
Service: cognitive-search
GitHub Login: @HeidiSteen
Microsoft Alias: heidist

The doc updates are queued for publishing.  Sorry about the disjointed experience.  I'll circle back as soon as the edits are live.  The page that you'll want to look at is this one:  https://docs.microsoft.com/en-us/azure/search/cognitive-search-custom-skill-interface#set-the-endpoint-and-timeout-interval

I don't know if this will unblock you, but the parameter in the custom skill is "authResourceId"
<EMAIL_ADDRESS>"#Microsoft.Skills.Custom.WebApiSkill",
"description": "This skill has a 230 second timeout",
"uri": "https://[your custom skill uri goes here]",
"authResourceId": "[for managed identity connections, your app's client ID goes here]",
"timeout": "PT230S",
The format of the client ID is documented here:  https://docs.microsoft.com/en-us/azure/active-directory/develop/security-best-practices-for-app-registration#appid-uri-configuration

When the authResourceId property is detected, the indexer/skillset knows to use a managed identity.

The following setup worked for setting up a Microsoft.Skills.Custom.WebApiSkill System Managed Identity authorized by EasyAuth and AppRoles.
Finding the correct authResourceId Enterprise App Page:

Setting authResourceId:
"skills": [
    {
        "name": "my-skill",
        "description": "",
<EMAIL_ADDRESS>"#Microsoft.Skills.Custom.WebApiSkill",
        "uri": "https://{function name}.azurewebsites.net/api/skill",
        "authResourceId": "{Application ID URI from Azure Enterprise App page}.com",
        "httpMethod": "POST",
        "timeout": "PT30S",
        "batchSize": 10,
        "degreeOfParallelism": 1,
        "inputs": [ ... ],
        "outputs": [ ... ]
    }
]

@vdimov-gcmlp The doc changes are live in two articles:
https://docs.microsoft.com/en-us/azure/search/cognitive-search-custom-skill-interface  ** how-to
https://docs.microsoft.com/en-us/azure/search/cognitive-search-custom-skill-web-api ** reference
Please let me know if you have any suggestions for improving either one. Thanks for filing the issue!  I'll close this now, but feel free to reopen for any reason.

#please-close

@HeidiSteen @gmndrg We're hitting another issue related to authResourceId that started on 7/30/24 at 5:00 pm Central. The error message is:

Error in skill '{skill_name}': 'authResourceId' must be in one of the following formats api://{client application id or name}/.default,api://{client application id or name},{client application id or name}/.default

We have tried using the "api://" prefix, the "/.default" postfix, and both, combined with the client name (also called the Application ID URI, which is what worked previously) and the client application ID GUID from the app registration. All 6 combinations of values return the same error above. We are using api-version 2024-05-01-Preview.
Looking at the documentation commits, this appears to be a recent change. Is there a new format that we should be using to utilize system managed identities with Web API skills?

Dear @parker-gcm. First of all, please accept our apologies for the disruption. The application URI is no longer an accepted format. The workaround to fix this as soon as possible would be please recreate the skillset and attach that new skillset to your indexer with a proper format.
The authResourceId can be the {client app id of your entra app}/.default
If you want to use the api:// format, you'll need to configure your ENTRA app registration in that way
If you require any details, please help us opening a support request for an RCA since we would need to request more details from you which we are not able to online.
For further questions we'll be happy to help online. Thank you!


Link to CONTRIBUTING.md in README.md

Motivation:
Linking to CONTRIBUTING.md directly would save readers some time if they'd like to navigate to this file while reading README.md.
Modifications:
No functional change, only README.md is updated.
Result:
The rendered README.md will have a direct link to CONTRIBUTING.md.

@swift-nio-bot test this please

The 5.3 failure is a NIO issue, we’re just going to ignore it.


Map without Labels

I don't know if this is right place to ask this question.
But, can't find the way to solve it.
I would like to create a map without any labels which means the map has only street, not like building and store labels.
Is it possible? or can I create a layer like this(http://tiles.wmflabs.org/osm/slippymap2.html)?

When I click your link it loads the default osm layer. You probably referred to the 'osm no-labels' layes.  You could set up Mapsui to use this layer but it is data served by wmflabs. I don't know under what conditions this data can be used.
The default OSM layer which is used in most of our sample has streets combined with layers baked it. It is one image. This can not be changed. So you need a custom datasource like the one of wmflabs.
The options are serve such a data source yourself (which is a lot of work if you are not familiar with this) or look for some data source that is available online, like the one from wmflabs. In that case you might need to pay for use.


Build failed on x86 paltform with CMake switched MACE_ENABLE_TESTS=ON and MACE_ENABLE_BENCHMARKS=ON

System information

OS Platform and Distribution (Linux Ubuntu Ubuntu 20.04 LTS  x86_64):
GCC version(compiling for host, 9.3.0):
MACE version (tag: v1.0.3):
Python version(3.6):

Describe the problem

everything is fine with cmake-build-armeabi-v7a.sh

everything is fine with cmake-build-host.sh while CMake switched MACE_ENABLE_TESTS=OFF and MACE_ENABLE_BENCHMARKS=OFF

failed with cmake-build-host.sh  while switched MACE_ENABLE_TESTS=ON and MACE_ENABLE_BENCHMARKS=ON

QcIonRuntimeContext is unrecognized on test/ccutils/mace/ops/ops_test_util.cc:153 while Rpcmem undefined symbol while link

failed with cmake-build-host.sh  while  switched MACE_ENABLE_TESTS=OFF and MACE_ENABLE_BENCHMARKS=ON

/mace/test/ccutils/mace/ops/ops_test_util.h:28:10: fatal error: gtest/gtest.h: No such file or directory
28 | #include "gtest/gtest.h"

@lifavor Thanks for your report. I will check an fix it.


Get configuration returned by the IPv4 DHCP server.

Thanks for the PR!  Looks good to me.

The pleasure is all mine. Very nice repository, best regards!


Replaces glom_graph.py with rdfpipe should address issue #424

This Pull Request resolves all requirements of Issue #424 .
Review steps taken:

[x] Pull request is against correct branch
[x] CI passes in (CASE/UCO) feature branch
[x] CI passes in (CASE/UCO) current unstable branch (ffaa2e5)
[x] Impact on SHACL validation reviewed for CASE-Examples
[x] Impact on SHACL validation remediated for CASE-Examples
[x] Impact on SHACL validation reviewed for casework.github.io
[x] Impact on SHACL validation remediated for casework.github.io

@kfairbanks - FYI, I resolved a merge conflict on your fork's develop state, which is the state you used to file this PR.  Please do not update develop in your fork until after this PR is merged.


Failed to parse pi revision

I got an error saying:

gpiozero.exc.PinUnknownPi: unable to parse new-style revision "a32082"

My raspi is made-in-Japan Raspberry Pi 3 Model B released in November 2016.
Its revision is:
$ cat /proc/cpuinfo | tail -3
Hardware	: BCM2709
Revision	: a32082
Serial		: 00000000a31110c1

I should have bought UK model...

I guess we simply need to add the new Japanese manufacturer (with code '3') to https://github.com/RPi-Distro/python-gpiozero/blob/master/gpiozero/pins/data.py#L862

@suhirotaka Sorry about that - that's an issue we will deal with in the next release. We need to add the Japanese manufacturer to the data table as @lurch points out, and really we ought to make sure gpiozero can still be used on unknown revision codes.

https://www.youtube.com/watch?v=UZEttmAdtm8 and https://www.raspberrypi.org/forums/viewtopic.php?f=63&t=166391
I've just updated http://elinux.org/RPi_HardwareHistory#Board_Revision_History

And there's now also the CM3 and CM3L with revision code a020a0.

Thanks @lurch

Is GPIOZERO really works on non pi boards, can u please tell me how to do on non pi boards ,upto now i have worked on pi boards, now i want try with non pi boards ,
THANKS in Advance
regards siva

You can run gpiozero code on a PC that remotely controls the GPIO pins on a Raspberry Pi.
gpiozero only supports Raspberry Pi GPIO, not other boards.

ok Thanks for ur valueble reply, i cant understand the code flow how the cfuctions and classes are calling,also native.py and data.py for a simple led programe below,
from gpiozero import LED
from time import sleep
led = LED(17)
while True:
led.on()
sleep(1)
led.off()
sleep(1)
thanks in advance,@bennuttall

i have learned so many things and more knowledge  with gpiozero thanks for this to all who are participated to develope gpiozero.

Please use code blocks when pasting code, it makes it readable and keeps it indented.
This is off-topic - please post another issue or use the forums or stack exchange and I'll address your questions there

Thanks

If the code is calling native.py then it means you don't have any other Pin implementations installed yet. The recommendation is to install RPi.GPIO with sudo apt-get install python-rpi.gpio python3-rpi.gpio

@suhirotaka this has been fixed in #531. Can you test it on your Made in Japan Pi?
The easiest way is to download the fixed version of data.py:
sudo wget http://rpf.io/datapy -O /usr/lib/python3/dist-packages/gpiozero/pins/data.py

And try using gpiozero with Python 3. Let us know if it works!

It works! I'm glad to use this awesome GPIO interface on my raspi.
Many thanks :)
It might be better http://rpf.io/datapy redirects to https://raw.githubusercontent.com/RPi-Distro/python-gpiozero/edd7eb256cd666b0ec8ae9f2af0c3c90f73b1a62/gpiozero/pins/data.py

Gah - my mistake. I have updated.
Glad to hear it worked.

Note: this has been fixed in the 1.3.2 release. You should be able to upgrade using:
sudo apt install python-gpiozero python3-gpiozero -y

(which will install the latest version)


Support for security groups for pods

I have issues
I'm submitting a...

[ ] bug report
[X] feature request
[ ] support request - read the FAQ first!
[ ] kudos, thank you, warm fuzzy

What is the current behavior?
Security groups for pods must be provisioned separately from this module.
TBH I'm not even sure how to do this with Terraform, which is why this is a feature request and not a PR. The main sticking point is step 3:
kubectl set env daemonset aws-node -n kube-system ENABLE_POD_ENI=true

I.e., you have to modify the environment for an already-running DaemonSet that is not managed by Terraform, but is created automatically by AWS.

This is way out of the scope of this module. You can read about why in https://github.com/terraform-aws-modules/terraform-aws-eks/issues/635 🙂

Fair enough. Any thoughts about how this could be supported (i.e., in one of those smaller, composable modules discussed in #635)? Is local_exec (sadly) the way to go here?

I don't think it's too complicated...

Is local_exec (sadly) the way to go here?

I don't think local_exec is ever the way to go 😅
I think most people are using Helm to manage resources inside the cluster, so looking at the AWS docs, this is how I would do it:

Do it in the aws-vpc-cni chart
Do it in TF, attach the policy to module.cluster_iam_role_arn
Do it in the aws-vpc-cni chart
In your application chart (or elsewhere)
In your application chart, add the SecurityGroupPolicy to the chart
This is just installing the chart

Thanks!


PR: Go to current position when using the pdb where command

Description of Changes

[ ] Wrote at least one-line docstrings (for any new functions)
[ ] Added unit test(s) covering the changes (if testable)

[ ] Included a screenshot or animation (if affecting the UI, see Licecap)

move to the debugging position in the editor when using the where command
Issue(s) Resolved

Depends on spyder-ide/spyder-kernels#232
Affirmation
By submitting this Pull Request or typing my (user)name below,
I affirm the Developer Certificate of Origin
with respect to all commits and content included in this PR,
and understand I am releasing the same under Spyder's MIT (Expat) license.

I certify the above statement is true and correct:

@ccordoba12 This one is relatively small. Do you want to include it for 4.2.0?

@impact27, please update our spyder-kernels subrepo to point to its 1.x branch because I just merged spyder-ide/spyder-kernels#232.


Simple CV fix for R-package best score

Fix a bug from a comment on issue 760 (workaround: not linked to avoid auto-closing of the issue).
Install with:
devtools::install_github("Laurae2/LightGBM/R-package@patch-1")

Try this:
library(lightgbm)
data(agaricus.train, package = "lightgbm")
train <- agaricus.train
dtrain <- lgb.Dataset(train$data, label = train$label)
params <- list(objective = "regression", metric = "l2")
model <- lgb.cv(params,
                dtrain,
                20,
                nfold = 5,
                min_data = 1,
                learning_rate = 0.3,
                early_stopping_rounds = 10)

This is for solving https://github.com/Microsoft/LightGBM/issues/760#issuecomment-319429201 found by @luyongxu


0.7.8 version HUD Fix Menu Offset and Black UI Shadow

HUD Fix looking great, the only issue i see now is the Menu item selected is offset, but other than that, it's fine

The only request i have if possible, is there any chance to remove this black shadow from the quick battle result? i never noticed it with the stretched version, but after updating it and clearing every floor with the quick battle, it's starting to being permanent on screen during gameplay.

Would be nice if possible to remove this "Virgnette" effect alltogether or at least offset to the edge of the screen somehow.

as of 0.7.9, the menu works perfectly, i'm so happy fr.
the vignette, it's probably close to impossible to remove it from every layer and use, even if it's a png, on the map and menu it's irrelevant, but the one popping out during quick battles is a punch in the eyes, that's why i only requested if that one was possible to be removed or replaced with an empty png

The menu stuff should be fixed completely as of v0.8.1. As for the vignettes that appear in many parts of the UI, I'd like to take a look at them at some point but it may be a while before I can have a look.

you've already done a great job, take your time. i'll prob use it during my ng+ run for sure!


IIS Web App Management - Using a password with caret (^) fails

When using a password that contains a caret symbol, IIS Web App Management fails, since the password does not seem to get escaped when passed onto the commandline within the task.
The password is valid when in use with normal WinRM tasks, but the IIS Web App Management task seems unable to properly handle this special character. (It also has an issue with $)

Issue seems resolved with the new versions (user was still using the 1.* version, asked them to update to 3.*). The $ issue remains but has already been raised in issue #814 .


how to delete data at specific hour

I have
CREATE TABLE default.toy
(
    day Date,
    hour Int8,
    info String
) ENGINE = MergeTree(day, (day, hour), 1024)

and, batch inserting data every hour. from the doc I can drop a partition of a month, but if there is one hour dirty data inserted, how to delete this hour's data? I don't want to drop all partition of that month.
can i do subpartition by day, by hour?

There is no way to delete data with granularity less than partitions, and it is not possible to define custom partitions rather than month.
Both features are possible to implement and we have plans for it (not in near perspective, definitely later than Q3).

What about selecting all the data that we need in a new table, dropping the old one, and selecting it back? Would that be safe, Alexey?

You can use tables with suffix based on hour, as stage tables, and insert data in specific table. Selecting using Merge table type as virtual view to all tables based on hour.
Eg. use script to create 365 x 24 tables in stage database, like stage.table_yyyymmdd_hh and use Merge(stage, '^table') to select data.
That way you will be able to drop single table based on hour.

What are the performance implications of doing queries spanning a month over a merge table that has 365 x 24 tables under it? The docs for merge engine say queries are parallel so there will be 30 x 24 queries run at the same time?

What are the performance implications of doing queries spanning a month over a merge table that has 365 x 24 tables under it?

Every query, even simple one, will require to do at least 365 * 24 * num_used_columns disk seeks.
For short-running queries this will be very expensive.

The docs for merge engine say queries are parallel so there will be 30 x 24 queries run at the same time?

Tables are processed in parallel but with limited number of threads. There will be max_threads (default = number of physical CPU cores) and each of them will process some subset of all tables.

Potentially solved by #1482


The native method "grpcsharp_batch_context_recv_message_to_buffer" does not exist

What version of gRPC and what language are you using?
1.21.0 / .NET
What operating system (Linux, Windows,...) and version?
Windows 10
What runtime / compiler are you using (e.g. python version or version of gcc)
Visual Studio 2017
MSBuild
I have a setup with multiple projects. There is a common library built against .NET Standard 2.0 that references GRPC. On top of that, there is an executable running on .NET Framework 4.6.1 and a library built against .NET Framework 4.6.1 or .NET Framework 4.7.2. The latter library is registered as COM component.
The exception occurs in the common library when executed through the COM component compiled against either .NET Framework 4.6.1 or 4.7.2. It does, however, not occur on the separate .NET Framework 4.6.1 executable that executes the same library code.
What did you do?
Open a new channel.
var channel = new Channel($"{host}:{port}", ChannelCredentials.Insecure);
What did you expect to see?
Channel created successfully
What did you see instead?
System.MissingMethodException: The native method "grpcsharp_batch_context_recv_message_to_buffer" does not exist
Stack trace:
   at Grpc.Core.Internal.UnmanagedLibrary.GetNativeMethodDelegate[T](String methodName)
Anything else we should know about your project / environment?
There was recently a commit to remove the method in question (8a5b803). The commit message states that it seemed that the method in question is no longer used. Apparently, it is.

There seems to be some kind of mismatch between the grpc_csharp_ext version you're using (seems to be v1.21.0) and the Grpc.Core assembly. That's should never happen as grpc_csharp_ext is shipped as part of the Grpc.Core package (so perhaps it somehow didn't get updated properly in your system?).  All references to grpcsharp_batch_context_recv_message_to_buffer were removed in https://github.com/grpc/grpc/pull/18865

Yeah, I just realized that the library in the output folder is 1.16, even though all projects in the solution reference 1.21.0. I have no idea where the 1.16 version comes from. I checked that all assemblies contained in the 1.21.0 package are indeed 1.21.0. However, when I remove the entire build output, VS reproducibly recreates the 1.16 lib.

One thing I noticed, though, is that the assembly version of gRPC is always <IP_ADDRESS>, regardless of the actual version that is only persisted as informational version and file version. Therefore, the CLR (and perhaps also MSBuild?) will happily load an older version, because it only looks for <IP_ADDRESS> and this is found regardless of the actual version.
Is there any particular reason why the gRPC version is not persisted in the assembly version, but only in informational version and file version?

I updated gRPC machine-wide to 1.21.0 and now it works.

Ad assembly version: see https://github.com/grpc/grpc/issues/6201 for details.


[Live] Fix handling forms with unnamed root

Q
A

Bug fix?
yes

New feature?
no

Tickets
Fix #715

License
MIT

Thank you Gábor!


Thnk you comp style

Description
Styling changes to Office component, and updating ThankYou component to match UX. (still in progress)
Fixes # (issue)
Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Change Status

[ ] Complete, tested, ready to review and merge
[ ] Complete, but not tested (may need new tests)
[ ] Incomplete/work-in-progress, PR is for discussion/feedback

How Has This Been Tested?

[ ] Test A
[ ] Test B

Checklist

[ ] My code follows the style guidelines of this project
[ ] I have performed a self-review of my own code
[ ] My code has been reviewed by at least one peer
[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[ ] My changes generate no new warnings
[ ] I have added tests that prove my fix is effective or that my feature works
[ ] New and existing unit tests pass locally with my changes
[ ] There are no merge conflicts

Was the initial PR Chris had trouble submitting. Merged his second one.


Upload to a different repository

For this project, we are uploading the documentations to another repository, I wonder if is feasible to support something like gh-pages-branch but instead targeting another repository.

released in v1.14.0


Add gem about ndslice (multidimensional arrays)

I made a first step at writing a small gem about multi-dimensional arrays. It's not perfect at all & it's also a bit ugly because many "cool" features are in the pending 2.072 release or still pending as Phobos release.
Anyway @9il please let me know your thoughts on this gem.

A bit off topic, but I think it would be better if we separate the language and the library gems. Of course you can't have purely languge examples, but sometimes the focus is on the language and sometimes on the libraries (e.g. ndslice). I'm saying this because perhaps in future we'll have more phobos-focused examples (e.g. std.path & std.file, std.uni & std.regex, std.datetime, std.ex.allocator, std.ex.logger, std.ex.xml, etc.) and also because of #27 (to which I hope to get back to soon).

A bit off topic, but I think it would be better if we separate the language and the library gems. Of course you can't have purely languge examples, but sometimes the focus is on the language and sometimes on the libraries (e.g. ndslice).

Agreed - to be honest the Gem section is already too large for my personal taste, so I think that's a good idea to split the section.

moved over to the English repo: https://github.com/dlang-tour/english/pull/63


CMakeSettings.json workflow

How it is supposed to write a CMakeSettings.json to make the configurations of the build. My actual build is working, but it is because run-cmake is choosing a default config to use in linux.
Linux build for Visual Studio requires a remote machine, so what information run-cmake recollects from that cmake settings schema for Visual Studio?

@orion160 CMakeSettings.json content is used to create command line argument to run the CMake configuration and generation and to run the build.
For remote configuration stored in CMakeSettings.json, the remoteMachineName or the copy with rsync related values are always disregarded, and the build executes always locally.
You may find lot of examples in the samples.

@orion160 CMakeSettings.json content is used to create command line argument to run the CMake configuration and generation and to run the build.
For remote configuration stored in CMakeSettings.json, the remoteMachineName or the copy with rsync related values are always disregarded, and the build executes always locally.
You may find lot of examples in the samples.


python error when entering interactive mode on macos

Describe the bug
When entering interactive (az interactive) - shell throws several errors seemingly related to python.
To Reproduce
Install azure-cli following homebrew installation method discussed here
type "az interactive" to enter interactive mode
Expected behavior
should be able to run in interactive mode with shell complete
Environment summary
Install Method: Homebrew
CLI version: 2.0.38
OS version: macOS 10.13.5 (High Sierra)
Shell Type: bash (Terminal)
Additional context
See attached log for error.
azurecli-error.txt
Also attempted to perform the Python relink mentioned in the troubleshooting section of the Microsoft guide has no effect / is incorrect syntax.
azurecli-pythonrelinkerror.txt

These should be fixed as of the 2.0.50 release. Please open if these problems recur.


#1494 convert TIMESTAMP field's datatype to STRING

Description
We do not know the date format for the timestamp type.
So, when creating a temporary data source, convert it to STRING type and process it.
Related Issue :
#1494
How Has This Been Tested?

goto workbench
execute query contains timestamp field.
click chart preview button
see chart preview without error

Types of changes

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

Checklist:

[ ] My code follows the code style of this project. it will be added soon
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.
[ ] I have read the CONTRIBUTING document. it will be added soon
[ ] I have added tests to cover my changes.
[ ] All new and existing tests passed.

Additional Context

run build
deploy to 5


plugin-scope-auth compilation error extending PothosValidationError

Using latest version, I'm getting the following error attempting to compile a project with ScopeAuth enabled.
/node_modules/@pothos/plugin-scope-auth/src/errors.ts:6
export class ForbiddenError extends PothosValidationError {
                                    ^
TypeError: Class extends value undefined is not a constructor or null

Inspecting the source I see the following error in my IDE:
Module '@pothos/core' has no exported member PothosValidationError on this line of errors.ts:
import { PothosValidationError } from '@pothos/core';
I can see that exists though under my node_modules, so I'm not quite sure what the issue is here.

can you check to make sure that @pothos/plugin-scope-auth doesn't have its own nested copy of @pothos/core and that @pothos/core is also using the latest version?

@hayes, thank you for the quick response. What's happening here is I'm using prisma-generator-pothos-codegen which has a peerDep on pothos/core 3.23.0. It looks like the Pothos plugins use * for the pothos/core peerDep range, so we're getting multiple versions installed. I'm able to work around this for now by downgrading the auth plugin to 3.17.0 and using NPM overrides to pin pothos/core to 3.23.0 for the plugins.
I was speaking with @Cauen over at https://github.com/Cauen/prisma-generator-pothos-codegen/issues/57#issuecomment-1863541371 yesterday about this peerDep range. This will be the best long-term solution. But for now I'm unblocked using NPM overrides.

Hi @bmayen
You can upgrade @pothos/core now :)

Thank you!


Image doesn't download anything

I've tried to set up this Image as described, with no luck. When i ssh into docker the server folder is empty, and i cant start the container because, obviously, PerfectHeist2Server.sh is missing.
Any idea why this happens?

Hey, I just tested it and I was not able to reproduce your issue. Please ensure that you are using the latest version of the image and there is enough space on your system, since it's downloading the game during startup.
If that does not help, please provide your from docker logs ph2-dedicated

Yeah, i've used the latest version. There's also plenty of space left. I also checked the permissions, everything should work...
The Docker Image i created myself works fine (I'm too lazy and have not enough time to wirte it properly, so i hardcoded my settings into it), I'm just struggeling with Custom Maps.
Will provide the logs asap.


Add husky and lint-staged hooks for prettier

Closes #1

Add husky and lint-staged hooks
Configure husky to run prettier on committed files using lint-staged
Run the test script using husky

Ah, and once prettier is in the package.json scripts, we should make sure prettier is run as a check in GitHub Actions

👋 @Dhoni77 checking in to see how this is going?


Topic Restrictions

Question : Is there a way to implement topic restrictions/security publishing and or subscribing "broker" ?
Thanks .

Hi,
what do you mean exactly? An "interceptor" which checks if a subscription is "allowed" or not?
Best regards
Christian

Hi,
yes , i want to avoid subscribers/publishers from abusing the system , by implementing rules of authority where is allowed or not
Thanks
Yashar Elias Toghouj

OK but what are the input parameters you need to have? I can add the ClientId if this is enough? Or the whole connect info with Username, Password etc.?

clientid is fine  " with the ability to unsubscribe the client from broker and refuse the publishing " , since users are authenticated and handled in code

You mean disconnect instead of "unsubscribe"?

yes

Hi, I implemented this feature in the develop branch.
You can either test it now or wait until v2.5 is release. If you can test it now you can also propose some feature ideas etc. After the release you have to wait for the next one 😄
At the options is a new interceptor specified. Wiki examples will follow after release.
Best regards
Christian

I will close this ticket because this feature is implemented in v2.5. If you have any suggestions or bug fixes (after the release) please create new tickets.
Best regards
Christian

Hi , thanks a lot , i shall test and keep you posted , appreciate the effort


Scraping NES roms breaks NES emulator

I recently put together a Retropie (Raspberry Pi w/ Retropie SD card image). I loaded a few SNES and NES roms and used the built-in scraper to pull data for all of the roms; it pulled all the data fine. The problem is that none of the 20+ NES roms will load - I get a "failed to load rom" error every time. The SNES roms load perfectly fine. So here's what I did:

Deleted "gamelist.xml" in the "nes" folder and replaced it with a new (blank) "gamelist.xml"

Deleted all images that the scraper pulled (I'm not sure this was necessary after deleting gamelist.xml).

After doing this, all of the NES roms work fine! The problem is they don't have the scraped data, which was a nice addition. I searched but couldn't find this issue anywhere. Is this a known bug? Has anyone else experienced this?

This is really, really weird. The metadata is completely unconnected to how games are launched. I am guessing this is some sort of hardware problem - maybe insufficient power, or the Pi is running out of RAM from loading the images?

I agree. I'll look into it more. But I found another factor - all of my roms had a # symbol in the filename, and I found that even once I deleted the gamelist.xml, it still wouldn't load the game. I renamed the rom to remove # and it loaded fine. Should the # throw off rom loading?
I removed all the #, so I'm going to re-scrape all the roms and see if it's affected now. I'll report back.

hi it happens to me when i scraping roms no mater the emulator i tried when i hit about plus minus 400 roms  even whit a fresh install whit emulation 2.0 and 2.1 i think its a real bug for a 256mb pi b


Have any benchmark data compared to golang version?

What does this look like under some common workloads?

Simply conducted a straightforward test using the SeaweedFS weed benchmark command, the write performance is quite similar, but the read performance falls behind SeaweedFS.
You can see it in: benchmark


SMTPUTF8 support in a Symfony project

I am using Swiftmailer (6.3.1) in a Symfony project and am trying to enable SMTPUTF8 support (implemented in #1056). I couldn't find a setting for that in the Swiftmailer bundle so I wrote a compiler pass that injects SmtpUtf8Handler and Utf8AddressEncoder into EsmtpTransport as described in the documentation but this doesn't seem to be sufficient. When creating the Message instance, it uses a Swiftmailer internal dependency container which has hardcoded references to the IdnAddressEncoder:
https://github.com/swiftmailer/swiftmailer/blob/e8c3ed713d199760c1730fb89a38cefe7f54c4ae/lib/dependency_maps/transport_deps.php#L10-L18
https://github.com/swiftmailer/swiftmailer/blob/e8c3ed713d199760c1730fb89a38cefe7f54c4ae/lib/dependency_maps/mime_deps.php#L64-L72
How can I make sure the internal Swiftmailer dependency container also references Utf8AddressEncoder instead of IdnAddressEncoder?

Hey @julienfalque .
Did you find any solution for this?
BR

No, I didn't investigate the issue since I submitted it.


Separate the responsibility in layers

This PR takes the current modularization branch and applies the Clean Architecture to it.

The suggested change is due to scaling and organization. We can address a few issues with our current model:

The directories are aggregated on /src with no proper organization;
The responsibilities of each module are not always coherent with its directory;
When scaling, the directories will only get bigger. This not only difficult new features, but maintenance as a whole.
Code is unstandardized and sometimes hard to read.

If applied, this PR will:

Improve the organization of our code;
Separate the responsibility of each module into layers;
Improve maintainability and testability of our software;
Improve quality assurance;
Facilitate the addition of new features.

This comes with a set of new tasks:
Crystal-clear documentation
That's a must-have. We don't want to scare away new developers when they see our code and don't understand each layer's responsibility, or how the folders are structured, or anything similar. The goal is that new developers come to learn, understand and contribute to our project.
Support to new developers
Complementing my previous point, we need to give beginner developers the required and deserved support. So that they can understand what is being done on each commit. Again, we don't want to scare away beginners, but we want to teach them.
Test coverage
If the software is organized, there's no reason to don't test it. Again, we'll need to provide a guideline on the documentation and improve the testing skills of our contributors.
Here's a checklist of what's coming next:

[ ] Documentation
[ ] Testing

Check-list:

[x] A Pull Request soluciona uma issue.
[ ] Executar npm run test passará todos as suítes de testes definidas (Incluindo lint).
[ ] Adicionei novos testes para previnir falhas.
[ ] Atualizei a documentação de acordo com as alterações no código (Se aplicável).
[x] Li e segui o guia de contribuição disponibilizado.

Closes #36

@stevescruz I could not use some of your work properly. I'll need help to apply it.


Update README.md

make it look nicer with some logos

Can use ![xxx](http://www.example.com/img.png)

Gotta resize the images so this won't work