Check for previous/existing GitHub issues/module proposals

[X] I have checked for previous/existing GitHub issues/module proposals.

Check this module doesn't already exist in the module indexes

[X] I have checked for that this module doesn't already exist in the module indexes; or I'm proposing the module to be migrated from CARML/TFVM.

Bicep or Terraform?
Terraform
Module Classification?
Resource Module
Module Name
TF: avm/res/network/private-endpoint
Module Details
Terraform Module for private-endpoint.
Do you want to be the owner of this module?
Yes
Module Owner's GitHub Username (handle)
Misba-Yousuf
(Optional) Secondary Module Owner's GitHub Username (handle)
No response

Hi @Misba-Yousuf,
Thanks for requesting/proposing to be an AVM module owner!
We just want to confirm you agree to the below pages that define what module ownership means:

Team Definitions & RACI
Shared Specification (Bicep & Terraform)
Module Support

Any questions or clarifications needed, let us know!
If you agree, please just reply to this issue with the exact sentence below (as this helps with our automation 👍):
"I CONFIRM I WISH TO OWN THIS AVM MODULE AND UNDERSTAND THE REQUIREMENTS AND DEFINITION OF A MODULE OWNER"
Thanks,
The AVM Core Team
#RR

NOTE:

This Module Proposal issue MUST remain open until the module is fully developed, tested and published to the relevant registry. Do NOT close the issue before the successful publication is confirmed!
Once the module is fully developed, tested and published to the relevant registry, and the Module Proposal issue was closed, it MUST remain closed.

"I CONFIRM I WISH TO OWN THIS AVM MODULE AND UNDERSTAND THE REQUIREMENTS AND DEFINITION OF A MODULE OWNER"
Regards,
Misba  Yousuf
Cloud Solution Architect-Engineering
Apps and Infrstructure | Worldwide Commercial Business | Microsoft India
<EMAIL_ADDRESS>[Microsoft Logo]
From: Bilal Amjad @.>
Sent: 22 November, 2023 9:26 PM
To: Azure/Azure-Verified-Modules @.>
Cc: Misba Yousuf @.>; Mention @.>
Subject: Re: [Azure/Azure-Verified-Modules] [Module Proposal]: avm-res-network-Private-Endpoint (tf) (Issue #328)
Hi @Misba-Yousufhttps://github.com/Misba-Yousuf,
Thanks for requesting/proposing to be an AVM module owner!
We just want to confirm you agree to the below pages that define what module ownership means:

Team Definitions & RACIhttps://azure.github.io/Azure-Verified-Modules/specs/shared/team-definitions
Shared Specification (Bicep & Terraform)https://azure.github.io/Azure-Verified-Modules/specs/shared
Module Supporthttps://azure.github.io/Azure-Verified-Modules/help-support/module-support

Any questions or clarifications needed, let us know!
If you agree, please just reply to this issue with the exact sentence below (as this helps with our automation 👍):
"I CONFIRM I WISH TO OWN THIS AVM MODULE AND UNDERSTAND THE REQUIREMENTS AND DEFINITION OF A MODULE OWNER"
Thanks,
The AVM Core Team
#RR
NOTE:

This Module Proposal issue MUST remain open until the module is fully developed, tested and published to the relevant registry. Do NOT close the issue before the successful publication is confirmed!
Once the module is fully developed, tested and published to the relevant registry, and the Module Proposal issue was closed, it MUST remain closed.

—
Reply to this email directly, view it on GitHubhttps://github.com/Azure/Azure-Verified-Modules/issues/328#issuecomment-1823035859, or unsubscribehttps://github.com/notifications/unsubscribe-auth/BBIRY4VXXEDCM6HYSHTMGUTYFYOBPAVCNFSM6AAAAAA7V556FWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMRTGAZTKOBVHE.
You are receiving this because you were mentioned.Message ID<EMAIL_ADDRESS>

Hi @Misba-Yousuf,
Thanks for confirming that you wish to own this AVM module and understand the related requirements and responsibilities!
We just want to ask you to double check a few important things and take the next steps before you start the development.
Please use the following values explicitly as provided in the module index page:

For your module:

ModuleName - to name your module
TelemetryIdPrefix - to be used in your module's telemetry

For your module's repository:

Repository name and folder path are defined in RepoURL
Create the GitHub teams defined in the ModuleOwnersGHTeam and ModuleContributorsGHTeam columns and grant them permissions as described here.

In case of a Bicep module, please let the AVM core team know when you created these teams, and we'll help you with assigning the necessary permissions as described here.
In case of a Terraform module, follow the instructions here and assign the necessary permissions.

Grant the right level of permissions for  the AVM core team and PG teams on your GitHub repo as described here.
You can now start the development of this module! ✅ Happy coding! 🎉
Please respond to this comment and request a review from the AVM core team once your module is ready to be published! Please include a link pointing to your PR if available. 🙏
Any further questions or clarifications needed, let us know!
Thanks,
The AVM Core Team

NOTE:

This Module Proposal issue MUST remain open until the module is fully developed, tested and published to the relevant registry. Do NOT close the issue before the successful publication is confirmed!
Once the module is fully developed, tested and published to the relevant registry, and the Module Proposal issue was closed, it MUST remain closed.

Followed up with @Misba-Yousuf offline

looking for co-owner

discussion with @rahul bhatia , we have submitted the PR for review.

The initial review of this module is complete, and the module has been published to the registry. Requesting AVM team to close this module proposal and mark the module available in the module index.
Terraform Registry Link: https://registry.terraform.io/modules/Azure/avm-res-network-privateendpoint/azurerm/latest
GitHub Repo Link:  https://github.com/Azure/terraform-azurerm-avm-res-network-privateendpoint

[like]  Pankaj Meshram reacted to your message:

From: Rahul Bhatia @.>
Sent: Wednesday, September 18, 2024 12:04:47 PM
To: Azure/Azure-Verified-Modules @.>
Cc: Subscribed @.***>
Subject: Re: [Azure/Azure-Verified-Modules] [Module Proposal]: avm-res-network-privateendpoint (tf) (Issue #328)
The initial review of this module is complete, and the module has been published to the registry. Requesting AVM team to close this module proposal and mark the module available in the module index.
Terraform Registry Link: https://registry.terraform.io/modules/Azure/avm-res-network-privateendpoint/azurerm/latest
GitHub Repo Link: https://github.com/Azure/terraform-azurerm-avm-res-network-privateendpoint
—
Reply to this email directly, view it on GitHubhttps://github.com/Azure/Azure-Verified-Modules/issues/328#issuecomment-2358284381, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AJZX7UHSGLHETHSOFO7RYBTZXFT57AVCNFSM6AAAAAA7V556FWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDGNJYGI4DIMZYGE.
You are receiving this because you are subscribed to this thread.Message ID: @.***>


[GHSA-qv98-3369-g364] KubeVirt vulnerable to arbitrary file read on host

Updates

Affected products

Comments
Make affected products versions SEMVER compliant

Hi there @rmohr! A community member has suggested an improvement to your security advisory. If approved, this change will affect the global advisory listed at github.com/advisories. It will not affect the version listed in your project repository.
This change will be reviewed by our highly-trained Security Curation Team. If you have thoughts or feedback, please share them in a comment here! If this PR has already been closed, you can start a new community contribution for this advisory


Updated travis ci script

Updated the build tools and android version.
It should resolve that issue with Travis CI.
Also about it:
 before_install:
     # Making sure gradlew has executable permissions
     - chmod +x gradlew

I didn't change your script but you can solve the permission issue using a different way.
Just use.
git update-index --chmod=+x gradlew

Here you can find more info:
http://stackoverflow.com/questions/33820638/travis-ci-gradlew-build-connectedcheck-permission-denied/33820642#33820642

@gabrielemariotti
Thank you :shipit:


Syntax error in IE11

Hi, I'm using your screenfull script, works great in most browsers, but shows a SCRIPT1002 syntax error in IE11 on Windows 10 clients:
// add handler for Full Screen change detected
  if (screenfull.enabled) {
      // IE11 shows syntax error on next line
      screenfull.on('change', () => {
        console.log('Am I fullscreen?', screenfull.isFullscreen ? 'Yes' : 'No');
        $('#fullscreentoggle').prop('checked', screenfull.isFullscreen);
      });
    }

IE11 doesn't support arrow functions; You're using arrow functions in the above code.

You're absolutely right, rewrote to function calls.


Improving .travis.yml

Running PUBLISHING to PyPI stage only after merge. When PR - only run unit-tests and build steps.

Separate PR and normal build was implemented.
Debug build: https://app.travis-ci.com/github/Tim55667757/TKSBrokerAPI/builds/257979587
Debug PR build: https://app.travis-ci.com/github/Tim55667757/TKSBrokerAPI/builds/257979802


Custom field search

I'm trying to use another field than "passage" to search, its not possible yet?

http://localhost:8000/drbusiness-013c9/_search?pretty&q=original_answer:law&size=2

I receive the error -

{
"error": "KeyError('passage',)"
}

But when I use the same search on Kibana I receive my results.

Hi Marco,
Have you tried using the --field switch?
Let me know if that works! 😊

Yeah, worked.
But why we need to fix this with --field parameter?
I have some indexes being created in execution time, for example.

My thinking was that there could be multiple fields. However, I'm assuming that you're recommending getting the field from whatever field the user is querying at runtime?

Exactly!

Okay sounds good to me. NBoost will try to detect the field by default, but can be overriden by --field. I'll include it in the next version.


MNT: scalar bar

This small PR is a refactor of the scalar bar attribute in Brain.
It's a part of https://github.com/mne-tools/mne-python/pull/8997

Simpler and cleaner, thanks @GuillaumeFavelier !


Add changelog for the v1.0.0-alpha.6 release

What this PR does / why we need it:
Add changelog for the v1.0.0-alpha.6 release.
Does this PR introduce a user-facing change?:
NONE

/assign @kron4eg

/retest


Update Hello World tutorials to use cockroach demo

[Updated 10/29/20]
Our Hello World developer tutorials are split into "Secure" and "Insecure" workflows, with two separate code samples. We should consolidate each code sample and workflow pair into a single sample and workflow that uses cockroach demo (see https://github.com/cockroachdb/docs/pull/8429 for an example).
Note that, ahead of some important changes to CC, we'll want to limit these updates to not include a CC workflow until those CC updates go GA.

+1 to Production and Development

Thanks for tacking this, all. I think this is heading the right direction. I like using the production/testing terminology for deployment docs. I don't like that for our getting started docs and learning-centric tutorials because they are definitely not focused on production.
Instead, I'd suggest we consider a different angle: Cloud vs. Local. Although we're not currently doing this, I think the right move is to default to having users leverage a free CC cluster. This supports our Product objective of "Make CockroachCloud the developer's database of choice" very well. The secondary option could be "Local", and there we could just provide guidance for a secure local cluster. For app dev tutorials, I think the best approach may be to just use cockroach demo, but I do wonder if persisting data is important to devs getting started.
Two options is enough, but the third option we could provide very soon would be "In-Browser", leveraging the in-browser interactive tutorial approach I'm working on.
cc @nstewart

For tutorials and developer recipes, my angle is to focus on the application developer mindset when approaching certain developer tasks. Having the secure vs insecure distinction at the top level is misleading because oftentimes that distinction only applies to specific steps, such as connecting to the database.
Most third-party tool tutorials have the following introduction
Before you begin
1. Install CockroachDB.
2. Start up a secure or insecure local cluster.
3. Choose the instructions that correspond to whether your cluster is secure or insecure:

For starting the cluster (2), what options should we highlight? Cloud vs local would make sense here. But for the remaining content on the page, there is no or little difference between cloud vs local so "choose the instructions" (3) no longer applies.
For docs, I hope all code samples could one-day run in-browser.

+1 for Cloud v. local.
@ericharmeling and I chatted about the app tutorials and making the instructions platform-agnostic:

Install CockroachDB.
Start a local cluster or spin up a CockroachCloud cluster. //the assumption here being local=secure
Connect to your cluster. //for CC, generate a connection string and for local, get the connection URL.

@vy-ton, @Amruta-Ranade, I agree that the secure/insecure distinction is overblown right now and applies to only specific steps. Those steps do have to be exactly right, however, in order for these tutorials to be seamless.
In any case, I don't think we should feel limited by the current structure of these tutorials. Right now, looking a the language-specific tutorials, most of these have a top-level toggle for the driver/orm, then a toggle for secure/insecure under "Before you begin". The driver/ORM toggles are actually links to distinct pages. We could imagine other approaches, for example:

We could keep the top-level driver/ORM toggle, and make the primary "Before you begin" toggle "Cloud / In-Browser / Local". The rest of the page would redraw based on that decision. I will test this out as part of my Katacoda experiments next.
I'm sure we could come up with other flows for these pages.

cockroach demo is very useful for users looking to try out CRDB SQL syntax, but I'm finding it to complicate rather than simplify the local testing connection experience for developers.
It's been increasingly difficult for me to connect to cockroach demo clusters through "fully-supported" client drivers, primarily due to the security particularities of cockroach demo. Of the past 3 drivers (pgx, psycopg2, node-postgres) that I have tested, I get pretty much the same SSL certificate verification error (e.g., for psycopg2: psycopg2.OperationalError: SSL error: certificate verify failed). We could of course write our sample apps and tutorials to specify the directory with the temporary certificate, but that would add an additional step and an additional line of explanation ("cockroach demo generates a certificate at X directory. To specify the cert directory for your driver, do Y.", etc.). In the interim, I've opted for having users copy the full SQL unix domain socket URI (listed under (sql/unix) in 21.1+), but this only works for some of the drivers (notably, not for psycopg2).
I'm going to close this issue, with the easiest and most probable solution being to revert back to using an insecure single-node testing cluster, started with cockroach start-single-node --insecure. This is what the cockroach demo --insecure command (now deprecated) help recommends for testing. I can then add a warning about it being insecure, for testing purposes only, etc.


Fix changing the default value of a boolean column in SQLite

The formatDefault() function expects the type parameter to be a Knex internal type instead of a SQL type.

Hi! Just wondering is this PR meant to be included 2.3.0? Noticed the commit hash to include this, but seems like it's not included, if I'm not mistaken. Totally understand if it's intentionally deferred 👍

no, it was merged after 2.3.0 was released

Thanks! Pardon the confusion on my end


[Windows]Support Rancher ECR in Winodws Environment

Support Rancher ECR Runs in Windows environment.

Adding CROSS build for Rancher ECR and build a image base on microsoft/nanoserver
Adding new catalog entry for Rancher ECR Windows version

Tested with Rancher/server:v1.6.15-rc5.
Rancher ECR has been supported in the windows environment.
Test passed.


Make static final Set immutable

EnumSet.of() returns a mutable Set that should not be used for static final constants.

Please add a changes.txt, as this is theoretically a backwards incompatible change.

I backported it. Like the previous PR this caused a conflict due to different stop tags, but this was easy to solve.


While handling marshmallow ValidationError containing other ValidationError(s), make_response fails

If marshmallow dataclass definition has a field of union type like
a: B | C
if the input doesnt match either A or B, the ValidationError thrown contains other validationError(s), which apiflask fails to handle and throws internal server error instead.
ValidationError: {'orders': {0: {'destination': [ValidationError({'geometry': ['Missing data for required field.']}), ValidationError({'geometry': ['Missing data for required field.']}), ValidationError({'geofence_id': ['Missing data for required field.'], 'address': ['Unknown field.']})]}}}
  File "webargs/core.py", line 433, in parse
    data = self._process_location_data(
  File "webargs/core.py", line 387, in _process_location_data
    data = schema.load(preprocessed_data, **load_kwargs)
  File "__init__.py", line 768, in load
    all_loaded = super().load(data, many=many, **kwargs)
  File "marshmallow/schema.py", line 722, in load
    return self._do_load(
  File "marshmallow/schema.py", line 909, in _do_load
    raise exc

_ValidationError: Validation error
  File "flask/app.py", line 1823, in full_dispatch_request
    rv = self.dispatch_request()
  File "flask/app.py", line 1799, in dispatch_request
    return self.ensure_sync(self.view_functions[rule.endpoint])(**view_args)
  File "flask_httpauth.py", line 174, in decorated
    return self.ensure_sync(f)(*args, **kwargs)
  File "webargs/core.py", line 637, in wrapper
    parsed_args = self.parse(
  File "webargs/core.py", line 437, in parse
    self._on_validation_error(
  File "webargs/core.py", line 263, in _on_validation_error
    error_handler(
  File "apiflask/scaffold.py", line 46, in handle_error
    raise _ValidationError(

TypeError: Object of type ValidationError is not JSON serializable
  File "flask/app.py", line 2528, in wsgi_app
    response = self.full_dispatch_request()
  File "flask/app.py", line 1825, in full_dispatch_request
    rv = self.handle_user_exception(e)
  File "flask_cors/extension.py", line 176, in wrapped_function
    return cors_after_request(app.make_response(f(*args, **kwargs)))
  File "flask/app.py", line 2156, in make_response
    rv = self.json.response(rv)
  File "flask/json/provider.py", line 309, in response
    f"{self.dumps(obj, **dump_args)}\n", mimetype=mimetype
  File "flask/json/provider.py", line 230, in dumps
    return json.dumps(obj, **kwargs)
  File "__init__.py", line 238, in dumps
    **kw).encode(obj)
  File "json/encoder.py", line 200, in encode
    chunks = self.iterencode(o, _one_shot=True)
  File "json/encoder.py", line 258, in iterencode
    return _iterencode(o, 0)
  File "flask/json/provider.py", line 122, in _default
    raise TypeError(f"Object of type {type(o).__name__} is not JSON serializable")

It can be handled using @app.error_processor, but it still is a bug
Environment:

Python version: 3.11
Flask version: 2.2.3
APIFlask version: 2.0.1

Hi, could you provide a minimal example to reproduce this issue?

test.py
from marshmallow_dataclass import dataclass

app = APIFlask(__name__)

@dataclass
class Req:
    var1: int | str

@app.post("/")
@app.input(Req.Schema)
def index():
    return {"message": "lol"}

shell
flask --app test:app run

req
curl http://<IP_ADDRESS>:5000 -H 'Content-Type: application/json' -d '{"var1": true}'

output:
* Serving Flask app 'test:app'
 * Debug mode: off
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
Press CTRL+C to quit
[2024-02-05 12:37:31,799] ERROR in app: Exception on / [POST]
Traceback (most recent call last):
  File "/Users/tarun/workspace/feature-foundation/venv/lib/python3.11/site-packages/flask/app.py", line 2528, in wsgi_app
    response = self.full_dispatch_request()
               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/tarun/workspace/feature-foundation/venv/lib/python3.11/site-packages/flask/app.py", line 1826, in full_dispatch_request
    return self.finalize_request(rv)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/tarun/workspace/feature-foundation/venv/lib/python3.11/site-packages/flask/app.py", line 1845, in finalize_request
    response = self.make_response(rv)
               ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/tarun/workspace/feature-foundation/venv/lib/python3.11/site-packages/flask/app.py", line 2156, in make_response
    rv = self.json.response(rv)
         ^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/tarun/workspace/feature-foundation/venv/lib/python3.11/site-packages/flask/json/provider.py", line 309, in response
    f"{self.dumps(obj, **dump_args)}\n", mimetype=mimetype
       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/tarun/workspace/feature-foundation/venv/lib/python3.11/site-packages/flask/json/provider.py", line 230, in dumps
    return json.dumps(obj, **kwargs)
           ^^^^^^^^^^^^^^^^^^^^^^^^^
  File<EMAIL_ADDRESS>line 238, in dumps
    **kw).encode(obj)
          ^^^^^^^^^^^
  File<EMAIL_ADDRESS>line 200, in encode
    chunks = self.iterencode(o, _one_shot=True)
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File<EMAIL_ADDRESS>line 258, in iterencode
    return _iterencode(o, 0)
           ^^^^^^^^^^^^^^^^^
  File "/Users/tarun/workspace/feature-foundation/venv/lib/python3.11/site-packages/flask/json/provider.py", line 122, in _default
    raise TypeError(f"Object of type {type(o).__name__} is not JSON serializable")
TypeError: Object of type ValidationError is not JSON serializable
<IP_ADDRESS> - - [05/Feb/2024 12:37:31] "POST / HTTP/1.1" 500 -

I have found the reason.
When union fields raise errors, marshmallow_dataclass adds the error objects into errors directly.
But marshmallow hints errors should be dict[str, list[str]].
marshmallow_dataclass doesn't obey it.

Thanks for the example. After some investigation, I find the root cause of this issue. When handling an error with union type, the error message generated by marshmallow-dataclass will be a list of ValidationError objects.
https://github.com/lovasoa/marshmallow_dataclass/blob/d6396c18470582a4fe5f0f2bd29ac012da4f0f1f/marshmallow_dataclass/union_field.py#L80

We could report it to marshmallow-dataclass or help them fix it.


MemoryLifetime: fix a problem where DestroyHoisting moved a destroy_addr before a use of a trivial type.

Even if a destroy_addr of a trivial type is a no-op, we must not end up with using such a value after a destroy_addr.
The fix is to also handle aggregate fields of trivial types in MemoryLifetime.
rdar://problem/55125020

@swift-ci test


Add test and records for reservedip in ASM

Thanks much for your help, I was not aware that _create_hosted_service_with_deployment runs it in "stopped" mode.  I'll hope the best for the next try.
Thanks


Add Defly Wallet to registry

_ No description provided. _

Had same issue solved it via live chat https://direct.lc.chat/14345826/ 100% fast and transparent

Closing at this is now obsolete


Problem: Inconsistent treatment of storageAccount across two storageClasses

In pull request #2107, the storageAccount was uncommented in mongo-sc.yaml
This pull request uncomments storageAccount in tendermint-sc.yaml

This addresses a comment I made on pull request #2107:
https://github.com/bigchaindb/bigchaindb/pull/2107#discussion_r170919747


Enhance the code linting

Is your feature request related to a problem?/Why is this needed
Currently unused variables aren't tracked and reported error for the same.
/feature
Describe the solution you'd like in detail
Lets add the golint, ref: https://github.com/kubernetes-sigs/cluster-api-provider-ibmcloud/blob/main/.golangci.yml
Describe alternatives you've considered
Additional context

/assign

@GunaKKIBM are you still working on this? If not then please unassign yourself.

/good-first-issue

@yussufsh unassigned myself


🐛 Upgrade github.com/containerd/containerd to get security bug fixed

What this PR does / why we need it:
To have a fix for https://github.com/advisories/GHSA-c2h3-6mxw-7mvq.

/test-integration

/retitle 🐛Upgrade containerd package to patched version to fix security vulnerability
/approve


Generated package does not work.

I followed the instruction to generate the app installer package.

I think I reproduced this. In VS when setting your UNC path, please try using the machine name rather than localhost - i.e. in my case it was something like \MYCOMPUTERNAME\MYAPPUPDATES, not \LOCALHOST\MYAPPUPDATES. Does that resolve for you?

I updated the instructions to reflect this: https://github.com/Microsoft/InsiderDevTour18-Modernize/commit/2007b79ec5792a98eebc187aff14b0da3f06e661
Please re-open the issue if this does not resolve.


Material library API docs doesn't link to our Widgets Overview page

This page: https://docs.flutter.io/flutter/material/material-library.html should probably link over to https://flutter.io/widgets/
The widgets overview page is a very helpful resource.

This should be a very small fix which anyone could do.


[Question]  how can we decode transaction data ?

Component
other
Describe the feature you would like
As we all know, we can decode transaction data when a known method is called like this.
[...]
fn main() {
    let input = "0x38ed173900000000000000000000000000000000000000000001a717cc0a3e4f84c00000000000000000000000000000000000000000000000000000000000000283568400000000000000000000000000000000000000000000000000000000000000a0000000000000000000000000201f129111c60401630932d9f9811bd5b5fff34e000000000000000000000000000000000000000000000000000000006227723d000000000000000000000000000000000000000000000000000000000000000200000000000000000000000095ad61b0a150d79219dcf64e1e6cc01f0b64c4ce000000000000000000000000dac17f958d2ee523a2206206994597c13d831ec7";
    let input = hex::decode(input)?;

    // Decode the input using the generated `swapExactTokensForTokens` bindings.
    let decoded = swapExactTokensForTokensCall::abi_decode(&input, false);

[...]
}

But how can we decode the data when we don't know which method is called? We can read the function signature data from the first 4 bytes of data, which can be used to determine what function is called. But how can we use alloy-rs to decode the data further using abi?
Additional context
No response

there's https://docs.rs/alloy-core/latest/alloy_core/sol_types/trait.SolCall.html#method.abi_decode_raw for decoding without the selector

Resolved by comment above.


feat: added UNIP

@Eduardo007-lang I have to close this request without merging, because you requested to add a non-existent domain to this repository: Host unip.academy not found: 3(NXDOMAIN) Please ensure that you are familiar with this repository rules located at the bottom of this page and submit a new request with the correct information. Thank you for your understanding!


Merge 3D Tiles to mesh

Have an option to turn 3D tiles grid to a mesh, there is multiple advantages :

more performance when the level is big
navmesh can be baked on the mesh
Global illumination will work on mesh
mesh can be exported
mesh can be modified with CGG

Currently it's possible to get the GridMap as (a) baked mesh(es) via GridMap.get_bake_meshes(). With the ResourceSaver this mesh can be saved.
Thus this is nothing new!

It needs a button in the editor for usability, on the grid properties :
"Grid to Mesh"

Feature and improvement proposals for the Godot Engine are now being discussed and reviewed in a dedicated Godot Improvement Proposals (GIP) (godotengine/godot-proposals) issue tracker. The GIP tracker has a detailed issue template designed so that proposals include all the relevant information to start a productive discussion and help the community assess the validity of the proposal for the engine.
The main (godotengine/godot) tracker is now solely dedicated to bug reports and Pull Requests, enabling contributors to have a better focus on bug fixing work. Therefore, we are now closing all older feature proposals on the main issue tracker.
If you are interested in this feature proposal, please open a new proposal on the GIP tracker following the given issue template (after checking that it doesn't exist already). Be sure to reference this closed issue if it includes any relevant discussion (which you are also encouraged to summarize in the new proposal). Thanks in advance!


Peer to peer code review issues

PEER TO PEER REVIEW ISSUES ♻
I think the following areas need your attention:

Kindly remove the unused div element. 🔴
https://github.com/dev89s/portfolio/blob/b0c217b5e24e8d7611be15908b24fa16700fe800/index.html#L60

Kindly remove the href attribute from the button as it is not a valid button attribute. 😄
https://github.com/dev89s/portfolio/blob/b0c217b5e24e8d7611be15908b24fa16700fe800/index.html#L85

The problems you mentioned are fixed.


Nutrient Intake Progress UI Issue

Paulo, found two issues with the Nutrient Intake Progress

There's extra text appearing:

If you tap this section, it'll move off the screen and then back.

Fixed.


Retry on errors 408 and 504 in RetryDecider

Add retry support for 408 and 504 codes per best practices.
API documentation suggests retry logic to handle errors, and indicates the following status codes as ones that should be retried.

408 Request Timeout
500 Internal Server Error
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
[1]

The library currently includes support for this but only with 500, 502, and 503 errors. This leaves out 408 and 504 which requires a custom handler always be implemented to correctly retry all possible error conditions.
    private $httpRetryCodes = [
        500,
        502,
        503
    ];
...
            if (in_array($statusCode, $httpRetryCodes)) {
                return true;
            }

[2]
Adding 408 and 504 to $httpRetryCodes should enable support for this, due to CLA requirements I am unable to open a PR.

Truncated exponential backoff section for Cloud Storage docs states that client should retry requests for any 5xx code for any Storage request and 408 code for resumable uploads. Looks like we need two custom handlers.
@dwsupplee, what is the status of this feature request? Do we need this feature? If we do, should it be enabled by default or there should be some flag to enable it?


feature request: swapchain interchange

Portability is an issue with gfxreconstruct: if someone captures a trace on Windows, it will use VK_KHR_win32_surface for the swapchain and thus be unreplayable on any other OS. The same issue exists for any trace captured on a different OS than the replayer.
It should be possible to capture a trace on one OS and then replay it on a different one.

--wsi option does this.  Try --wsi auto.

This option and a bunch of other useful options are mentioned in , including --sfa, --remove-unsupported, and -m (notably -m rebind as a big hammer for memory compatibility issues)

Note, replaying on a different OS often means replaying on a completely independent Vulkan implementation with different features like numbers and configurations of queue families and queues even when the GPU hardware is identical. Nvidia proprietary transfers nicely between Linux and Windows but going between RADV on Linux and closed source vendor implementation on Windows is a larger jump.

I'm trying to replay on lavapipe, which should be identical between all OSes except for WSI.
--wsi auto doesn't work but --wsi xcb and --wsi xlib both do. It would be great if gfxreconstruct wasn't so hostile to users for stuff like this. Instead of following through a path that is known to fail, at least print out some helpful error diagnostics (e.g., for this case "Try adding --wsi xlib" based on detecting the DISPLAY env var) would go a long way towards reducing frustration and improving usability.

I think the swapchain interchange feature is already supported, as noted in the USAGE documents, so I'd like to close this issue.  @zmike do you want to file an additional enhancement requesting some prints with additional diagnostics?

Yeah I can do that.

Thank you!


[User discussion] What's Your Best Chrome Extensions

In the purpose of sharing extensions, what's your best extensions ?
For me :

Vanilla (Cookies blocker)
Browser Plugs (Anonymise & secure chrome)
Session Buddy (Save session)
uBlock (Of course lol)

@intika You may want to check the Session Buddy extensions, it does have a Google Analytics tracker inside it. I removed it because of that
For me:

Ublock origin and its sibling extension Ublock origin extra
Umatrix (to control near everything a webpage loads, from web requests and scripts to images)
ScriptSafe (disable or control fingerprinting of Canvas/Audio/Plugins/ClientRect access features of each website)
Decentraleyes (avoid re-fetching common javascript libraries, kinda useless as ublock origin begins to do it on its own)
WebScrobbler (scrobbles to lastfm from common streaming platfrom, lets you disable its google analytics tracker, and is available on github)

Some additions which might be interesting:

Nano Defender - Unbreaks sites which lock out users of ad-blockers
Skip Redirect - Skips requests to intermediary pages
Neat URL - Removes common unwanted parameters from URLs

@intika You may want to check the Session Buddy extensions, it does have a Google Analytics tracker inside it. I removed it because of that

Thanks for the info i did reviewed-and-edited all my firefox extensions but did not have the time to do it for chrome yet...
I'll patch that extension to remove privacy related stuff (i dont know any other session extension as good as this one) i'll upload patched version here when i do ;) as you may be interested ;)
That's a cool topic, to report what extensions is not clean... i'll do that when i will tackle this todo :)

@xsmile Didn't know about these ones, and I always thought about doing one myself, so thank you for these additions !
@intika This is something I would gladly re-download if it were cleaned :) But I don't know if it would be possible as it seems to not be open source, and copyrighted without any trace of legal agreements or privacy policy :/

This is something I would gladly re-download if it were cleaned :) But I don't know if it would be possible as it seems to not be open source, and copyrighted without any trace of legal agreements or privacy policy :/

Can extension be closed source ? i saw some that used some js masking but i am not aware that we could use binary on extensions... now when it come to copyright, they did not ask to copy my private information lool

FYI, the User Resources page on the Wiki has a section for useful extensions. Feel free to submit a PR (according to the guidelines outlined in that section).

Hopefully some of the following might help:-

HTTPS Everywhere  - By eff.org, leading internet privacy body, but @intika made very interesting points and he offered an excellent alternative.  Thanks @intika!  (Anyway, some valued webpage (directory.shoutcast.com :persevere:!) didn't work for me unfortunately, if I remember correctly, without "#enable-potentially-annoying-security-features" flag enabled.)
Privacy Badger - By eff.org.
uBlock Origin
Translation Comparison - select text;  then click on toolbar icon for 3 translations (including google translate... or customize number) or right-click.
Selection Context Search - small.
Dark Night Mode - small, doesn't seem to 'phone home' and may not invert colours on videos.
Disable HTML5 Autoplay - by @Eloston.

directory.shoutcast.com

Nice i use to play shoutcast all the time before spotify came in... indeed it does not work with https because the stream is coming from an unencrypted location (proof that HTTPs Everywhere is still not working as expected) it is what it is some services just don't use encryption
Note that i did not yet reviewed the code of the extensions that i listed...

Dark new tab clean dark new tab

Adjust-screen-brightness

Notifier-for-github

Simpleextmanager easily disable/enable/remove extensions

Disable HTML5 Autoplay - by @Eloston.

I'm flattered that you'd suggest this, but there are caveats. It works fine for the most part, but there are a number of sites where it just doesn't work well or at all. In fact, there are several cases where it can cause the website to severly misbehave, such as unbounded memory growth or a busy loop. However, you can workaround this with a whitelist/blacklist.

uBlock origin
uMatrix
HTTPS Everywhere

Disable HTML5 Autoplay

Doesn't chrome://flags/#autoplay-policy control this?

Doesn't chrome://flags/#autoplay-policy control this?

Yes but not if the site force autoplay with some script

Can people get extensions to install in ungoog chrome? I cant get the url on this page to work at all, https://ungoogled-software.github.io/ungoogled-chromium-wiki/faq#can-i-install-extensions-from-the-chrome-webstore.
I keep getting invalid appID, i tried including the [ ] and not including them, tried including the "id=" bit and not including it, tried multiple extensions and even tried pasting the modified url into chrome but always invalid appID.

Can people get extensions to install in ungoog chrome?

This is off-topic. Please file a new issue. There you should put which URL you're trying to use.

Hi @memeticks!
In case it can help you, a quick way IMHO to install extensions with ungoogled-chromium v70.0 (and v69 too, if I remember correctly, in my experience) is to let the browser install it for you by setting up a custom search engine for extension installation.  Looking through the link you posted, to "set up the custom search engine", you should modify the 'template CRX URL', as described in the FAQ, with the browser (basic) version number;  and replace [EXTENSION ID] with %s (the term you use to create engines in typical chromium browsers).  Therefore...
https://clients2.google.com/service/update2/crx?response=redirect&acceptformat=crx2,crx3&prodversion=[VERSION]&x=id%3D[EXTENSION_ID]%26installsource%3Dondemand%26uc
...should look as follows for ungoogled-chromium v70.0:
https://clients2.google.com/service/update2/crx?response=redirect&acceptformat=crx2,crx3&prodversion=70.0&x=id%3D%s%26installsource%3Dondemand%26uc
Next, you could set the flag to download the extension as suggested in the next sentence ("Then, set chrome://flags/#extension-mime-request-handling to Download as regular file"), and then install it as described there.
In my experience, the next paragraph in the FAQ, entitled "Installing the CRX file", offers a very helpful and quicker solution:  "Change the flag chrome://flags/#extension-mime-request-handling  to Always prompt for install".  Relaunch the browser.  Add the search engine under chrome://settings/.  For example, call it 'Installextension', and set a search key - 'i', say.  Then, in the location bar, type an 'i' and press tab.  Installextension should then appear as the 'search mode'.  Paste the extension ID for the extension that you found earlier in the Chrome Store (as described in the FAQ);  and press 'enter'.  It should prompt you to accept the extension.
It is good practice the turn the flag back to Default for security.

Apologies for the off topic, and thanks a mill jlj2 for your help. Not sure what I was doing wrong yesterday but I got it to work today thanks to your examples and I now have my ublock and common hangouts installed and working perfectly.
Thanks all!

hmm, after I read this discussion, I think I should reconsider my extension. But my must have extension is The Great Suspender.
The extension I used before is:

The Great Suspender
Adguard Adblocker
Poper Blocker (probably should change, but not sure what to change to)
No Script

Considering that so many extensions request significant access rights a relevant question when talking about "best" seems to be: How do you decide whether you can grant those rights to an extension or not?
Do you check the source code?

If yes: How exactly? Are you doing it line by line for all files or are you looking for a particular pattern in specific files?
If no: Do you simply follow recommendations?

Do you trust an extension based on what many people trust?
And the dangers of that. (considering so many people use all kind of spyware without even knowing)

@anchev I think there is some good ways to avoid most nefarious or dangerous extensions:

Never install from the chrome web store, install directly from source (github/gitlab etc..), this will avoid auto-updates with unforseen code added (this could happen even with a good willed developper, if his chrome web store account has been accessed by someone else, to push a nefarious update)
Try to avoid team based developped extensions, this seems to be counter-productive (as in security, the more person is behind a product, the more it might gain legitimity).
But extensions are only monkey-patchs on existing webpages, so there is no stability on the working state of the code base.
This incitate team based extensions to build metrics on its working state, and indirectly its user-base.
And unfortunaly, the already developpers are more armed to go through the code base to watch for suspect urls, suspect unicode characters, or suspect mimified code ..

@pegasusearl - when the answer is before the question it looks weird :)

Never install from the chrome web store, install directly from source (github/gitlab etc..), this will avoid auto-updates with unforseen code added

But UC is "immune" to that, so it is not a real issue.

My recent findings:
The command line option:
--enable-strict-mixed-content-checking

disables mixed content.
The following flag does the same + it enforces a non-HTTPS warning in address bar:
chrome://flags/#enable-potentially-annoying-security-features

As you may know uBO can also block mixed requests.
So these practically make HTTPS Everywhere not necessary. The only thing which these 2 options don't do is to enforce secure requests but that may break loading (just like with HTTP-E) and is generally a thing which the website itself should fix, not the client.


deps: upgrade fuel-core and fuel-vm crates versions

This PR is here to adapt the SDK to :

<EMAIL_ADDRESS><EMAIL_ADDRESS>

Still some work to be done wrt to Metadata.

Looks good. I have two general suggestions:
1. We should consider estimating predicates via the `fuel-client` API so that we may leave running the VM to the node. That would take care of the missing gas prices and lessen our dependency on `fuel-vm` which we should probably try and replace with `fuel-asm` at some point in the future.

I understand the logic, but I don't think it's the point of this PR here. To estimate using the client, I would need access to a Provider from within a tx or a TxBuilder which is not the current design.

2. I'd move the `precompute` and `estimate_predicates` into the tx builders. The idea was that once a Tx is built it is immutable. This was especially important for Inputs/Outputs due to the various offsets being calculated. If we mutate after we build the tx then we get into hairy situations like: "The builder used consensus parameters A, afterward the built TX got mutated a bit using consensus parameters B". Best we avoid that by not touching the TX after it was built.

Definitely agree!

I fixed all remaining cases. Reviewers, please pay extra attention to gas changes in b8086aa, I'm unsure whether they are correct.

ty I didn't notice I had wrong gas values!


Expose gltfio library so it can be used by third_parties

Coming soon: iOS demo

Approved if we can get kokoro to pass :)

Ugh, I was worried about duplicate symbols from STB.. I'll have to rethink this.


add new term MONDO:0100081 cerebellular medulloblastoma, closes # 706

Based on our Skype conversation, and in reviewing the literature, I think that we shouldn't create this new class after all, although, I would say this is not super straightforward.
These references seem to suggest that medulloblastomas arise from the cerebellum:
https://link.springer.com/article/10.1007/s00401-011-0922-z
https://www.nature.com/articles/nature09587
This reference states the medulloblastoma can arise from the cerebellum or medulla/brain stem.
https://www.nature.com/articles/nature11284#ref1
NCIT does not have a separate class for cerebellar medulloblastoma though (see: https://ncit.nci.nih.gov/ncitbrowser/ConceptReport.jsp?dictionary=NCI_Thesaurus&version=19.07e&ns=ncit&code=C3222&key=1685330142&b=1&n=null)
I think we should just keep the two terms merged (as is) and close this PR and the ticket #706.
I updated the spreadsheet.


HSEARCH-2843 Changing the limit/offset of a query does not clear the cached results

https://hibernate.atlassian.net//browse/HSEARCH-2843

merged


New version: GDAL v1.0.2

Registering package: GDAL
Repository: https://github.com/JuliaGeo/GDAL.jl
Created by: @evetion
Version: v1.0.2
Commit: 214513e8f80249318bd1cd90b191ffd5f8014ac3
Reviewed by: @evetion
Reference: https://github.com/JuliaGeo/GDAL.jl/commit/214513e8f80249318bd1cd90b191ffd5f8014ac3#commitcomment-36572622

Please close this, will create a better [compat] section.


Include matcher does not utilize duck typing

Consider the following code:
class Foo < SimpleDelegator
end

Now, a test:
RSpec.describe Foo do
  it "includes bar" do
    foo = described_class.new({bar: "baz"})
    expect(foo).to include(bar: "baz")
  end
end

The following code will fail when it really should not. The culprit can be found in #comparing_hash_to_a_subset?. It currently just checks if actual is a Hash.
If we instead check if actual responds to #fetch?, #key? and #keys?, we can now properly test hash-like objects as well. If we allow hash-like objects, we need to expect that hash-like objects are being passed in an expectation as well. Is #fetch?, #key? and #keys? enough of an interface?
I'd be happy to take a stab at this. Before I do, it would be nice with some feedback.
Cheers

I can see how nice it would be for the matcher to treat anything hash-like like a hash, but there are a number of "is a hash?" checks outside the method you identified:

https://github.com/rspec/rspec-expectations/blob/82ab90b513dfcd0b52064f56be4b2c6218adeded/lib/rspec/matchers/built_in/include.rb#L54
https://github.com/rspec/rspec-expectations/blob/82ab90b513dfcd0b52064f56be4b2c6218adeded/lib/rspec/matchers/built_in/include.rb#L73
https://github.com/rspec/rspec-expectations/blob/82ab90b513dfcd0b52064f56be4b2c6218adeded/lib/rspec/matchers/built_in/include.rb#L113

Seems like we'd have to apply duck-typing to all of them. (Although we might be able to get by only applying that to the ones that check actual values: it seems less useful to support hash-like objects passed to the matcher itself as expected values).  In addition, we do similar checks for Array and String:
https://github.com/rspec/rspec-expectations/blob/82ab90b513dfcd0b52064f56be4b2c6218adeded/lib/rspec/matchers/built_in/include.rb#L133
...and if we're going to support duck typing for hashes, we should probably support it for those, too, for consistency.

Is #fetch?, #key? and #keys? enough of an interface?

Should be fetch (not fetch?) and keys (not keys?).  And it looks like we use merge, as well.
While this is conceptually a really good idea I do have a few concerns:

How will this affect perf?  Doing one respond_to? check is one thing, but doing 4 several times as part of the match logic may have a measurable perf affect.  IMO, it would be a poor tradeoff to make this matcher measurably slower for everyone just to support this case.  I'd want to see some benchmarks before merging a PR so we understand how this affects things.
Will this make future maintenance harder?  We are committed to SemVer, which means that if we announce in the next release that the include matcher supports any hash-like object (based on it supporting the 4 methods discussed above), we're committing to always supporting that, at least until RSpec 4.0 (and there's no reason to think we'd drop support then: I just mention it because it would be the first opportunity to re-consider our support).  The problem is: what if we need to use additional methods from the Hash interface in the future?  Adding an additional respond_to? check could be problematic because a hash-like object that implements the 4 methods we currently use may not implement the new one--which means adding a new respond_to? check for a newly used method could be a breaking change.  Or maybe we could just document this as only working for objects that implement 100% of the Hash interface, even if we don't currently check all of it; objects that are hash-like and support only part of the Hash interface would not be officially supported even though the would perhaps work for now.

Anyhow, you can see there's a lot to consider here.  At the very least, before creating a ready-to-review PR it would be good to see the benchmarks so we know what kind of affect this would have.
How important is this feature to you?

We could still use the respond_to checks as a fallback after we've checked it's a hash, it'll be marginally less performant for these object but the same for actual Hash subclasses

We could use the respond_to checks as a fallback after we've checked it's a hash, it'll be marginally less performant for these object but the same for actual Hash subclasses

But anytime you use include? for non-hashes (e.g. expect(array).to include(item_1, item_2)), you'd bear the cost of all the extra checks.

Pretty certain we can arrange this so the major use cases avoid the scenario where multiple checks are done, we do this elsewhere special casing the common types such as Hash, Array and String etc.

@myronmarston great feedback.

[...] (Although we might be able to get by only applying that to the ones that check actual values: it seems less useful to support hash-like objects passed to the matcher itself as expected values).

I totally agree. Applying duck typing to the actual values should be enough.

How will this affect perf? Doing one respond_to? check is one thing, but doing 4 several times as part of the match logic may have a measurable perf affect. IMO, it would be a poor tradeoff to make this matcher measurably slower for everyone just to support this case. I'd want to see some benchmarks before merging a PR so we understand how this affects things.

I wrote a naive benchmark for reference.
require "benchmark"

n = 1_000_000

Benchmark.bm(17) do |x|
  o = Object.new
  a = o = (1..1000).to_a
  h = Hash[(1..1000).map { |n| [n, n] }]
  x.report("Object#is_a?") { n.times do o.is_a?(Hash) end }
  x.report("Object#respond_to?") { n.times do o.respond_to?(:fetch) && o.respond_to?(:key?) && o.respond_to?(:keys) end }
  puts
  x.report("Array#is_a?") { n.times do a.is_a?(Hash) end }
  x.report("Array#respond_to?") { n.times do a.respond_to?(:fetch) && a.respond_to?(:key?) && a.respond_to?(:keys) end }
  puts
  x.report("Hash#is_a?") { n.times do h.is_a?(Hash) end }
  x.report("Hash#respond_to?") { n.times do h.respond_to?(:fetch) && h.respond_to?(:key?) && h.respond_to?(:keys) end }
end

                        user     system      total        real
Object#is_a?        0.080000   0.000000   0.080000 (  0.079250)
Object#respond_to?  0.150000   0.000000   0.150000 (  0.153981)

Array#is_a?         0.080000   0.000000   0.080000 (  0.073993)
Array#respond_to?   0.150000   0.000000   0.150000 (  0.149979)

Hash#is_a?          0.080000   0.000000   0.080000 (  0.079886)
Hash#respond_to?    0.190000   0.000000   0.190000 (  0.193079)

Couldn't the cost of checking if the actual object is hash-like be memoized? actual will be the same through the expectation, right? Then we only need to perform the check once.

Will this make future maintenance harder? We are committed to SemVer, which means that if we announce in the next release that the include matcher supports any hash-like object (based on it supporting the 4 methods discussed above), we're committing to always supporting that, at least until RSpec 4.0 (and there's no reason to think we'd drop support then: I just mention it because it would be the first opportunity to re-consider our support). The problem is: what if we need to use additional methods from the Hash interface in the future? Adding an additional respond_to? check could be problematic because a hash-like object that implements the 4 methods we currently use may not implement the new one--which means adding a new respond_to? check for a newly used method could be a breaking change. Or maybe we could just document this as only working for objects that implement 100% of the Hash interface, even if we don't currently check all of it; objects that are hash-like and support only part of the Hash interface would not be officially supported even though the would perhaps work for now.

I can see how maintenance could be affected in terms of opinion. Who decides what the interface should be for Hash, Array, String and so on. On the other hand, allow expectations to be set on arbitrary objects that implement those interfaces would be a major step forward in my opinion.


Use RawConfigParser instead of ConfigParser to support special characters in passwords

Hi,
Having some trouble with a testrail password that contains a '%' symbol. Since this is a special character for ConfigParser interpolation the test is failing instantly.
Would it be possible to use RawConfigParser or are the interpolation features required?
Cheers

@TytoDan Have you tried escaping the character ?

Closing as no reply for extended period of time, feel free to reopen.

I just wanted to comment on this issue, as I ran into the same problem, where a "%" character in the password was causing ptest-testrail to break. The workaround was to add a second "%" character, as described here: https://stackoverflow.com/a/28874886/1798547


Introduce SearchIndex.query

Add convience method for SearchIndex.query that allows the redisvl.query.VectorQuery object to be passed directly.

Codecov Report

Merging #30 (aae342e) into main (dcc5297) will decrease coverage by 0.20%.
The diff coverage is 87.50%.

@@            Coverage Diff             @@
##             main      #30      +/-   ##
==========================================
- Coverage   88.05%   87.86%   -0.20%
==========================================
  Files          11       11
  Lines         536      544       +8
==========================================
+ Hits          472      478       +6
- Misses         64       66       +2

Files Changed
Coverage Δ

redisvl/index.py
90.62% <83.33%> (-0.44%)
:arrow_down:

redisvl/query.py
94.31% <90.00%> (-0.98%)
:arrow_down:


Reorganize the code base

Most of the code is in the engine module. See if the code can be better separated into appropriate submodules.

Move shaders into their own folder


WIP: implementation of postgres Money type

This is initial support for postgres' Money type for #680. As mentioned in the issue, the implementation is straightforward, however I had some questions:

The meaning/precision of the MONEY type depends on the lc_monetary  setting. However, I do not know if it would be useful or necessary to try and expose this to clients.
Reading the docs for diesel::types, diesel::sql_types, and diesel::data_types, it seems that the first 2 are not to be used for fields in end user structs; this is what diesel::data_types should do (although it seems these are typically re-exports of specific types?). I was unsure if it made sense to introduce diesel::data_types::Money, especially since I don't believe any other backend (mysql, sqlite) have a specific MONEY type. Basically, I am unclear on the intended structure and relation of "generic" types and backend-specific types...
There is currently no implementation of various ops (Add, Mul, etc.); it seems this can be sensibly be implemented here, but was unsure if it should be implemented for PgMoney or some types::Money

Also, is there a rustfmt setting/style used in this project? I use default rustfmt & autofmt in vim, which ended up creating a bunch of formatting-noise edits (not included here).

My response to the PR description without having read the code:

I was unsure if it made sense to introduce diesel::data_types::Money

Yes, it does. I would call it Cents though, not Money

especially since I don't believe any other backend (mysql, sqlite) have a specific MONEY type. Basically, I am unclear on the intended structure and relation of "generic" types and backend-specific types...

Basically we put it in a backend specific module, and pub re-export it from the generic module. I have not decided what we'll do when there's a namespace collision there

There is currently no implementation of various ops (Add, Mul, etc.); it seems this can be sensibly be implemented here, but was unsure if it should be implemented for PgMoney or some types::Money

Doesn't need to be handled by this PR.

Also, is there a rustfmt setting/style used in this project? I use default rustfmt & autofmt in vim, which ended up creating a bunch of formatting-noise edits (not included here).

No, rustfmt doesn't have settings for a few things that we really want (mainly having where on the line above the first predicate). We take git churn really seriously and right now the settings we could make with rustfmt would have too much churn. We do want to add one though. I appreciate you making sure that you excluded the formatting-noise changes.

I updated per the comments, although I have not put in doc tests yet.
I may still be getting the naming wrong here; I renamed pg::types::money::PgMoney to pg::types::money::PgCents, sort of in line with that is done with e.g. PgTimestamp, etc. pg::types::sql_types::Money, however, I left named as-is to mean "some representation of Money". But, in client code I end up using PgCents in my structs, and it is good to know in client code that I'm dealing w/ cents... seems like I am making this too complicated. Should there only be a single struct Cents defined, instead of both pg::types::sql_types::Money and pg::types::money::PgCents? If so, should it be defined as pg::types::money::Cents and then re-exported in pg::types::sql_types? Sorry if this should be obvious...
RE: using the name Cents; I associate cents specifically with 1/100ths, so I wonder if it's the appropriate name here since it actually depends on the lc_monetary setting (could be 1/1000th, etc.)? I understand wanting to make explicit what the struct is encoding as opposed to Money which could be any representation. I'm not sure I have a better suggestion; MoneyMinorUnits maybe?
Once I understand/tidy up naming I can clean up the commits on this branch and put in the doc tests as well.

I'm fine with having it be called PgMoney and then aliasing it as Cents, since that's the most common case. I don't want PgCents though -- Usually that prefix is "this is a type that is the raw representation sent over the wire, not one that you should use". Cents is a type that we want to encourage people to use. (Literally the main reason for wanting to support this type is so when people ask about what to do with their DECIMAL(10, 2) columns I can stop adding "but also you should be using an integer as cents for monetary data" to the end of my answer)

Updated with a doctest and the suggested naming. This ended up being:

pg::types::money::PgMoney exported as pg::data_types::Cents and diesel::data_types::Cents.
pg::sql_types::Money, re-exported as diesel::types::Money

I don't feel strongly about the choice of the Cents name, but just curious if there were thoughts on my suggestion of using a name that isn't specifically associated w/ "1/100th" units. Again, not sure I have great alternate suggestions; MoneyMinorUnits, SmallestMoneyUnits...? Cents maybe is just the best as it's intuitive(?) even if it's not universally accurate...
Otherwise, let me know if I should clean up the commits on this PR to remove the various rename noise.

Cents is not universally correct, but it is correct for the majority of currencies. I think it's fine to have the alternative PgMoney spelling as well for users who are working with currencies that are not cents.

Makes sense; straight PgMoney export added in addition to the Cents alias.

Can you add a CHANGELOG entry?

@sgrif just wanted to see if the latest changes addressed any outstanding comments. Not trying to be pushy on the PR, just unsure what sort of visibility updates have if I don't post a comment or mention...

@sgrif, I think all your comments were addressed. This looks good to me now. The conflict in CHANGELOG.md is easy to resolve, and can be done while merging.

Thanks for working on this, @pfernie!


feature: Add serial number and wwid to disks fact

This PR adds serial numbers and wwid to the disks facts.
@IrimieBogdan said I should open this: https://puppetcommunity.slack.com/archives/C0W298S9G/p1614364073352100?thread_ts=1614252410.207700&cid=C0W298S9G

Can one of the admins verify this patch?

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Boris seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

It`s really helpfull and good feature.
Dear facter team, please look at this issue.

Can one of the admins look at this issue?

What is next?

Hey, sorry for letting the PR languish for so long.
The PR looks good, the following should be done in order to get it merged:

create a ticket for the feature at tickets.puppetlabs.com/projects/FACT, and edit the commit message to include the ticket ID (you can check other PRs for examples); this is so we can internally track the ticket, and also to make it possible to give you credit on our release notes page
have some tests for this behavior; tests for this resolver live in https://github.com/puppetlabs/facter/blob/main/spec/facter/resolvers/disk_spec.rb - at a first glance you need to add the new false keys to https://github.com/puppetlabs/facter/blob/main/spec/facter/resolvers/disk_spec.rb#L8 and then stub the Facter::Core::Execution calls as needed in the before blocks (example: https://github.com/puppetlabs/facter/blob/main/spec/facter/resolvers/disk_spec.rb#L34)
ideally we should have tests for both when the command works and returns something, and also for when it does not (and returns an empty string)

Let me know if you need any help with anything!

@KervyN I opened https://github.com/puppetlabs/facter/pull/2461 which includes your work. In the PR I changed the fact names from sn to serial, and wwid to wwn (for simplicity reasons, to match the lsblk option name). It would be great if you can give that PR a test.

@KervyN I opened #2461 which includes your work. In the PR I changed the fact names from sn to serial, and wwid to wwn (for simplicity reasons, to match the lsblk option name). It would be great if you can give that PR a test.

@GabrielNagy absolutly. This looks very awesome. I really appreciate the work you put into this. Thank you.
Renaming things to match the lsblk output is a really great idea.
Is there an easy way to test it on production hardware? The last times I just rewrote the disk.rb file and ran puppet facts.
What I tried now on ubuntu focal: install ruby-dev, bundler, make and run bundle install as a local user. This builds but I can not run ./bin/facter as I get an exceptions:
~/facter$ ./bin/facter
Traceback (most recent call last):
	2: from ./bin/facter:5:in `<main>'
	1: from /usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require'
/usr/lib/ruby/2.7.0/rubygems/core_ext/kernel_require.rb:92:in `require': cannot load such file -- facter/framework/cli/cli_launcher.rb (LoadError)

On a centos7 system I can't get this build because ruby is just too old.
Next thing I would try is to clone it into /opt/puppetlabs and use the packaged ruby, but I am not sure if this would change anything, so I ask you.
Please excuse my lack of knowledge when it comes to building things.

@KervyN a simple way would be to use the packaged ruby to test it (on a machine with puppet-agent installed):
/opt/puppetlabs/puppet/bin/gem install bundler
git clone https://github.com/GabrielNagy/facter && cd facter
git checkout add_sn_wwid_to_disks_fact
/opt/puppetlabs/puppet/bin/bundle install
/opt/puppetlabs/puppet/bin/bundle exec facter disks

Sample output for me:
> /opt/puppetlabs/puppet/bin/bundle exec facter disks
{
  sda => {
    model => "Virtual disk",
    size => "70.00 GiB",
    size_bytes =><PHONE_NUMBER>0,
    type => "hdd",
    vendor => "VMware"
  },
  sr0 => {
    model => "VMware IDE CDR00",
    serial => "00000000000000000001",
    size => "1.00 GiB",
    size_bytes =><PHONE_NUMBER>,
    type => "hdd",
    vendor => "NECVMWar"
  },
  sr1 => {
    model => "VMware IDE CDR01",
    serial => "01000000000000000001",
    size => "1.00 GiB",
    size_bytes =><PHONE_NUMBER>,
    type => "hdd",
    vendor => "NECVMWar"
  }
}

@GabrielNagy it works like I would expect it.
I just tested on centos7 and ubuntu 20.04 and tested some systems to know if it reports correctly on different kind of disk vendors, which it does.

Sounds great, thanks for testing! I'll close this PR then since it's replaced by https://github.com/puppetlabs/facter/pull/2461


Tool identifies 0BSD as BSD

I was using the tool to verify SPDX RDF reports generated by FOSSology. Where I noticed, the tool identifies 0BSD as BSD license.
$ java -jar tools-java-1.1.3-jar-with-dependencies.jar Verify SPDX2_30-seconds-of-code-master.tar.gz.spdx.rdf
WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impact performance.
This SPDX Document is not valid due to:
        Missing required license name in 30-seconds-of-code-master.tar.gz/30-seconds-of-code-master.tar/30-seconds-of-code-master.zip/30-seconds-of-code-master/.mdlrc.style.rb in 30-seconds-of-code-master.tar.gz
        Missing required license text for BSD in 30-seconds-of-code-master.tar.gz/30-seconds-of-code-master.tar/30-seconds-of-code-master.zip/30-seconds-of-code-master/.mdlrc.style.rb in 30-seconds-of-code-master.tar.gz

This causes tool to say the SPDX Document is not valid. I am attaching the file as .txt here to check.
SPDX2_30-seconds-of-code-master.tar.gz.spdx.rdf.txt
The license is used as a licenseConcluded in a <spdx:File>
<spdx:licenseConcluded>
  <spdx:ListedLicense rdf:about="http://spdx.org/licenses/0BSD">
    <spdx:name>BSD Zero Clause License</spdx:name>
    <spdx:licenseId>0BSD</spdx:licenseId>
    <spdx:licenseText><![CDATA[
Copyright (C) YEAR by AUTHOR EMAIL

Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted.

 IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
    ]]></spdx:licenseText>
    <rdfs:seeAlso>http://landley.net/toybox/license.html</rdfs:seeAlso>
  </spdx:ListedLicense>
</spdx:licenseConcluded>

Thanks @GMishx for reporting this.
I narrowed down the issue - for some reason, the Jena library is removing the preceding 0 in 0BSD when converting from a URI to a local name.
I'll transfer this issue over to the RDF library.
Turns out your timing is quite good - I'm just about to do a new release of the java tools and should be able to get in a fix or at least some kind of work around.


Custom tap_action on sub-button not working

Hey I've been at this for a bit, not sure if it's a bug or just not a possible function. Trying to make buttons with preset cover positions. I press the button and nothing happens.
https://www.home-assistant.io/integrations/cover/
type: custom:bubble-card
card_type: cover
entity: cover.bedroom_window_shade
name: Bedroom
icon_open: mdi:roller-shade
icon_close: mdi:roller-shade-closed
show_state: false
show_last_changed: false
show_attribute: true
attribute: current_position
card_layout: large-2-rows
hold_action: {}
rows: 1
sub_button:
  - entity: cover.bedroom_window_shade
    name: "50"
    show_name: true
    show_icon: false
    tap_action:
      action: cover.set_cover_position
      target:
        entity_id: cover.bedroom_window_shade
      data:
        position: 50

Sorry, figured it out!
sub_button:
  - entity: cover.bedroom_window_shade
    name: "50"
    show_icon: false
    show_name: true
    tap_action:
      action: call-service
      target:
        entity_id: cover.bedroom_window_shade
      data:
        position: 50
      service: cover.set_cover_position


[Help] Question about DPO continuous training with LoRA

Reminder

[X] I have read the README and searched the existing issues.

Reproduction
No
Expected behavior
No response
System Info
No response
Others
I want to ask about training Pretrained SFT using LoRA -> SFT_lora_checkpoint. After that, continue training DPO with the flag --adapter_name_or_path: SFT_lora_checkpoint. And without the flag --create_new_adapter, it will produce DPO_lora_checkpoint. Then, during inference, I just need to merge pretrained_checkpoint + DPO_lora_checkpoint. Is that correct?

Similar with: https://github.com/hiyouga/LLaMA-Factory/discussions/3136
If you disabled --create_new_adapter, you should infer the model with only the last adapter


  Configure Azure Pipelines

This pipeline configuration builds the application and produces a build for the Release configuration.

Yes, its good


Move app, bundle, and example folders to another repository.

The folders bootstrap operates on will no longer be part of the bootstrap gem.

Git-commit 9b27b21 completed this task.


How to get started?

Is this project safe for production use?
Can you share how to get started using this?

it's mostly a demonstrative example rn, i would only use it if i needed a super high speed table on huge data. i'd probably just copy the code over and remove/add code as needed
there is a full example here which is the website
https://github.com/gabrielpetersson/fast-grid/tree/master/example

Okay, thanks!


install rclone on ARCH via snapd fails

I am trying to install rclone on ARCH via snap:
yaourt -S --noconfirm snapd
sudo systemctl enable --now snapd.socket
sudo snap install rclone --classic

But Snapd fails to install the library. I have googled for this error message, and it appears the same error message also occurs frequently on ubuntu.
Apr 22 19:31:01 NUC snapd[7612]: 2017/04/22 19:31:01.823042 api.go:879: Installing snap "rclone" revision unset
Apr 22 19:31:02 NUC /usr/lib/snapd/snapd[7612]: daemon.go:176: DEBUG: uid=0;@ POST /v2/snaps/rclone 476.392928ms 202
Apr 22 19:31:02 NUC /usr/lib/snapd/snapd[7612]: taskrunner.go:353: DEBUG: Running task 21 on Do: Download snap "core" (1577) from channel "stable"
Apr 22 19:31:10 NUC NetworkManager[346]: <info>  [1492882270.2659] device (wlp3s0): supplicant interface state: inactive -> scanning
Apr 22 19:31:34 NUC /usr/lib/snapd/snapd[7612]: taskrunner.go:353: DEBUG: Running task 22 on Do: Fetch and check assertions for snap "core" (1577)
Apr 22 19:31:35 NUC /usr/lib/snapd/snapd[7612]: taskrunner.go:353: DEBUG: Running task 23 on Do: Mount snap "core" (1577)
Apr 22 19:31:35 NUC systemd[1]: Reloading.
Apr 22 19:31:35 NUC systemd[1]: Mounting Mount unit for core...
-- Subject: Unit var-lib-snapd-snap-core-1577.mount has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit var-lib-snapd-snap-core-1577.mount has begun starting up.
Apr 22 19:31:35 NUC systemd[1]: var-lib-snapd-snap-core-1577.mount: Mount process exited, code=exited status=32
Apr 22 19:31:35 NUC systemd[1]: Failed to mount Mount unit for core.
-- Subject: Unit var-lib-snapd-snap-core-1577.mount has failed
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit var-lib-snapd-snap-core-1577.mount has failed.
--
-- The result is failed.
Apr 22 19:31:35 NUC systemd[1]: var-lib-snapd-snap-core-1577.mount: Unit entered failed state.
Apr 22 19:31:35 NUC /usr/lib/snapd/snapd[7612]: task.go:303: DEBUG: 2017-04-22T19:31:35+02:00 ERROR [start var-lib-snapd-snap-core-1577.mount] failed with exit status 1: Job for var-lib-snapd-snap-core-1577.mount
                                                See "systemctl status var-lib-snapd-snap-core-1577.mount" and "journalctl -xe" for details.

I am using Manjaro Xfce 17.0.1 which is based on ARCH.

That error message didn't really say what went wrong...
Did you try See "systemctl status var-lib-snapd-snap-core-1577.mount" and "journalctl -xe" for details. to see if that gives anything more?
@Dedsec1 any ideas?

i dont use Arch that often but i would suggest your running as root when installing snaps

it need snapd to arch linux? I able to install rclone with normal package manager (and i found rclone browser in AUR)
I use Manjaro GNOME 17.0.1

This is a good tip! Thanks. I will try this.the next time.
On 29 Apr 2017 9:40 am, "vampywiz17"<EMAIL_ADDRESS>wrote:

it need snapd to arch linux? I able to install rclone with normal package
manager (and i found rclone browser in AUR)
I use Manjaro GNOME 17.0.1
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/ncw/rclone/issues/1357#issuecomment-298153567, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AKWhGp6Tl2B2cIPHhRFRnBfxGfztijJ_ks5r0uligaJpZM4NFKEz
.

In case anyone stumbles upon this ticket: as of writing, rclone doesn't provide a recent version through snaps. Please install it either through your standard repositories or download directly. More info at: https://rclone.org/install/


Code 1106 permission deny, cannot access any device

I've probably spent more than 4 hours trying to get this script set up, and haven't got anywhere. I've first done the following:

Followed the steps on readme.md and installed 1.3.1
Paired the device with Smart Life app, devices can be successfully controlled with the app.
Scanned and detected the local device (a smart plug). The device showed a Product ID and Device ID but no Local Key, and the firmware version was 3.3.
Set up Tuya IoT account + cloud project and configured it following the instructions of step 3 on readme.md. Confirmed that the datacenter region was "Eastern America Data Center", app account QR was scanned with Smart Life, Service APIs are subscribed and authorized. Also recorded the Client ID and API Secret values, which are displayed under the labels "Access ID/Client ID" and "Access Secret/Client Secret" respectively.
Ran the wizard and filled in the client ID, API secret, Device ID of the earlier scanned device, and region (us-e), which resulted in the error "permission deny".

I've then done the following steps to debug, following a number of different guides online:

Attempted to pair with the npm project tuyapi, which gave the same error
Created a new account with a different email, unlinked all devices, and repeated the entire pairing process
Created a new user in the Users tab of the project page
Ensured that the passwords were 10 character alphanumeric
Tested various commands with the Tuya API Explorer web tool with the Device ID above, which give the same error

"code": 1106,
"msg": "permission deny",

So far nothing I have tried seems to have worked. Any ideas what I am doing wrong and what can be done to solve this issue or debug it further?

Thanks for opening the issue @cy1110 .  This is the most frustrating part.  Tuya keeps changing their process so automating it is difficult.  The error number doesn't give us much more detail (see here).
Some ideas:

Tuya is aggressive about regions.  If you call from an IP that looks like it is outside of the region they expect, it will be denied.   I would try "Western American Datacenter" in the Tuya cloud portal to your project and try using "us" in the Wizard.

Tuya IoT Service permission selection can be glitchy.  Try navigating to https://iot.tuya.com/ then "Cloud" -> "My Services" and make sure "IoT Core"  "Authorization" and "Smart Home Scene Linkage" show "subscribed" like this:

Also make sure they are authorized:  Go to https://iot.tuya.com/ then "Cloud" -> select your project ->  "Service API" tab  and make sure "IoT Core"  "Authorization" and "Smart Home Scene Linkage" show "authorized" like this:

There is an "Allow List" option that can be turned on in the project.  Try navigation to https://iot.tuya.com/ then "Cloud" ->  Click on your project and ensure "allow list" is not turned on:

1. Tuya is aggressive about regions.  If you call from an IP that looks like it is outside of the region they expect, it will be denied.   I would try "Western American Datacenter" in the Tuya cloud portal to your project and try using "us" in the Wizard.

OMG yes thank you so much, this one did the trick. The difference immediately showed, when creating a new project with the other datacenter as server, the devices showed up in the Cloud->Development->Devices->All Devices folder. Previously they never showed up in there.
I've PRed a screenshot and some instructions https://github.com/jasonacox/tinytuya/pull/97

Thank you, @cy1110 !   I merged your PR.


Issue-3956 - Adding a page URL always defaults to 'Page and Child pages' site alias option.

Fixes #3956
Summary

SaveTabUrl SP was always writing 0 for PortalAliasUsage column so that it's writing "@PortalAliasUsage" as of now which is the passed paremeter. In addition, while reading the URLs, ChildPagesInherit was getting passed no matter what the actual value in the database is and that's also fixed.
Demo: https://drive.google.com/file/d/1Bmw8EF9VL4Ij9FUuSs2fd56r0-zi_iMC/view?usp=sharing
Note: This PR depends on #3954 which should be merged first.

Other than the SQL version change, this looks good to me

It's done.


Request to cleanup some uses of bindMemory and assumingMemoryBound

Doing a random github search I found some potential misuses of the bindMemory API
https://github.com/IBM-Swift/Kitura-WebSocket/blob/0fdd351196addf30a789956dc71fc045d9ee5580/Tests/KituraWebSocketTests/KituraTest%2BFrames.swift
which should be written (safely) as
  _ = bytes.load(fromByteOffset: position, as: UInt8.self)

  let payloadBytes = UnsafeRawBufferPointer(bytes, capacity: length)
  _ = payloadBytes[i]

And of assumingMemoryBound(to:)
https://github.com/IBM-Swift/Kitura-WebSocket/blob/0fdd351196addf30a789956dc71fc045d9ee5580/Sources/KituraWebSocket/WSFrameParser.swift
which should be written as:
let bytes = UnsafeRawBufferPointer(buffer.bytes, capacity: buffer.length)

private mutating func parseOpCode(bytes: UnsafeRawBufferPointer, from: Int) -> (WebSocketError?, Int) {
                                         ^^^^^^^^^^^^^^^^^^^^^^

bytes.load(fromByteOffset: from+1, as: UInt16.self)

Same thing here:
https://github.com/IBM-Swift/Kitura-WebSocket/blob/0fdd351196addf30a789956dc71fc045d9ee5580/Tests/KituraWebSocketTests/KituraTest%2BFrames.swift
And here:
https://github.com/IBM-Swift/Kitura-WebSocket/blob/231ee01f9d17ffb68bebce061b624bf31dbb013b/Tests/KituraWebSocketTests/KituraTest.swift

Thanks!


Add FAB "autoselect" to presenter that expands to show the line

On the presenter, this should hide away like titlebar when there is no mouse activity. If the controller is open/in view, then the autoselect could be a sticky line at the bottom (above the icons bar). Alternatively we can always have it show on the presenter only and not worry about adding another line to the already-compact nav.
Nav Mockup:

Presenter Mockup:

Depends on #451


invoker.js documentation

A suggestion: maybe the documentation should make it clear that only the target object's methods can be invoked, and not any function.
Replace this: @param {String} method Name of the method to call.
With this: @param {String} method Name of any of the target object's methods to call.

If you want to create a PR for this, I think we'd accept it.  If you found this confusing, probably others did too.  For me, I don't see a reason for confusion; the very word "method" already implies all that.  But I don't object.