Implemented SVM (support vector machine) algorithm

Title: time: build SVM module from scratch and add comprehensive tests
Description:
This PR introduces a complete implementation of the Support Vector Machine (SVM) module from scratch. The module includes several key components and functions to support SVM training and prediction, as well as multiclass classification. Below is a detailed explanation of the new functionality:
SVMConfig Structure

max_iterations: Specifies the maximum number of iterations for training. Default is 1000.
learning_rate: Sets the learning rate for the training process. Default is 0.01.
tolerance: Defines the tolerance for stopping criteria. Default is 1e-6.
c: The regularization parameter for the SVM. Default is 1.0.

DataPoint Structure

x: A slice ([]f64) representing feature values of the data point.
y: An integer representing the class label of the data point.

SVMModel Structure

support_vectors: A slice of DataPoint structures representing the support vectors identified during training.
alphas: A slice ([]f64) containing the alpha (α) values for each support vector.
b: The bias term in the decision function.
kernel: A function of type KernelFunction that specifies the kernel function used for transforming the input data.
config: An instance of SVMConfig that holds configuration parameters for training.

Functions

linear_kernel(x []f64, y []f64) f64

Computes the linear kernel between two vectors x and y. It calculates the dot product of x and y.

polynomial_kernel(degree int) KernelFunction

Returns a polynomial kernel function with a specified degree. It computes ((\text{dot_product}(x, y) + 1)^\text{degree}).

rbf_kernel(gamma f64) KernelFunction

Returns a radial basis function (RBF) kernel function with a specified gamma parameter. It computes (\exp(-\gamma \cdot \text{dot_product}(\text{vector_subtract}(x, y), \text{vector_subtract}(x, y)))).

dot_product(a []f64, b []f64) f64

Calculates the dot product between two vectors a and b.

vector_subtract(a []f64, b []f64) []f64

Computes the element-wise subtraction of vector b from vector a.

train_svm(data []DataPoint, kernel KernelFunction, config SVMConfig) &SVMModel

Trains an SVM model using the provided data, kernel function, and config. Returns a pointer to the trained SVMModel.

predict_raw(model &SVMModel, x []f64) f64

Computes the raw prediction score for a data point x using the trained SVMModel.

predict(model &SVMModel, x []f64) int

Predicts the class label for a data point x based on the raw prediction score.

train_multiclass_svm(data []DataPoint, kernel KernelFunction, config SVMConfig) &MulticlassSVM

Trains a multiclass SVM model using a one-vs-one approach. Returns a pointer to the MulticlassSVM model.

predict_multiclass(model &MulticlassSVM, x []f64) int

Predicts the class label for a data point x using the trained multiclass SVM model.

Tests Added

test_polynomial_kernel: Validates the polynomial kernel function.
test_rbf_kernel: Validates the RBF kernel function.
test_train_svm: Tests the SVM training and prediction for binary classification.
test_predict_svm: Verifies predictions made by the trained SVM model.
test_train_multiclass_svm: Tests the training and prediction for multiclass classification.
test_predict_multiclass_svm: Verifies predictions made by the trained multiclass SVM model.

Summary by CodeRabbit

New Features

Introduced Support Vector Machine (SVM) capabilities for binary and multiclass classification, allowing users to define hyperparameters for training.
Added functionalities for training and predicting with SVM models.

Tests

Implemented a suite of unit tests to validate SVM functionalities, including kernel computations, model training, and prediction accuracy.

Kernel Functions:
a) Linear Kernel:
[ K(x,y) = x^T y ]
b) Polynomial Kernel:
[ K(x,y) = (x^T y + 1)^d ]
Here, ( d ) is the degree of the polynomial.
c) RBF (Radial Basis Function) Kernel:
[ K(x,y) = \exp(-\gamma ||x-y||^2) ]
Here, ( \gamma ) is a parameter and ( ||x-y||^2 ) is the squared Euclidean distance.
d) Quadratic Kernel:
[ K(x,y) = (x^T y)^2 ]
SVM Optimization Problem:
The dual formulation of SVM is as follows:
[ \max_{\alpha} \sum_{i=1}^n \alpha_i - \frac{1}{2} \sum_{i=1}^n \sum_{j=1}^n y_i y_j \alpha_i \alpha_j K(x_i, x_j) ]
Constraints:
[ 0 \leq \alpha_i \leq C, \quad \forall i ]
[ \sum_{i=1}^n \alpha_i y_i = 0 ]
Here, ( \alpha_i ) are the Lagrange multipliers, ( y_i ) are the class labels, ( K(x_i, x_j) ) is the kernel function, and ( C ) is the regularization parameter.
Decision Function:
[ f(x) = \sum_{i=1}^n \alpha_i y_i K(x_i, x) + b ]
Here, ( b ) is the bias term.
SMO (Sequential Minimal Optimization) Algorithm:
The SMO algorithm implemented in the code updates two Lagrange multipliers in each iteration:
a)
[ \alpha_j^{new} = \alpha_j^{old} - \frac{y_j(E_i - E_j)}{\eta} ]
b)
[ \alpha_i^{new} = \alpha_i^{old} + y_i y_j (\alpha_j^{old} - \alpha_j^{new}) ]
Here, ( E_i = f(x_i) - y_i ) are the error terms and ( \eta = 2K(x_i, x_j) - K(x_i, x_i) - K(x_j, x_j) ).
Multi-Class SVM:
The multi-class SVM approach implemented in the code uses the "one-vs-one" strategy. This involves training one SVM for each pair of classes. The total number of SVMs is:
[ \text{Total Number of SVMs} = \frac{k(k-1)}{2} ]
Here, ( k ) is the number of classes.
These mathematical expressions represent the core components of the SVM algorithm implemented in the code.


fixed alignment issue

PR Description 📜
I have fixed the alignment issue which is on the homepage.
Fixes #191

Mark the task you have completed ✅

Screenshot -

[x] I follow CONTRIBUTING GUIDELINE & CODE OF CONDUCT of this project.
[x] I have performed a self-review of my own code or work.
[x] I have commented my code, particularly in hard-to-understand areas.
[x] My changes generates no new warnings.
[x] I have followed proper naming convention showed in CONTRIBUTING GUIDELINE
[x] I have added screenshot for review.

Thank you soo much for contributing to our repository 💗

Add a before and after screenshot.

This is great!

@Lovelyfin00 ,
kindly remove both labels, I'm not a contributor.

Sure thing


fix excubia pkg name?

The excubiae contracts package is not consistent with those of the other packages: it misses a .sol extension.
A first version is already published though. Should we rename it for the next versions still?

Hey @sripwoud, excubiae is different from the others because there's no JS implementation. So in theory there's no need to have .sol.
Do you think we should still force this rule?

I personally don't mind. I didn't know if this was a deliberate choice or not.

I personally don't mind. I didn't know if this was a deliberate choice or not.

@sripwoud thx for bringing this up - yes, we discussed it with @cedoor a couple of weeks ago. I'm open to whatever btw

Let's keep it without .sol then 👍🏽


CUDA out of Memory Error

torch.cuda.OutOfMemoryError: CUDA out of memory. Tried to allocate 7.66 GiB (GPU 0; 8.00 GiB total capacity; 809.64 MiB already allocated; 5.02 GiB free; 1.18 GiB reserved in total by PyTorch) If reserved memory is >> allocated memory try setting max_split_size_mb to avoid fragmentation.  See documentation for Memory Management and PYTORCH_CUDA_ALLOC_CONF
Thank you for wonderful program! But i have this problem. Can you teach me how to fix it?

README.md will help you.

NOTE 2: ... If there are too many audio clips, you need a large internal-memory or set the 'cache_all_data' option to false in the configuration file.


Thank you

This is the perfect solution.

Changed SD cards
Restart
Now creating new clone.
Thanks!

I'd also like to say thank you. This script is the BEST one I have found. It is the only one I have found that makes a completely bootable card. This is very nice for backing up a NOOBS pi4 raspian card running some application configs.

I too would like to thank you. rpi-clone has been indispensable for developing my rpi based project.


more secure password generation

The current generate_random_password seems a bit short...
Since the result of the function is mostly used internally, why not generate a really tough one just for the sake of security?
i.e. 	openssl rand -base64 32 | base64

:+1:

Would you be able to create a pull request for this? Seems like a simple fix.


Unbuntu Software Center

The issue is that basically i try to install things on the unbuntu software center i get this out put: Software can't be installed or removed because the authentication service is not available. (org.freedesktop.PolicyKit.Error.Failed: ('system-bus-name', {'name':  ':1.94'}): org.debian.apt.install-or-remove-packages Followed By: You dont have permission to perform this action PLEASE HELP as i would like to get java on the crouton Linux distribution

Probably a dup of this: Installing Apps not Working #3442

Try starting software-center using sudo.
gksudo software-center most likely.

Thanks the gksudo command helped and i am able to install things now

Closing. Please re-open if this issue is still a concern.


#2516 reformat by standard code style file by IDE

Description
Applying https://github.com/metatron-app/metatron-discovery/pull/2634 into 3.3.x branch.
Related Issue : #2516

run build
deploy to 4

Self test done.
These PRs will be merged in series, in a short period of time:
~~https://github.com/metatron-app/metatron-discovery/pull/2612~~
https://github.com/metatron-app/metatron-discovery/pull/2634
https://github.com/metatron-app/metatron-discovery/pull/2642
https://github.com/metatron-app/metatron-discovery/pull/2645
https://github.com/metatron-app/metatron-discovery/pull/2646
https://github.com/metatron-app/metatron-discovery/pull/2654
https://github.com/metatron-app/metatron-discovery/pull/2664
https://github.com/metatron-app/metatron-discovery/pull/2666
https://github.com/metatron-app/metatron-discovery/pull/2674
https://github.com/metatron-app/metatron-discovery/pull/2703
https://github.com/metatron-app/metatron-discovery/pull/2704
https://github.com/metatron-app/metatron-discovery/pull/2706
https://github.com/metatron-app/metatron-discovery/pull/2707
https://github.com/metatron-app/metatron-discovery/pull/2715
https://github.com/metatron-app/metatron-discovery/pull/2716
https://github.com/metatron-app/metatron-discovery/pull/2724
https://github.com/metatron-app/metatron-discovery/pull/2738
https://github.com/metatron-app/metatron-discovery/pull/2748
https://github.com/metatron-app/metatron-discovery/pull/2754
https://github.com/metatron-app/metatron-discovery/pull/2761


fix(DTFS2-6144): set portal deal status to acknowledged for notice

Introduction :pencil2:
TFM deal status should be set to Confirmed for notice deals AIN or MIN instead of Application.
Resolution :heavy_check_mark:

Portal deal status amendment execution before TFM deal status.
Refactored portal deal status update.

Miscellaneous :heavy_plus_sign:

Unit test coverage improvement.
SRI syntax correction.

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

:exclamation: No coverage uploaded for pull request base (release-1.5@acca3a8). Click here to learn what that means.

Additional details and impacted files
@@              Coverage Diff               @@
##             release-1.5    #2942   +/-   ##
==============================================
  Coverage               ?   42.08%
==============================================
  Files                  ?      859
  Lines                  ?    18611
  Branches               ?     3482
==============================================
  Hits                   ?     7833
  Misses                 ?     9016
  Partials               ?     1762

Flag
Coverage Δ

api-test
0.40% <ø> (?)

unit-test
42.66% <ø> (?)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


[ergoCubSN001] Enable the temperature control for the robot legs and torso

This files are required to enable the temperature control for the ergoCubSN001 robot
cc @MSECode @valegagge @DanielePucci

CI failure is unrelated and I'm tracking it down in #622.
Thanks @MSECode for the review 👍🏻
I was thinking if it is worth extending these changes to ergoCubSN002, at least.

I was thinking if it is worth extending these changes to ergoCubSN002, at least.

Would you mind opening a second PR for that, @MSECode?
I'm gonna merge this one.

Merged in devel.


Add listResources to MrGeo python bindings

It should invoke the DataProviderFactory.listImages on the Java side and return the results as a python array.

Closed by #206


[bug] Sensitivity alias has potential to demolish your sens

If you quit the game while your sensitivity is lowered, it will be saved in config.cfg as the lowered value and your default sensitivity will be lost.
Suggested fix (untested, can in ~7 hours)
Add sar_on_exit "sensitivity_toggle; sensitivity_reset"

Should also do sar_on_load for if someone restarts level or completes level with sens lowered


Add connection debugging information to failed driver connects

v0.4.3 reformats troubleshooting information and adds new possibilities for debugging connection errors.


Fix css-logical-props data for Firefox 41–65

MDN compatibility data says the last parts came in Firefox 66, and https://developer.mozilla.org/en-US/docs/Mozilla/Firefox/Releases/66 supports this.
(These parts weren’t in the CSS Logical Properties and Values Level 1 spec when Firefox shipped the first parts.)
While looking at this file, it seems to me that notes 3 and 4 should be merged.

Yup, thanks for finding this. I'll go ahead and clean up the notes.


Set lighthouse to run on kitchen sink

This sets our lighthouse action to run only on the kitchen sink HTML files. The urls: parameter wasn't behaving as expected and so we were running it on all of the root HTML files.

Merging this one because it's actually un-breaking incorrect behavior we're currently using in these tests.


Edit README Chapters 1-7

Basic README edits to Chapters 1-7.

Codecov Report

Merging #1052 (b39feb2) into master (e2d43c1) will decrease coverage by 0.00%.
The diff coverage is n/a.

:exclamation: Current head b39feb2 differs from pull request most recent head 1e2d1ec. Consider uploading reports for the commit 1e2d1ec to get more accurate results

@@            Coverage Diff             @@
##           master    #1052      +/-   ##
==========================================
- Coverage   95.77%   95.76%   -0.01%
==========================================
  Files          61       61
  Lines        3975     3967       -8
==========================================
- Hits         3807     3799       -8
  Misses        168      168

Impacted Files
Coverage Δ

httpie/cli/argparser.py
96.17% <0.00%> (-0.07%)
:arrow_down:

tests/test_output.py
99.47% <0.00%> (ø)

tests/test_uploads.py
100.00% <0.00%> (ø)

tests/test_sessions.py
100.00% <0.00%> (ø)

tests/test_downloads.py
100.00% <0.00%> (ø)

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 e2d43c1...1e2d1ec. Read the comment docs.

@calwas there were several changes since your PR:

We moved the documentation to docs/README.md
We are using markdown now.

We also fixed a couple of things you changed.
Woukd you mind rebasing your PR on the master branch?


Ignore Pocket HTML titles if they are URLs

I don't know why, but a lot of the pages I've saved on Pocket don't have the proper title in ril_export.html, the raw URL is the title. On getpocket.com all pages have the proper titles.

It would be nice if ArchiveBox could ignore importing the title tag from links with links as the title tag, and instead grab the  tag from the HTML pages instead. Currently my ArchiveBox library is just a messy combination of proper titles and URLs:

This should be fixed in the latest master (1b36d5b), comment back if it's still not working and I'll reopoen the issue.
Run ./archive twice to fix all the titles in your existing archive.


Test<EMAIL_ADDRESS>

it was accidentally submitted bypassing a pull request in https://github.com/bazelbuild/bazel-central-registry/commit/ee272b5d6097823f5b43685d6e3405c1e4223466, so we didn't run presubmit. I'm changing some whitespace here to trigger presubmit.

presubmit passed.


Updating gem version to 1.1.1

:shipit:
FWIW, I don't personally think you need to send a pull request for a version bump.


Inconsistant .table-active color

According to your documentation at http://getbootstrap.com/docs/4.0/content/tables/, table-active class can be applied to either tr's, td's or th's. But the resulting background color will be different, with a darker color for tr's.
This could be seen in the following plunker:
http://plnkr.co/edit/aYMqCL0dKLPq9vPdDpWH?p=preview
The reason is that table-active is defined with an opacity and is applied to both the trand its td's / th's.
To fix that, instead of this selector:

.table-active, .table-active>td, .table-active>th

I would simply use:

.table-active

Another solution would be to use #ECECEC instead of  rgba(0,0,0,.075).

Hi @gillerr Thanks for reporting this.
@mdo There is a comment on the table variant mixin mentioning the reason why we use >td, >th selectors here:
https://github.com/twbs/bootstrap/blob/v4-dev/scss/mixins/_table-row.scss#L8-L9
But it's not only causing the problems described on this issue but also avoids having an active cell inside a colored row, like this:

For now I'll add this comment, it'd be awesome if anyone wants to tackle this one. if not I'll probably have time to jump into it this week

One more note about table-active: it's almost invisible when the table is table-dark

@mdo I am sure I am missing something, I tried to track down the history of why we use the table-row-variant for active tables but I got lost.
Why can't we use something like this:
.table-active { background-color: $table-active-bg; }

.table-dark {
  &.table-active,
  .table-active {
    background-color: $table-dark-active-bg;
  }
}

@gijsbotje Can you help me out?

The same problem exist with any contextual class if it has an opacity. For example if one defines some color variables with opacity. This gets even more interesting in combination with a striped table as you can see in this Plunkr http://next.plnkr.co/edit/y6FAFciwWTdbdsmK
Expected result would be that all elements with the table-danger class would have the same background color. But depending on the combination of tr-class, td-class and striped table there are numerous variations because of the layered transparent colors.

This will be resolved by #30342.

@MartijnCuppens Will your tables PR cover this one as well?

Yup, in #30466 active is a state, not a table color variant.


OOM issue

Hi，I‘m using 4 2080Ti GPUs to train the Bilingual Expert， but the system always tells me that "tensorflow.python.framework.errors_impl.ResourceExhaustedError: OOM when allocating tensor with shape[2048,120001] and type float on /job:localhost/replica:0/task:0/device:GPU:0 by allocator GPU_0_bfc [[{{node gradients/AddN/tmp_var}}]]".
I thought that was the problem caused by too big batch_size, but I changed the batch_size to 64. and the OOM problem still existed.
Can you tell me is that some other parameter I need change to make the programs work? Or  4 2080Ti GPUs is not powerful enough to make it?

You probably need to use the BPE tokens rather than words. If using BPE tokens, I think it is fine for sentence level prediction, but for word level prediction, you may need to modify the code or the prepared data. For example, you can follow the sequence labeling method in BERT fine-tuning, which is just to predict the label of the first BPE token for each word. Alternatively, you can label each BPE token of the word with the same label.


errors

errors How to retry, whether to consider adding retries to reduce errors, and if so, whether there are relevant parameters to specify, such as: how many times to retry before giving up.

USUALLY those errors are from the webserver being overloaded. There aren't any options to retry error'd requests at the moment. --auto-tune is the closest option to automatically adjust the speed based on error rate. Other than that, you can manually tune the speed until you stop seeing errors

closing this for now. please reopen if you still have other questions


Submit page clears file on field error

This is just an annoyance- but the file field clears if you get an error like "please enter a description"

should be fixed now for sbh2

Not fixed not not yet supported


Add pascal case to name format rules

Adds pascal case format to all name format rules
closes #678
<DCO 1.1 Signed-off-by: Dan Purdy<EMAIL_ADDRESS>

Coverage increased (+0.03%) to 97.095% when pulling b0a1867cd6ddfb0e5223b6589acb3baa3cbc4a99 on DanPurdy:feature/add-pascal-case into aaf79753dc36f265f0f6376630a3abbf5a4d0f17 on sasstools:develop.

Coverage increased (+0.03%) to 97.095% when pulling b0a1867cd6ddfb0e5223b6589acb3baa3cbc4a99 on DanPurdy:feature/add-pascal-case into aaf79753dc36f265f0f6376630a3abbf5a4d0f17 on sasstools:develop.

I need to add the documentation and check the leading underscores for mixin name format here then it will be good to go

Coverage increased (+0.03%) to 97.095% when pulling d827d25b038963259f9eb6887df0014fbd272aa3 on DanPurdy:feature/add-pascal-case into aaf79753dc36f265f0f6376630a3abbf5a4d0f17 on sasstools:develop.

@benthemonkey do you wanna give this a quick look over too as I know these were yours originally

Coverage increased (+0.03%) to 97.095% when pulling 4cc2637beac39ef18346f2a1e8a294e07e67c4c0 on DanPurdy:feature/add-pascal-case into aaf79753dc36f265f0f6376630a3abbf5a4d0f17 on sasstools:develop.

Coverage increased (+0.03%) to 97.095% when pulling f0fa7bb5fa7e757badd81944a9375d3ad379e8fe on DanPurdy:feature/add-pascal-case into 98b2bd0eb0a6e4e9542d75f5a7815b6018dbbd18 on sasstools:develop.

Coverage increased (+0.03%) to 97.095% when pulling 35ab663cdbe9d2c980b8ab2ba7f09dde91bd894c on DanPurdy:feature/add-pascal-case into e1a43b7ca629c3bbdcb0c68e12a29ed192df1f17 on sasstools:develop.

This looks fine. Good catch with the violation messages and the . :+1:


rancher-compose only works with full to volumes

There is a slight difference between docker-compose and rancher-compose. When using docker-compose it is assumed that the volume path is based from the directory in which you run docker-compose.
docker-compose file Example:
volumes:
    - ./voting-app:/app

rancher-compose doesn't use the same path for volumes as docker-compose and instead requires that you use full path of the volume.
rancher-compose file example
volumes:
    - /root/example-app/test-app:/app

This is a "gotchya" as if you reuse docker-compose files from other projects they will fail and troubleshooting is not really easy.

+1 it would be nice to have path expansion for cases like mine where i need to run two solr servers and they each need their own path on the volume. i can't use a service in this case and need to manage each instance manually.

Verified with v0.8.0-rc1.

We will be release v0.7.3 with GA and will need to re-verify when we add a new v0.8.0-rcx.

Verified with v0.8.0-rc3 that it's working as expected


Bump version of action

Upgrading version of github action

I have no other way of testing this, rather than just merge and see if something chagnged/fails.


Publishing this office add-in to sharepoint app catalog

I succesfully published a sharepoint webapp (the new modern script editor webpart) and now I'd like to publish an office add-in to my tenant too.
If I upload the manifest of this add-in, the local nodejs must run on the pc for this webap to run.
How can I put this on sharepoint app catalog ? Can I package it somehow ? Or, is there a nodejs session  running in sharepoint online ?
If I manage to create the sppkg package via "gulp package-solution --ship", will it work ?

Hi @suoko - Sorry to hear you've run into issues publishing to the SharePoint app catalog. I'm going to tag @niteshgolchha85 who may have some info for you. @niteshgolchha85 any thoughts?

@suoko Can you share your Office manifest?

@suoko Can you share your Office manifest?

Hi,
sorry for late reply.
I could share my manifest but that's not the issue.
My question is whethere an office add-in can be packaged in an sppkg file and uploaded to the sharepoint app catalog in order to make it available to all tenant users.
My goal would be that all tenant users have a task pane (like the one well documented here https://docs.microsoft.com/en-us/office/dev/add-ins/quickstarts/word-quickstart?tabs=yeomangenerator) preinstalled in their word/excel/powerpoint software, both in their online and desktop versions.
I suspect gulp should be configured in the yeoman generated app repository, but I miss the requirements.


Typo in README.md

In the README.md there is a typo in the first paragraph of the "What's New" section where right after JSDocs it writes "TypeScripy" instead of "TypeScript".

I have opened a pull request to fix this issue.


Add width attribute

Adds width attribute which allows user to
specify number of bytes printed per line
Closes https://github.com/juhakivekas/multidiff/issues/3

Please Review :)

Please review

Please review


Allow basic HTML (, , ) inside of checkbox options?

cf https://app.frontapp.com/api/1/noauth/open_in_front/L2luYm94ZXMvc2hhcmVkL3VuaWZpZWQvb3Blbi8yMjQzOTAwMz9tZXNzYWdlPTMyNTI3MTMx
Seems like a potentially bad idea, though. @jrubenoff: thoughts?

Nope. That seems inaccessible... you want to be able to click on the entire label to activate the checkbox.
I like Kari's solution:

Cool, just wanted to make sure that we didn't need to override the default browser behavior or anything. Hey, we've done it before ;)


feat: upgrade soroban-sdk version to v22.0.0-rc.3

Summary
Testnet upgraded to v22 today, we need to keep the version compatible with the network so that contracts can execute

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 99.31%. Comparing base (fe4859d) to head (961db99).

Additional details and impacted files
@@            Coverage Diff             @@
##             main      #64      +/-   ##
==========================================
+ Coverage   98.43%   99.31%   +0.88%
==========================================
  Files          33       33
  Lines        2113     2056      -57
==========================================
- Hits         2080     2042      -38
+ Misses         33       14      -19

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Validating CSIP53 and CSIP68

Similarly as in #53 and #59 the validator doesn't actually check if mimetype comes from IANA list.

Duplicate - #67


Begginer Level Docs

Hello Devs, The wiki of this Library really confuses me as it's my first time to use Sqlite-net-pcl, any Docs or Tutorial link would be appreciated, I want use it in my xamarin forms Register and Login Pages. I am begginer in the field. Thank you

Hi Mytahir, I wrote the Synchronous connection docs. What is it you're needing help understanding

I took long time time trying to connect the database with Registration Form and Login Form, I also want be good in CRUD Operations. Thank you very much for your Reply!

I have updated the Get Started documentation. I recommend having a good read of that as it should be a bit easier to follow. After that, move onto the Synchronous Connection documentation as it explains all 4 basic CRUD operations in both SQL and LINQ format.

Yess! I see, thank you very much. But I see in the Wiki you recommend using AsynchronousAPI on Xamarin.Forms. should I just use SynchronousAPI? Thank You for your Contributions

The Async API is faster and more efficient than the synchronous API, but if you are just starting out with this library I would recommend sticking to the Synchronous API for the time being, then when you have a better grasp of how the library holds together, move onto Async calls. Don't let that stop you from giving it a go!

Ok, thank you


A sample demonstrating complex / customized screens

TBD: should we use current sampler or a separate app? I think it should be a separate app.
To be presented:

a customized login screen
a configured dashboard
a 'list' presentation of entities browser (based on a single-column grid) with full text search
a 'cards' presentation of entities browser (based o a composite component)
a clickable pivot table with "save/restore presentations" feature and a filter (see implementation in Analytics or Store)
a nice looking report, e.g. with several bands, some chart or pivot
a table with Excel export, Bulk edit, Related entities
a map (it is already present in Sampler, but would look good in this app as well. TBC)
a screen showing some data from an external source (API integration)
email templates configuration with GrapeJS HTML Editor

We should also analyze typical requests on forum and add here what is relevant.

A custom component (integrating a 3rd party React component)
A custom theme


Allow to specify custom properties inside Delete Object dialog

This FR is related to #10712
We need to add extra delete properties according to object manager. E.g. : delete cascade, force delete, etc.

Implemented.

MySQL, PostgreSQL delete dialogues were tested


BTRX-375-Add ResearchGate profile optional field in 'Your Profile' and 'DAR Step 1' pages && BTRX-321 User Profile & DAR LinkedIn field for any link

[ ] Submitter: Include the JIRA issue number in the PR description
[ ] Submitter: Make sure Swagger is updated if API changes
[ ] Submitter: Check documentation and code comments. Add explanatory PR comments if helpful.
[ ] Submitter: JIRA ticket checks:

Acceptance criteria exists and is met
Note any changes to implementation from the description
Add notes on what you've tested

[ ] Submitter: Update RC_XXX release ticket with any config or environment changes necessary
[ ] Submitter: Update FISMA documentation if changes to:

Authentication
Authorization
Encryption
Audit trails

[ ] Submitter: If you're adding new libraries, sign us up to security updates for them
[ ] Tell the tech lead (TL) that the PR exists if they wants to look at it
[ ] Anoint a lead reviewer (LR). Assign PR to LR

Review cycle:

LR reviews
Rest of team may comment on PR at will
LR assigns to submitter for feedback fixes
Submitter rebases to develop again if necessary
Submitter makes further commits. DO NOT SQUASH
Submitter updates documentation as needed
Submitter reassigns to LR for further feedback

[ ] TL sign off
[ ] LR sign off
[ ] Product Owner sign off
[ ] Assign to submitter to finalize
[ ] Submitter: Verify all tests go green, including CI tests
[ ] Submitter: Squash commits and merge to develop
[ ] Submitter: Delete branch after merge
[ ] Submitter: Test this change works on dev environment after deployment. YOU own getting it fixed if dev isn't working for ANY reason!
[ ] Submitter: Verify swagger UI on dev environment still works after deployment
[ ] Submitter: Inform other teams of any API changes via hipchat and/or email
[ ] Submitter: Mark JIRA issue as resolved once this checklist is completed

Coverage increased (+0.1%) to 61.91% when pulling fade7e5c47f3113a5f8f93c4e0f1119a0674b325 on BTRX-321-ResearcherProfile into 7bd629615e3fe402df4845d2d5993779aae4d9a8 on develop.

Hi @rushtong I worked on your feedback. Please let me know if you have any other comment. Thanks!

@vvicario - Hey, let's chat tomorrow. In the latest version, you've increased the minimum # of queries from what it was before. I'm sure that I'm not explaining it well. I'll try to add some commentary, but if that is confusing, let me know.

@rushtong  Got it! Fixed :)


Can DynamoDbClient work with AssumeRole provider with auto refresh?

I get the following when using AutoRefreshProvider with dynamoDb? if its not supported, what is a workaround to use AssumeRole with DynamoDB?
let client = DynamoDbClient::new_with(HttpClient::new().unwrap(), auto_refreshing_provider, region);
|                      ^^^^^^^^^^^^^^^^^^^^^^^^ the trait service::rusoto_core::ProvideAwsCredentials is not implemented for std::result::Result<core::dynamo_async::rusoto_credential::AutoRefreshingProvider<core::dynamo_async::rusoto_sts::StsAssumeRoleSessionCredentialsProvider>, service::rusoto_core::CredentialsError>

As far as I know this behavior is supported. Do you have a code snippet or repo we can look at to help get it working?
https://github.com/rusoto/rusoto/blob/master/AWS-CREDENTIALS.md#stsassumerole has a sample of using the STS credential provider. Does your code look similar?
Please note the STS credential provider doesn't do caching by default, so it should be wrapped in rusoto_credential::AutoRefreshingProvider. See https://github.com/rusoto/rusoto/blob/master/AWS-CREDENTIALS.md#important-note-about-using-the-stsassumerolesessioncredentialsprovider-in-the-recommended-way for an example and more detail. 👍

@matthewkmayer I followed those pages, this is my code snippet and the error I get saying trait is not implemented:
Dependencies uses:
rusoto_dynamodb = "0.36.0"
rusoto_credential = "0.15.0"
Code:
`let sts = StsClient::new(region.clone());
    let credential_provider = StsAssumeRoleSessionCredentialsProvider::new(
        sts,
        "xxx_assume_role_arn".to_owned(),
        "yyy_name".to_owned(),
        None, None, None, None
    );

    let auto_refreshing_provider = rusoto_credential::AutoRefreshingProvider::new(credential_provider);

    let client = DynamoDbClient::new_with(HttpClient::new().unwrap(), auto_refreshing_provider, region);`

Error:
let client = DynamoDbClient::new_with(HttpClient::new().unwrap(), auto_refreshing_provider, region);
   |                      ^^^^^^^^^^^^^^^^^^^^^^^^ the trait `service::rusoto_core::ProvideAwsCredentials` is not implemented for `std::result::Result<core::dynamo_async::rusoto_credential::AutoRefreshingProvider<core::dynamo_async::rusoto_sts::StsAssumeRoleSessionCredentialsProvider>, service::rusoto_core::CredentialsError>`

@meghashyam6 it's not obvious from the method name, but AutoRefreshingProvider::new actually returns a Result. Can you try unwrapping or using ? to unpack the actual provider before passing it to new_with?

@srijs on the money! I didn't realize that its returning a Result. Other credential providers doesn't do that. My bad! Thanks @srijs!


"Invalid lookback distance found!" when seeking backwards in specific deflate stream

With version 0.13.2 (and 0.13.1), I get an error when reading a specific deflate stream using the following code:
import rapidgzip
import zlib

with open('test.bin', 'rb') as fd:
    decomp = zlib.decompressobj(-15)
    decomp_data = b''
    while len(decomp_data) < 40000000:
        data = fd.read(1024*1024)
        decomp_data += decomp.decompress(data)
    print(decomp_data[30000000])
    print(decomp_data[40000000])

with open('test.bin', 'rb') as fd:
    with rapidgzip.open(fd) as fd2:
        # If I swap the order of these seeks the error doesn't occur
        fd2.seek(40000000)
        print(fd2.read(1)[0])
        fd2.seek(30000000)
        print(fd2.read(1)[0])

I get the following output:
25
2
2
Traceback (most recent call last):
  File "rapidgzipbug.py", line 19, in <module>
    print(fd2.read(1)[0])
  File "rapidgzip.pyx", line 502, in rapidgzip._RapidgzipFile.readinto
RuntimeError: [IsalInflateWrapper][Thread<PHONE_NUMBER>72608] Decoding failed with error code -3: Invalid lookback distance found! Already decoded 4 B. Read 120 B 2 b during the failing isal_inflate from offset 22979651 B 4 b. Bit range to decode: [183837212, 201376656]. BitReader::size: 335544320. Set window size: 0 B.

Thank you for reporting this bug! I can confirm it. It still works without error using rapidgzip 0.12.1. It happens only when seeking back because decompression can be delegated to ISA-L then. As I feared, the bug was introduced with the window / seek point compression, but the introducing commit was d03d2a2f44b478a411e504d85040db378cb0fbd9, not the very first window compression commit in 9edb3b9792af573f64a84d7514e8e05dc7a641f9.

Thanks for fixing this!


Estimate 2.4.x merge into fork code

After checking the 2.4 code and how it would merge into psi fork code, we consider that we can to provide a 30-40h estimation. The activities that would be covered by this estimation would be the following ones:

Bring 1.4 SDK code resolving conflicts to remove our attributes and legends code
Bring 2.4 app code resolving conflicts to remove our attributes and legends code
Remove old psi code that now exist in new version and It's not solved in conflicts
Integrate feedback in new bottom navigation bar
Hide legend label


First boot issue without previous yaml

Version of the custom_component
2023-05-30
Configuration

Describe the bug
First time loading the component i got the following error
2023-06-04T13:20:12.587529761Z 2023-06-04 14:20:12.585 ERROR (MainThread) [homeassistant.config_entries] Error occurred loading flow for integration greeneye_monitor: cannot import name 'MonitorType' from 'greeneye.monitor' (/usr/lib/python3.10/site-packages/greeneye/monitor.py)
When trying to reboot from within HA i got
2023-06-04T13:21:52.587369312Z 2023-06-04 14:21:52.585 ERROR (MainThread) [homeassistant.components.homeassistant] The system cannot restart because the configuration is not valid: Component error: greeneye_monitor - cannot import name 'MonitorType' from 'greeneye.monitor' (/usr/lib/python3.10/site-packages/greeneye/monitor.py)
A note, i already had my yaml commented out (my bad) but this seems like maybe if someone is starting from scratch the component may not load? After a reboot with the yaml for old GEM uncommented everything went smoothly.
Debug log
2023-06-04T13:21:52.599984775Z 2023-06-04 14:21:52.593 ERROR (MainThread) [homeassistant.components.websocket_api.http.connection] [547585842320] The system cannot restart because the configuration is not valid: Component error: greeneye_monitor - cannot import name 'MonitorType' from 'greeneye.monitor' (/usr/lib/python3.10/site-packages/greeneye/monitor.py)

2023-06-04T13:21:52.600096719Z Traceback (most recent call last):

2023-06-04T13:21:52.600120979Z   File "/usr/lib/python3.10/site-packages/homeassistant/components/websocket_api/commands.py", line 199, in handle_call_service

2023-06-04T13:21:52.600140571Z     await hass.services.async_call(

2023-06-04T13:21:52.600158442Z   File "/usr/lib/python3.10/site-packages/homeassistant/core.py", line 1849, in async_call

2023-06-04T13:21:52.600176942Z     task.result()

2023-06-04T13:21:52.600194182Z   File "/usr/lib/python3.10/site-packages/homeassistant/core.py", line 1889, in _execute_service

2023-06-04T13:21:52.600249812Z     await cast(Callable[[ServiceCall], Awaitable[None]], handler.job.target)(

2023-06-04T13:21:52.600271682Z   File "/usr/lib/python3.10/site-packages/homeassistant/helpers/service.py", line 874, in admin_handler

2023-06-04T13:21:52.600289108Z     await result

2023-06-04T13:21:52.600306608Z   File "/usr/lib/python3.10/site-packages/homeassistant/components/homeassistant/__init__.py", line 181, in async_handle_core_service

2023-06-04T13:21:52.600324349Z     raise HomeAssistantError(

2023-06-04T13:21:52.600341479Z homeassistant.exceptions.HomeAssistantError: The system cannot restart because the configuration is not valid: Component error: greeneye_monitor - cannot import name 'MonitorType' from 'greeneye.monitor' (/usr/lib/python3.10/site-packages/greeneye/monitor.py)

Hm, that suggests that somehow when you installed the HACS component, it didn't pull down the latest version of its dependency greeneye_monitor package. (MonitorType was introduced in 4.0, and Home Assistant core uses 3.0.3.)
I haven't been able to reproduce this issue locally, even with a fresh Home Assistant/HACS install. I wonder if it was just a fluke where the first time you restarted HA failed to upgrade the dependency, but then succeeded the next time... You installed via HACS, right, not by manually copying files into custom_components or something?

Correct installed via HACS, on install the first error appeared. I'm not too concerned about this as everything seems to work now. Mainly just reported in case it is reproducible.

Just fyi, I updated HACS first because it was quite a few versions behind, then it worked flawlessly.

I don't think there's anything left to do here.


Fixed link and updated docs for mill-ensime plugin

I'm not the author of the mentioned plugin, but the existing link was dead, so I replaced it with one, which I think is the right one.
Review suggestions: @davoclavo

👍
The original author of the mill-ensime plugin deleted their repo, so I'll maintain it going onwards.

@davoclavo Great. Thanks!


What is the meaing of each value of output file?

Firstly, thanks for the beautiful paper and repo!
I have followed your README instructions and successfully got an output file like 000001.txt in ./avod/data/outputs/[configname]_val/predictions/final_boxes_box_4ca_and_scores/val/120000/. That file would be like:
-15.24178 -14.89511 -16.67474 -17.01962 57.73212 54.32695 54.19614 57.59904 -0.34679 1.15983 0.05014 0.00000
-15.93977 -16.03211 -17.78551 -17.69343 61.18032 57.73060 57.73194 61.18008 -0.31289 1.17731 0.01493 0.00000
4.54089 4.17583 2.42572 2.79408 43.76081 39.97421 40.00064 43.79296 -0.28312 1.19874 0.00714 0.00000
-1.20005 -0.82658 -2.48288 -2.85900 67.93431 65.22529 65.07829 67.79079 0.73463 2.23201 0.00605 0.00000
4.82551 4.61045 2.91491 3.12845 63.55791 59.75579 59.82858 63.63762 0.04117 1.54963 0.00646 0.00000
4.89932 4.58680 2.84608 3.16217 46.90687 43.79197 43.88605 47.00644 -0.33633 1.14318 0.00413 0.00000
5.32585 5.31228 3.69754 3.71186 8.41151 4.49657 4.48897 8.42451 -1.04176 0.44200 0.00365 0.00000
...

It is an output of KITTI-stereo-test-000001.png
I (briefly) read your paper so I know what each column means. (four corners of the bottom plane and heights: Δx1, ..., Δx4, Δz1, ..., Δz4, h1, h2, score, type) However, I can't get any information about what VALUES MEAN AND ITS UNIT. Consequently, my questions are:

Is it in pixels or meters?
From where? Is it from the center or upper left of the image? or the camera(which took this image)?
I want just to draw boxes on the image.  How can I do that? I found some functions in your /demos folder but they are needed to set many options. Accordingly, I will need to spend many hours to operate those functions. Could you give me some other ways to do it?

Thank you in advance.

Values are in metres, the outputs are the final box_4c values, not the deltas. See https://github.com/kujason/avod/wiki/Data-Formats for more details on the data formats.
From the camera frame
demos/show_predictions_2d.py will draw the boxes projected into the image. This script uses the boxes_3d format which should also be available in the predictions output folder.


Redesign and simplify connection page

We currenlty have a rather full new app connection form (e.g. 6 checkboxes).
Can we simplify those? can we provide better defaults? and move certain things in some "advanced" sections?

Proposed design here:
https://www.figma.com/file/98bWDLs9dRVnYwW5ZVEqos/Nostr-Wallet-Connect?type=design&node-id=598-57403&mode=design&t=HGSOGNwGK3CRlQlS-0

@bumi closing if there's no feedback, won't be able to work on this before leave anyway

@stackingsaunter this looks good to me, I will open the issue so someone can implement it.
Our only feedback is that it might be better as an expandable section rather than a modal - sometimes this page is already opened in a popup window and having a second modal here feels a bit strange.

It's not shown here but we also have a editable=false mode (pre-configured by the app), which we should show that the form is read-only and the user can either accept or deny the connection.


In Shinylive "Testing whether a package is available" page, code should have await

On https://shiny.posit.co/py/docs/shinylive.html#testing-whether-a-package-is-available, the code says this:
import micropip
micropip.install("mypackage")
import mypackage

But it should have an await, as in:
import micropip
await micropip.install("mypackage")
import mypackage

@wch Looks like this can be closed


Use monorepo and workspaces

Also there seems to be changes to package-lock.json thats not pushed

Addressed comments and updated package-lock.json.


Replace goog.isNumber

goog.isNumber just does == 'number' but I use === to be consistent with string

Looks good.


Solnet.Extensions and TokenWallet

Status
Type
⚠ Core Change
Issue

Ready to Merge (when you're happy)
Feature
Yes (additions)
#176

Howdy, here's a work-in-progress PR .
I could do with some steering advice please to avoid any going to far down any rabbit holes.
There is a side-quest involving resolving token names and symbols. I've incorporated the fetching and parsing of the Solana standard token list used by the ecosystem. Not sure whether this is valid scope for this Solnet.Extensions project, or should be a separate thing is in its own right but I want to avoid any additional external dependencies.
Progress so far:

Solnet.Extensions project added
TokenWallet created + getting token accounts and balances
TokenInfo resolving via Solana token list fetch/parse
Examples updated to show usage
Associated Token Account indicator

You can take TokenWallet for a spin with the example program.
Some questions:

Is the organization and naming of Solnet.Extensions agreeable?
TokenInfo and Solana Token List - is this inline with the wider goals of Solnet?
Is it friendlier for developers to interact with addresses as strings or use PublicKey everywhere? (gone with string for now)
What approach would you like taken for unit testing TokenWallet? Lots of hard work has already gone in for coverage. I was planning to inject a mock RPC client with some mock responses to exercise the codebase - would that be ok?
What exception strategy would you prefer for TokenWallet.Refresh() - if RPC methods are not successful - are you happy for me to throw a specific TokenWalletException ?

I really like where this is going, me and @tiago18c also discussed adding structures for the Solana token list and I'm very happy to see you also went for it along with the TokenWallet, feels very much in line with what we want for Solnet :)
Just a few thoughts I had from looking at the PR so far:

I saw you hardcoded the Tokenkeg.... public key again, but you also have Solnet.Programs as dependency for ATA, you can just use TokenProgram.ProgramIdKey, no need to be hardcoding the key again.
If Solnet.Extensions is really going to grow with more additions in the future I'd like to keep seeing a certain degree of separation between models and the classes which provide most of the functionality, i.e. having ITokenInfoResolver, TokenMintResolver and TokenWallet at the root of the project while the rest of the classes are moved into Models/TokenWallet/, Models/TokenInfo/
There are tokens in the token list which have duplicate (even more than 2 instances, at times) of the same mint, this might be something to take into account.

Those are the things that came to mind from the WIP.
To answer your questions:

Naming I can agree with it as it stands, just perhaps having Solana in the name of the mint list/token feels weird, in a private project where I also did this I just called them TokenList and TokenInfo, but I see you're doing a certain separation and it's ok, in terms of organization what I said above answers it, I think
Regarding PublicKey vs string, for something like this I don't think going with string is a problem, when using the TokenWallet I'm assuming developer will end up using both, and we have implemented operators for the keys exactly to make this easier.
Unit testing TokenWallet, yes, injecting a mock is what we've been doing to test everything that requires an RPC request in the workflow
We've been attempting to keep exception-based logic to a minimum but I think I see where you're going with that and I think it's fine.

One question from me is, in the context of what you're doing where you'd like these additions, would it make a difference to use Asyncs? This is just because these additions really remove a lot of "boilerplate" code from potential desktop wallet implementations and UIs would greatly appreciate the use of the Async methods.
Some of these comments are just :nail_care: and don't matter too much, overall I like the ideas and am looking forward to :ship: this

Thanks for the feedback.
Yes to Asyncs - wanted to get the basics outlined before following up with asyncs and comments etc.

Excellent! Keep up the great work :)

Hello there. More work in progress.
From a callee perspective, SPL send is now down to a handful of lines with much of the ATA complexity abstracted away.
e.g.
    var logger As New MyAppLogging();
    var client = ClientFactory.GetClient(Cluster.MainNet, logger);
    var tokens = TokenInfoResolver.Load();

    // find source of funds
    var wallet = TokenWallet.Load(client, tokens, owner);
    var sourceAccount = wallet.TokenAccounts.WithSymbol("SRM").WithAtLeast(5.5D).FirstOrDefault();

    // send 5.5 SRM to target wallet
    var sig = wallet.Send(sourceAccount, 5.5D, targetWalletPublicKey, owner);
    Console.WriteLine(sig.Result);

Wondering whether to bury the FirstOrDefault inside the wallet.Send method for neatness, but think it might be misleading to a callee for the Send method to accept multiple sourceAccounts to only use the first one.
The callee can also reuse the ATA account logic passing their own TransactionBuilder into JitCreateAssociatedTokenAccount if needed.
Couple more questions if you don't mind:

Are you ok with TokenWallet.Send methods returning RPC client RequestResult<string> responses directly?
Are there any existing utility methods I should be using to convert decimal amounts into raw ulongs?
What are your thoughts on me adding a WellKnownTokens reference class with a dozen or so mainstream tokens? I think this could save a lot of unnecessary traffic to the token list and make it easier code samples much cleaner.
Thanks for the heads-up on token duplicates in the token list - any preference on which should take priority? Keep first and ignore the rest?

This is looking really, really good. I think you shouldn't bury the FirstOrDefault() inside the Send, it should only receive the sourcePublicKey/sourceAccount
Regarding the questions:

Yes, perfectly ok with that, it's neat so you can TokenWallet.Send and then fire up a SignatureSubscribe in the background with the returned signature, or whatever the callee desires to do.
There are no utility methods regarding decimal amounts <-> raw ulongs yet, I'm assuming you're asking because of converting from the friendly value into the value you should pass into the instruction. I've done something in the context of Serum because of order placement but I'm fairly sure it's very different because it involves lot sizes.
Perfectly fine with that.
This really depends, the list contains everything from NFTs to LPTs, you can filter those out by the tags and possibly by some info in the extensions. I think, for the SPL token cases, we should prefer those with chainId = 101, in the cases where I saw that the token's mint was duplicated it was the occurrence with that chainId that had most of the info, i.e, address of serum markets, coingeckoId and other links.

Thanks for the answers.
You're right - the conversion is for dealing with user/dev friendly decimals to raw ulongs. If there's nothing around for that, I'll extract my solution into a utility class/method. Any preference on naming and where that belongs?
I think a Solnet curated list of well known tokens, with the option for the callee to inject their own tokens or load the full token list is a good way to go and creates an opportunity to shout about new tokens making the curated list :-)

Yes, I can agree with that. Would love to have a static class to help with the conversions but honestly I'm not really sure where it should be added, if Solnet.Programs or on Extensions as well.. I think either way it's something important to have so I'd just go ahead and add it somewhere and we can see later if it makes sense or not

Added WellKnownTokens with a handful of familiars for now.
On naming the tokens and readability, which do you prefer?
                            A                      or                               B ?
wallet.TokenAccounts.ForToken(WellKnownTokens.SRM) vs wallet.TokenAccounts.ForToken(WellKnownTokens.Serum)
wallet.TokenAccounts.ForToken(WellKnownTokens.MNGO) vs wallet.TokenAccounts.ForToken(WellKnownTokens.Mango)
wallet.TokenAccounts.ForToken(WellKnownTokens.RAY) vs wallet.TokenAccounts.ForToken(WellKnownTokens.Raydium)
wallet.TokenAccounts.ForToken(WellKnownTokens.TULIP) vs wallet.TokenAccounts.ForToken(WellKnownTokens.Solfarm)

This lets you to filter the token accounts with a mint using readable code like this...
var wallet = TokenWallet.Load(client, tokens, owner);
var rayAta = wallet.TokenAccounts.ForToken(WellKnownTokens.RAY).
                                       WhichAreAssociatedTokenAccounts().FirstOrDefault();

Open to suggestions on the naming of the WhichAreAssociatedTokenAccounts method.
This does what it says on the tin, but wondered if you can suggest a snappier name.
I slept on the whole FirstOrDefault conundrum, and added this simplification which resolves the filter list down to a single ATA or null. This should be used in conjunction with a ForToken, WithMint or WithSymbol selector otherwise you would get a random ATA from your wallet which would not be useful. Code sample above becomes:
var wallet = TokenWallet.Load(client, tokens, owner);
var rayAta = wallet.TokenAccounts.ForToken(WellKnownTokens.RAY).AssociatedTokenAccount();

The need to download the token list is gone also unless wanted and TokenInfoResolver can be bootstrapped by a developer with their own tokens as you can see in the example.
var tokens = new TokenInfoResolver();
tokens.Add(new TokenDef("AHRNasvVB8UDkU9knqPcn4aVfRbnbVC9HJgSTBwbx8re", "Solnet Test Token", "STT", 2));

That's awesome! Don't really have a preference about naming there, I reckon you can keep it with symbols if that's what you currently have. WellKnownTokens.SRM

Opted for B, the longer form as I think it looks for more readable code, e.g.
var account = wallet.TokenAccounts.ForToken(WellKnownTokens.Raydium).AssociatedTokenAccount();

Recent updates

Tests added for Solnet.Extensions.Test for TokenResolver and TokenWallet
Ditched Moq and built queued response mock RPC in MockTokenWalletRpc - as discussed this may offer a mocking strategy you could apply in Solnet.Serum
To make mockery manageable introduced ITokenWalletRpcProxy and TokenWalletRpcProxy that houses RPC methods used by TokenWallet allowing an injectable mock to be created in Solnet.Extensions.Test
Some more overloads, minor renames and tidy-ups for consistency
Introduced a couple of additional list filters and validations
Merged latest main branch in too so shouldn't be too risky to take this branch for a spin now

Sending tokens now looks like this:
    var client = ClientFactory.GetClient(Cluster.MainNet, logger);
    var tokens = New TokenInfoResolver();
    var wallet = TokenWallet.Load(client, tokens, feePayer);

    // find source of funds
    var source = wallet.TokenAccounts.ForToken(WellKnownTokens.Serum).WithAtLeast(11.75D).FirstOrDefault();

    // execute
    var sig = wallet.Send(source, 12.75D, target, feePayer);

Current Limitations

Cannot send native SOL via the Send method.
TokenWallet.Load assumes a SOL-native top-level account is provided.
To cosset the callee, I think the error detection needs to be bullet proof given the scope of address kinds that could be provided.
The TokenWallet.Load method needs to be fuzzed with different types of public key - program, PDA, existing ATA etc. and barf under certain circumstances and cope in others. It may be valid for Send in some cases such as direct to ATA for example I think should be allowed for matching mints.

This is looking very, very good, will take it for a spin later today.
Regarding the native SOL Send limitation, I don't think that's an issue, the goal of this is to be a TokenWallet and it seems to be fulfilling that role quite well.
Regarding the Load method being fuzzed I think I may have an idea, in Solnet.Rpc.Utilities there is an Ed25519Extensions class which implements an extension method called IsOnCurve, this method is currently internal, it should be made public, along with it's class. the idea for this is that TokenWallet.Load in a case such as the following (copy pasta'd from your):
var wallet = TokenWallet.Load(client, tokens, feePayer);

feePayer should be converted to PublicKey and IsOnCurve should be called on it's byte[], this makes us know for a fact that the passed feePayer isn't either a PDA or an ATA, because ATA and PDA generation requires the generated addresses to not be on the curve.

On The Curve sounds like a great solution - wasn't aware of that, thanks for the tip.
That's gonna sniff out my made-up test keys and wreck the test - but c'est la vie.
Re: docs + comments - I understand, all part of the process. I'll be sorting those once we're happy with the additions.

Also re docs, and related to #185, since you're working on this it would be awesome if the docs could have an addition of yours to give more context on how to use these additions, it would be legendary, really.

Howdy, I think we're just about there and ready to merge.
Comments added and the IsOnCurve validation incorporated into TokenWallet.Load and Send methods.

If it's not going to cause any conflicts with on going work I'll add some info to the repo's README.

Good morning,
I've introduced a primitive TokenQuantity object that performs the primitive decimal/raw conversions and allows a mint, symbol, decimal places, name and quantities to be passed around the place. Used like this:
            var qty = WellKnownTokens.USDC.CreateQuantity(4741784U);
            Assert.AreEqual(4741784U, qty.BalanceRaw);
            Assert.AreEqual(4.741784M, qty.BalanceDecimal);
            Assert.AreEqual("USDC", qty.Symbol);
            Assert.AreEqual(6, qty.DecimalPlaces);
            Assert.AreEqual("4.741784 USDC (USD Coin)", qty.ToString());

I'm thinking a couple of minor renames are in order, but want to coordinate these with you as they may break anything that you may have tried this branch out.
I'm proposing the following:

ITokenInfoResolver --> ITokenMintResolver
TokenInfoResolver --> TokenMintResolver
Two property name changes on the TokenQuantity class hierarchy, from BalanceRaw to QuantityRaw and BalanceDecimal to QuantityDecimal

These are better descriptions for what's going on now.

Really like those additions of the Token Quantity, feel free to rename the properties and classes, it will break things on my side for the app but it's not a big deal, this is why we should dog feed our own APIs to sample apps and similar things to make sure things are following the proper convention etc.

Removed all traces of Account requirements from TokenWallet so it never needs to know your private keys.
All variants of Send require a Func<TransactionBuilder>, byte[]> signTxCallback function passed in for the caller to sign the transaction prior to send.
The existing JitCreateAssociatedTokenAccount method can be used to add the associated token account provisioning instructions to an existing TransactionBuilder instruction.
This is how calling token send code now looks:
var feePayer = signer.PublicKey;
var tokenAccount = wallet.TokenAccounts().ForToken(WellKnownTokens.Raydium).WithAtLeast(5M).First();
wallet.Send(tokenAccount, 1M, targetOwner, feePayer, builder => builder.Build(signer));

This fix is part of the Creating Trustable Library Code idea raised in #192.

Love to see these latest changes. @tiago18c can you please review this so we can merge these two open PRs and release v0.4.4?

Paging @tiago18c...
Please could you review and consider merging for release as 0.4.4?

Thanks for the feedback!

Just not a great fan of the proxy thing...
Yeah - it didn't sit right with hoak either which I take on board. I've got some RPC pre-request/post-response hooks in the works that will come in very useful for cross-concerns like rate limiting etc. With these hook points in place, it will be straightforward to refactor the proxy away with a hooked-RPC. Happy to chalk this up for simplification once that's in place to migrate to.

Let me know if there's any Well Known Tokens you'd like adding, the we can ship this.

This has already been shipped, we can just add improvements going on

builder => builder.Build(signer)

This should be better documented!

builder => builder.Build(signer)

This should be better documented!

I don't get it. There's plenty of examples/documentation on the TransactionBuilder, plus it has nothing to do with this PR so why this comment?

builder => builder.Build(signer)

This should be better documented!

I don't get it. There's plenty of examples/documentation on the TransactionBuilder, plus it has nothing to do with this PR so why this comment?

Sorry github quote replied not so good, I was speaking about the .Send() method that he's described in different examples on the repo without the transaction callback so I was lost about what to do


Can't create PyQt objects annotated with @inject

If a class that inherits from a PyQt class, for example QObject, is annotated with @inject, it can't be created without using Injector. The getattr() in @inject raises a RuntimeError. Here's an example:
from PyQt5.QtCore import QObject
from injector import inject, Injector

class C(QObject):
    @inject
    def __init__(self):
        super().__init__()

injector = Injector()
c = injector.create_object(C)  # This works

c = C()  # This raises a RuntimeError

This is the traceback:
Traceback (most recent call last):
  File "example.py", line 12, in <module>
    c = C()
  File ".../lib/python3.6/site-packages/injector.py", line 1072, in inject
    injector = getattr(self_, '__injector__', None)
RuntimeError: super-class __init__() of type C was never called

I've used PyQt 5.8 and Injector 0.13.2.

The first idea that comes to mind is to wrap the getattr() in a try-except block and treat the exception as no injector was found:
try:
    injector = getattr(self_, '__injector__', None)
except Exception:
    injector = None

Do you think this is an acceptable solution? If so, I could open a PR.

Hey! It's an acceptable solution with one change - only RuntimeError needs to be caught. It'd be cool to have a PR, I'd ask you to provide a unit test though.

@jstasiak, done! Could I expect this to be released any time soon?

I'd really appreciate an estimate on when I could expect this to be released. I have some code that depends on this, and if it will take more than a day or two I'll have to work around it.
Thanks for your efforts!

Thanks for the patch, I'll release it in few minutes.

Much appreciated! Thanks again!


alert_text_args problem

Hi everyone, I have some problem with my alert config. I want to use alert_text_args to get nested field: log.Obj_ReponseCC.sendMessage.from But the problem is log.Obj_ReponseCC is full name of a field and elastalert think that Obj_ReponseCC is subfield of log field. How to fix this!!
This is full alert config:
es_host: localhost
es_port: 9200
name: BRANDNAME TEMPLATE NOT MATCH ALERT
type: frequency
index: filebeat*
num_events: 51
timeframe:
    minutes: 5
realert:
  minutes: 0
filter:
- query:
     query_string:
       query: "log.Obj_ReponseCC.errorCode : 011*"
query_key: log.Obj_ReponseCC.account
alert_text: "At {0} brand name: {1}\nError name: {2} Code: {3}\nAccount: {4} send to phone number: {5} more than 50 times in 5 minutes\nMessage: {6}\nResolve: Check entered data again!"
alert_text_args: ["sourceInfo.date", "log.Obj_ReponseCC.sendMessage.from", "log.Obj_ReponseCC.errorMessage", "log.Obj_ReponseCC.errorCode", "log.Obj_ReponseCC.account", "log.Obj_ReponseCC.sendMessage.to", "log.Obj_ReponseCC.sendMessage.message"]
alert_text_type: alert_text_only

alert:
- "telegram"

telegram_bot_token:<PHONE_NUMBER>:AAFmIjifVVnHfGR6NglDUeDdufRqgYUj3kc
telegram_room_id: "-***********"

This is JSON log:
"log.Obj_ReponseCC": {
      "account": "hatp",
      "msgLength": 96,
      "mtCount": 1,
      "errorCode": "011",
      "sendMessage": {
        "telco": "01",
        "scheduled": "",
        "from": "HATP",
        "type": 1,
        "useUnicode": 0,
        "to": "**********",
        "message": "abc",
        "requestId": "7348288fbe814ccfa774e960a9b91a8c"
      },

ElastAlert is no longer maintained. Please use ElastAlert2 instead.

ElastAlert is no longer maintained. Please use ElastAlert2 instead.

So how can I do it with elastalert2 pls help..

Ask your own questions.
https://github.com/jertel/elastalert2/discussions


Add plot verification

Add in plot verification against a number of plots reported on system.

Covered by #19


github pages is redirecting to old version

Either the browser is caching the page and using the old window.location = .../{version}/... or it interprets the window.location = ... as a 301 permanent redirect.

I probably clicked on the link in the repo description when it was still hardcoded to a version.


Add optional image pull secret to service account

Add service account image pull secret to cf-operator [#169646805]
In case the cf-operator Docker image needs to be stored in a private
registry, the service account needs to know which image pull secret to
use and the respective image pull secret needs to be there.
Add condition to service account deployment YAML to add an image pull
secret reference (imagePullSecrets).
Use aforementioned condition to render a deployment YAML for a secret,
that matches the service account setting.
Add empty credentials entry in values.yaml as the default, which means
that no credentials are required.
Usage example:
 helm install \
  --namespace cfo \
  --name cf-operator \
  --set global.image.credentials.servername=private.registry.io \
  --set global.image.credentials.username=token \
  --set global.image.credentials.password=$(vault supersecret) \
  https://foobar.com/cf-operator-v0.47.11.tgz

Reviewing..

@qu1queee Updated the documentation to include a reference to the new setting.


[PE-D][Tester C] User Guide's Command Summary is Incomplete

The command summary section of the user guide is expected to provide a comprehensive list of all available commands and features within the application. However, it currently does not list all available commands and features introduced. This creates a discrepancy between the documentation and the actual functionality.
Commands not included: add_module, delete_module, add_timing, delete_timing, find_free_time, list_modules, module_search

Labels: type.DocumentationBug severity.High
original: ejnan/ped#8

Duplicate of #111. Accepted but closing.


feat: bump gotrue-js to v2.10.0

Bumps GoTrue JS to v2.10.0.

Not merging due to an issue with GoTrue. https://github.com/supabase/gotrue-js/pull/574


[DO_NOT_MERGE][FLINK-25343][hbase-tests] Fix flaky test in HBaseConnectorITCase

What is the purpose of the change
TODO
Brief change log
TODO
Verifying this change
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

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

Documentation

Does this pull request introduce a new feature? no

@flinkbot run azure


uploading ShellProgramming.md for peer review

@kaurrevature, here is the: "Getting started with Shell Programming" guide. Available for peer review.

Okay. :)


fix: Improved the input element to be spread instead of horizontal

🛠 Fixes #286

👨💻 Changes proposed
Improved the input element to be spread instead of horizontal to avoid double horizontal label in box shadow generator.
✔ Check List (Check all the applicable boxes)

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

📄 Note to reviewers

📷 Screenshots

:tada: This PR is included in version 2.15.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


If you reload a date that belongs to a previous month, or a following month (in-dates and out-dates), it does not get reloaded, because the counterpart dates were not searched for.

Hi,
Thanks for your awesome calendar!
When I'm calling calendarView.reloadDates(updatedDates) and the date is from another month (for example, if month starts on Wednesday and I need to reload Monday and Tuesday) it doesn't call isAboutToDisplayCell with this NSDate.
Thanks for your work!

It works!
Thank you so much for such a quick reply.

OK. since it works, i will patch this in the next release.

@patchthecode Hey guys, this issue is happening to me

What version of the calendar are you using? @acegreen


tgenv list-remote returns empty set on MacOS Monterey

tgenv version
tgenv 0.0.3-2-gdd720f6

List test results
$ /opt/terraform/switcher/tgenv/test/test_list.sh
### List local versions
tgenv: tgenv-install: [ERROR] No versions matching '0.12.15' found in remote
tgenv: test/test_list.sh: Test Failed: Install of version 0.12.15 failed
tgenv: tgenv-install: [ERROR] No versions matching '0.12.9' found in remote
tgenv: test/test_list.sh: Test Failed: Install of version 0.12.9 failed
tgenv: tgenv-install: [ERROR] No versions matching '0.11.1' found in remote
tgenv: test/test_list.sh: Test Failed: Install of version 0.11.1 failed
tgenv: tgenv-install: [ERROR] No versions matching '0.10.0' found in remote
tgenv: test/test_list.sh: Test Failed: Install of version 0.10.0 failed
tgenv: tgenv-install: [ERROR] No versions matching '0.9.3' found in remote
tgenv: test/test_list.sh: Test Failed: Install of version 0.9.3 failed
tgenv: tgenv-list: [ERROR] No versions available. Please install one with: tgenv install
tgenv: test/test_list.sh: Test Failed: List mismatch.
Expected:
0.12.15
0.12.9
0.11.1
0.10.0
0.9.3
Got:

===== The following list tests failed =====
	Install of version 0.12.15 failed
	Install of version 0.12.9 failed
	Install of version 0.11.1 failed
	Install of version 0.10.0 failed
	Install of version 0.9.3 failed
	List mismatch.
Expected:
0.12.15
0.12.9
0.11.1
0.10.0
0.9.3
Got:

At the same time it works fine on Ubuntu 20.04 and MacOS Big Sur

I found an origin of the issue:
$curl https://api.github.com/repos/gruntwork-io/terragrunt/tags?per_page=1000 returns
{
  "message": "API rate limit exceeded for XXX.XXX.XXX.XXX. (But here's the good news: Authenticated requests get a higher rate limit. Check out the documentation for more details.)",
...
}

So probably this is a local issue.


Managing the Proliferation of Event Types

This is not really a new issue; it is an effort to collect topics from several other issues and discussions and add context for those who haven't followed those conversations. Those other issues are scattered and I'm not confident that I found them all; if I've missed something, please add it here!
If you want to propose specific new events or attributes, see the event and attribute proposal tracker..
If you want to see a large list of possible new attributes and events, see #117.
There are also various issues discussing specific new events or substructures thereof. This issue is instead about reorganizing the entire event/attribute system.
The challenge/situation
GEDCOM currently has 47 event/attribute types (32 event types, 15 attribute types), not counting the generic EVEN and FACT structures. More than 200 additional types have been proposed in various issues here  (notably #117).
Long lists of options make user interfaces challenging to create and user decisions hard to guide. For some applications they may also make code lengthy with increased chance of accidentally omitting or cross-coding some component.
The current set has some quite broad types, like DESC which subsumes multiple extension types some applications support (such as _COLO, _EYEC, _HAIR, _HEIG, _WEIG); and some surprisingly narrow, like BARM and BASM being distinct. This inconsistency in specificity helps fuel discontent, with those who like specificity wondering why the level of specificity they find in one place is not present in another; and those who like generic flexibility having complementary wondering.
Any type with a high degree of specificity makes translation and multicultural communication challenging.
The current set are not uniformly understood. Some structures have definitions that do not map well to non-English languages or non-Christian-European cultures. Some users apply the closest available structure to each situation not formally covered in the specification, such as using MARB for any marriage-announcement-like event even if it is informal and not a bann, while other users do not do this.
These topics are restricted to events and attributes; calendars and name parts have both had similar discussions, but with fewer types in the 7.0 specification.
Five Proposed Solutions

Add all the events and attributes that come to mind.
This approach was rejected by the GEDCOM steering committee in April 2023, at which time the "valuable, absent, and used" criteria were introduced for discussing new event proposals. But that doesn't mean it couldn't be revisited.

Add all the events and attributes that multiple applications support.
This approach is implicitly the intent of the event and attribute proposal tracker and the "awaiting use" label in the issue tracker.

Use only  a small number of types; any additional clarification goes in a free-text field like TYPE or NOTE.
While option has been mentioned in passing, I'm not aware of any serious proposal along these lines.

Create a type hierarchy. For example a Marriage Bann ⇒ Marriage Announcement ⇒ Pre-Marriage Event ⇒ Marriage Event ⇒ Family Event ⇒ Event, where "⇒" means "is a subtype of" or "implies" or "is subsumed by".
This approach is used in some peer specification, notably schema.org, but has not received much discussion here.

Create a smaller set of broad types, with optional enumerated-value subtypes in a KIND substructure.
This has two parts:

defining the smaller set of broader types. Several have been proposed:

#117.11
#117.15
#117.19
#290
#301.7
#303
#315

adding the KIND substructure. A concrete proposal can be found in #322.

An additional open question is if the enumerations would be singular or plural. We could do any of the following:

One broad type, one specific type.
All of the types in an subtype inheritance path.
Functional tags: a value for any kind of announcement, a value for any kind of pre-event event, a value for any type of religious or church-sponsored event, and so on.

This proposal has received the most discussion, but also has the most open questions.

Solution implementation options
Assuming we converge on a solution that we like, we could do any of the following:
In 7.1 we could

add more event types
add KIND to the existing event type
deprecate some current event types, leaving them in the spec but stating that they should be changed to a different structure.

In 8.0 we could replace and refactor as much as we wish.
No matter what we do, it is likely that applications will wish to support exporting new data in 7.0 and earlier formats. For example, if we deprecate or remove the MARB in favor of some broader structure with a KIND we should be clear what KIND values imply this can be exported as a MARB.

Thanks Luther for creating this issue.  I think I am the one that may have started the conversation to move to the use of <fact>.TYPE to begin managing the proliferation of new event types.  With the addition of the KIND tag to enumerate various “like” events as an alternative to using TYPE I personally think we have a winner!
I’ll let others weigh in with their comments, but I’m on board to discuss this option above others going forward!

When I brought up adding more event and attribute types in #117 the primary reason for doing so was related to information context. Having a far richer set of specific enumerated types helps preserve context when data is shared between people from different countries.
Think about it in terms of tagging data for machine learning, you want and need the tags to be applied consistently across languages and cultures. And the finer, the more detailed the tagging, the more context is preserved and value can be extracted.
Should that be accomplished with a flat namespace or a hierarchical namespace? Both have benefits and drawbacks. After some consideration I think the later, if well thought out, will have more long term benefits. However, as almost every genealogical site and application today uses a flat namespace I think changing that should be a 8.0 item. Ideally I would like to see shared events and groups in 8.0 as well, but I know that is wishful thinking.
In the end the primary responsibility of Gedcom is to serve as a data transmission envelope. It will always be a lossy envelope, but each iteration should strive to further improve fidelity.


Shiny on your github site

Hi Todd, cool loan level analysis but what I really want to know is how did you get shiny to run on github?

What you see on the landing page for this repo is an animated gif. Is that what you were referring to @glennmschultz @toddwschneider  What tool(s) did you use to make the gif?

Oh that how I thought you had shiny working on fit
Sent from my iPhone

On Jun 18, 2015, at 3:55 PM, Vincent Nijs<EMAIL_ADDRESS>wrote:
What you see on the landing page for this repo is an animated gif. Is that what you were referring to @glennmschultz @toddwschneider What tool(s) did you use to make the gif?
—
Reply to this email directly or view it on GitHub.

@glennmschultz @vnijs correct, the animation in the readme is an animated gif, not a hosted shiny app. I used the saveGIF() function from the animation package to generate it: http://www.inside-r.org/packages/cran/animation/docs/saveGIF
The actual app is hosted at shinyapps.io and embedded on my site via an iframe


New bosh links doesn't seem to work with previous manifest

Hi folks,
The latest release 418 introduced a new bosh link consumed by the rabbitmq-server job in PR #550.
Unfortunately this change causes our deployment to break with:
Task 6116 | 01:51:55 | Error: Failed to resolve links from deployment 'rabbitmq'. See errors below:

  - Failed to resolve link 'rabbitmq-server-dns-name' with type 'address' from job 'rabbitmq-server' in instance group 'rmq'. Details below:

    - No link providers found

The PR adds a 'consumes' section in the rabbitmq-server job spec https://github.com/pivotal-cf/cf-rabbitmq-release/blob/8ffdff7a40b5a534bfd2d5c7fec947822db48b60/jobs/rabbitmq-server/spec#L208-L209 but does not seem to any corresponding link providers which is required to create a complete bosh link "consumes-provides" pair.

Update:
we were able to fix this with
provides:
   rabbitmq-server-dns-name: { as: rabbitmq-server }

In the rabbitmq-server configuration

Hi @peterellisjones Thanks for noticing this, and apologies for breaking your deployment.
With this commit https://github.com/pivotal-cf/cf-rabbitmq-release/commit/d162c17e0718fed99bf7ab40708249d88fa334dc, we are providing the link in the rabbitmq-server job.


[BUG] remove statistics wokflow

Description of the bug
https://github.com/EddieHubCommunity/support/actions/runs/1307836916
ToDo:
remove following code in community.yml
-  statistics:
-    runs-on: ubuntu-latest
-    steps:
-      - uses: actions/checkout@v1
-      - uses: EddieHubCommunity/gh-action-community/src/statistics@main
-        if: ${{ github.repository_owner == 'EddieHubCommunity' }}
-        with:
-          firebase-key: ${{ secrets.FIREBASE_KEY }}

Project stack or language (e.g. front-end)
GitHub Action

Can I work on this?


Minimum stock form validation requires an integer

Please verify that this bug has NOT been raised before.

[X] I checked and didn't find a similar issue

Describe the bug*
If a part has a unit of measure, e.g. m, then stock can be tracked as a real number, e.g. 0.7 [m]. However the minimum stock field only validates if an integer is provided. In some cases stock is only considered low when below 0.5, but it's not currently possible to put a non-integer into the minimum stock field.
Steps to Reproduce

Create or edit part with non-empty unit of measure
Attempt to set minimum quantity to a non-integer value such as 0.5
Submit form
Form validation error is returned

Expected behaviour
Non-integer minimum stock levels are accepted and cause "low stock" alerts when stock falls below that level.
Deployment Method

[ ] Docker
[X] Bare metal

Version Information
Git 6563b4c4134df6fc3ee9886437d4213738bc2af2
Please verify if you can reproduce this bug on the demo site.

[X] I can reproduce this bug on the demo site.

Relevant log output
No response

@adamgreig the "minimum_stock" field is an integer field, so it makes sense that the form throws an error here.
However, it should probably be not limited to integer values, this concept went away from "part quantity" quite some time ago. I'll look into this for you.

Fix incoming in https://github.com/inventree/InvenTree/pull/5609
Note that as this is not a critical bug and the fix involves a change to the database schema, this will not be back-ported to the current stable branch

Thank you, I appreciate the quick response!


Shrink the size of memory pools when usage decreases

Currently the memory pool implementation will only grow in size. This means if there is burst of high load that subsided, memory usage for the Kestrel process will not decrease as much as it could.

Apply common server/cluster load balancing model?
Round robin pools per slab? Move slabs move out of rotation; but accept returns. When all blocks are returned dispose slab; if alloc is needed prior, move slab back into rotation; if no slabs being deallocated allocate new.

Probably need some heuristics on whether growing, shrinking or static to determine whether to take slabs out of rotation

Closing because @davidfowl thinks this is not problem.


Adding codegen for Kotlin using Retrofit

Tell us about the task you want to perform and are unable to do so because the feature is not available
I want to add a new code generation language for Kotlin using Retrofit. Currently, there is no support for generating code for Kotlin with Retrofit in our system.
Describe the solution/feature you'd like us to add
I would like to see support for generating Kotlin code with Retrofit in our code generation system. This would involve creating templates and logic for generating Kotlin code that utilizes Retrofit for making API calls.
Any other feedback you would like to provide regarding the site
Overall, I find the site quite useful, but adding support for more new codegen languages would greatly enhance its capabilities and usefulness for developers

@ashitaprasad @animator please review this!

Hey @animator, I've updated the test cases to include the example Request Models from POST 4 to POST 9, which were recently added. I've created a new PR (#294) for this issue, as the previous one encountered some complex conflicts after updating with the latest code. Could you please review the new PR?

Guidelines for adding a codegen - https://github.com/foss42/apidash/discussions/80


安装失败

请问下 下面安装失败的原因是 ，
[ 11%] Linking CXX executable autoshadower
2016-08-22 11:27:02.684 xcodebuild[22887:7054182] [MT] DVTToolchain: Failed to load toolchain: DVTFilePath:0x7fc0f1e01f60:'/Library/Developer/Toolchains/swift-latest.xctoolchain': Error Domain=DVTToolchainErrorDomain Code=4 "alleged toolchain directory doesn't contain ToolchainInfo.plist or Info.plist" UserInfo={NSFilePath=/Library/Developer/Toolchains/swift-latest.xctoolchain, NSLocalizedDescription=alleged toolchain directory doesn't contain ToolchainInfo.plist or Info.plist}
Undefined symbols for architecture x86_64:
"_iconv", referenced from:
Webpage::convertCharset(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&, std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&) in Webpage.o
"_iconv_close", referenced from:
Webpage::convertCharset(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&, std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&) in Webpage.o
"_iconv_open", referenced from:
Webpage::convertCharset(std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&, std::__1::basic_string<char, std::__1::char_traits, std::__1::allocator > const&) in Webpage.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make[2]: *** [autoshadower] Error 1
make[1]: *** [CMakeFiles/autoshadower.dir/all] Error 2
make: *** [all] Error 2
没有C++经验，望回复

+1


[Feature] Add Air Quality Index Calculator

Description
The Air Quality Index (AQI) Calculator will be a tool designed to provide users with real-time information about the air quality in their area. The calculator takes into account various air pollutants such as particulate matter (PM2.5 and PM10), ozone (O3), nitrogen dioxide (NO2), sulfur dioxide (SO2), and carbon monoxide (CO), and converts their concentrations into a single numerical value representing the overall air quality.
Screenshots
No response
Checklist

[X] I have checked the existing issues.
[X] I follow Contributing Guidelines of this project.
[x] I am a GSSOC'24 contributor.
[ ] I am a IWOC'24 contributor.
[ ] I am a JWOC'24 contributor.
[ ] I am a SWOC'24 contributor.

Code of Conduct

[X] I agree to follow this project's "Code of Conduct".

Hi, I would like to work on this, Could you please assign this to me?

This calculator is already present on the website, you can enhance that or add more features if you want @anusha7530


Add weight support

Hi !
I've had a customer that was trying to output the weight of the cart, however it seems CartJS does not have any weight formatter to do that.
Bye!

Thanks for your suggestion and work on this @bakura10. Just released 0.3.6, which includes support for weight and weight_with_unit formatters. Cheers!


navigateTo open disables server side redirect

Environment

Operating System: Linux
Node Version:     v18.18.0
Nuxt Version:     3.11.1
CLI Version:      3.11.0
Nitro Version:    2.9.4
Package Manager<EMAIL_ADDRESS>Builder:          -
User Config:      devtools
Runtime Modules:  -
Build Modules:    -

Reproduction
https://stackblitz.com/edit/github-f7dgow?file=app.vue,pages%2Findex.vue,pages%2Fredirect.vue,middleware%2Ftest.ts
Describe the bug
Setting open
export default defineNuxtRouteMiddleware((to) => {
  return navigateTo('/redirect', {
    open: {
      target: '_self',
    },
    redirectCode: 302,
  });
});

as options in navigateTo forces client side execution of the navigate to, even if the middleware also runs on server.
The docs mention the field is being ignored which does not seem to be the case.

No 302 redirect is returned here
Additional context
No response
Logs
No response

Created a PR for it. I wonder if it makes more sense to "ignore the field" and perform the request server-side or to "ignore the request" if the field is set on the server side and run it on the client-side as is.
WDYT @warflash?

Awesome!
To me the current actual behaviour felt highly unintuitive so I'd be leaning towards performing the request server side and ignoring the field there.


Problem with toggle

When the card is toggled, the fields are invisible but still selectable. Please see attached screen shot. This also means that the search box can not be used.

(ps. sorry to be bombarding you with issues!)

Fixed in 1.0.6, Thank you!


fix: Pagination component's range and page text for no items

resolves #553
Summary:
When the total items provided to the Pagination component is 0 the correct item and page ranges will be displayed now. (ie. 0-0 of 0 items and 1 of 1 pages, instead of 1-0 of 0 items and 1 of 0 pages)
Additional Notes:
Pagination V2

Pagination

Changelog
Changed

Pagination, PaginationV2: Fix item and page ranges when there are no items.

Hi @McBrosa thank you for trying to address this problem space! Do you think your change has something to do with https://github.com/carbon-design-system/carbon-components-react/pull/755, or is it completely a separate issue?

They are similar but I believe there are still aspects of #533 that are not resolved in #755.
For example:
<Pagination {...props} totalItems={0} />

Result:


Fix normals computation at the 'seam' of smoothed torus shape

Fix normals computation at seams of csg torus, the same way it was done for sphere and cylinder in #58208.
Before

After

Thanks!

Cherry-picked for 3.5.

Cherry-picked for 3.4.4.

Hi good last time you got this one


fix: relocation example

Fixes the relocation example provided in the README.

Closing it out of inactivity, @greged93 feel free to make a new PR with the mentioned changes/improvements


Update FAQ to include section about inline asset URLs

As per this issue: https://github.com/sveltejs/vite-plugin-svelte/issues/863 , this PR updates the FAQ section to include information on how to go about using inline URLs.

@JorensM  i have rebased this PR and applied my suggestion above, please let me know if this covers it well

@JorensM i have rebased this PR and applied my suggestion above, please let me know if this covers it well

Looks good 👍 thank you!


cockroach beta-20170406

Created with brew bump-formula-pr.

Neat, what was the exact invocation of brew bump-formula-pr?

brew bump-formula-pr --url=https://binaries.cockroachdb.com/cockroach-${BETA_TAG}.src.tgz --version=${BETA_TAG} cockroachdb/cockroach/cockroach

@tamird the invocation lives on the release process Wiki page, btw: https://github.com/cockroachdb/cockroach/wiki/Release-Process#brew-recipe


Regenerate tasks client

This PR was generated using Autosynth. :rainbow:
Here's the log from Synthtool:
synthtool > Executing /tmpfs/src/git/autosynth/working_repo/google-cloud-clients/google-cloud-tasks/synth.py.
synthtool > Ensuring dependencies.
synthtool > Pulling artman image.
latest: Pulling from googleapis/artman
Digest: sha256:6929f343c400122d85818195b18613330a12a014bffc1e08499550d40571479d
Status: Image is up to date for googleapis/artman:latest
synthtool > Cloning googleapis.
synthtool > Running generator for google/cloud/tasks/artman_cloudtasks_v2beta2.yaml.
synthtool > Generated code into /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java.
synthtool > Running java formatter on 31 files
synthtool > Running java formatter on 1 files
synthtool > Running java formatter on 71 files
synthtool > Running generator for google/cloud/tasks/artman_cloudtasks_v2beta3.yaml.
synthtool > Generated code into /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java.
synthtool > Running java formatter on 31 files
synthtool > Running java formatter on 1 files
synthtool > Running java formatter on 63 files
synthtool > Running generator for google/cloud/tasks/artman_cloudtasks_v2.yaml.
synthtool > Generated code into /home/kbuilder/.cache/synthtool/googleapis/artman-genfiles/java.
synthtool > Running java formatter on 31 files
synthtool > Running java formatter on 1 files
synthtool > Running java formatter on 53 files
synthtool > Cleaned up 0 temporary directories.
synthtool > Wrote metadata to synth.metadata.

Combined into a single pull request #6022


Extend Cypress documentation

The intention of this PR is to extend the existing Cypress documentation with a short explanation of each test and indicate how to run all tests included in Cypress Test Production action.

@larswmh Thanks so much for your corrections!

@brifemu / @larswmh
I will give some feedback later today about the two tests I wrote, since the descriptions aren't right. So please hold back before merging.

@MikeMcC399 Thanks!


Drop ComparisonFilter subclasses

A bit of a clean-up

Add $operator and $inverseOperator as constructor arguments to ComparisonFilter, make it a concrete class
Set up service definitions that populate these values in model.yml: DataListFilter.GreaterThan, DataListFilter.GreaterThanOrEqual, DataListFilter.LessThan, DataListFilter.LessThanOrEqual
Set up similar service definitions for GreaterThanFilter, GreaterThanOrEqualFilter, LessThanFilter, LessThanOrEqualFilter
Delete the 4 classes: GreaterThanFilter, GreaterThanOrEqualFilter, LessThanFilter, LessThanOrEqualFilter

Nice to do but won't block the milestone

Doesn't seem necessary and could result in a bloated ComparisonFilter class definition. Gonna close this one.


distance_to_closest_obstacle(pt, radius) cannot return properly while pt getting close to the ground

Habitat-Sim version
v0.3.1
I have created a self-defined drone dynamics system using habitatsim as render. And I obtain the collision status by comparing the pathfinder.distance_to_closest_obstacle() to the radius of my ball-shape agent.
I have confirmed that the "collision_assert" (the same as render_assert) is included in configs/stages/**.stage_config.json, "is_collidable" is set as true. Besides, I've double check these settings after creating the Simulator.
the issue is that, the distance returned from pathfinder.distance_to_closest_obstacle(point, max_search_radius) is correct while the point is getting close to walls and objects, but wrong while getting close to ground/floor. It seems that the agents do not consider the ground as obstacles, assuming that robot always stands on the floor.
If I want to free the point in the room and make it aware of the closest distance in any direction (including ground), how could I do.
I appreciate it very much if you can offer any help.
Thanks!

Hey @Fanxing-LI
Interesting application. A few points of clarification about how the system works may help:

The navmesh (PathFinder) is an abstraction of the navigable area in a scene representing the agent as a cylinder and computing a mesh based on a voxelization of the scene geometry.
The distance_to_closest_obstacle function gives distance to the nearest mesh edge from the snapped point.
Pathfinder does not use the collision proxy for the asset, it only uses the NavMeshSettings which by default is computed from the agent's height and radius config.
The navmesh will not be a great representation if you want to the drone to be able to fly/hover over obstacles in addition to avoiding them.

It sounds like you have a clever way of using the navmesh for a drone to avoid walls and large obstacles, but you want vertical distance (e.g. to floor and maybe ceiling) in addition. One way to accomplish this is to setup some raycasts  as sensors. For example, cast a ray from the center of your drone down the Y-axis and use the first hit distance (which isn't your drone). Similarly, you could setup rays in other directions for additional sensors.
Another option (if the world is mostly static, like scan scenes) would be to pre-compute a signed distance field in the space and then query from the cache for your drone's position.

Thanks for your reply. Besides obove-mentioned issue, closest_obstacle_surface_point() returns the obstacles' position projected on the ground, which is also not right for collision detection in free space.
So we decide to modify the source code and try to add a self-defined function to compute the vector (to), distance (to) ,position (of) closest obstacle surface point, without constraints. For this task, the original mesh map or point cloud map is necessary. If possible, could you tell me which part/ variable is the original map resourses? Thanks


Possible data corruption?

In an attempt to use rtrb in my code (mostly through its Read and Write implementations), I've noticed that occasionally a few hundred bytes gets lost. How can I debug whether this would be a rtrb issue? Has rtrb undergone loom-based rigorous testing, or anything of that sort?

I haven't used loom, but I would be interested in trying it together with rtrb. Do you have an idea how to create an appropriate test case (or I guess a "model" in loom terminology)?
Regarding the Read and Write implementations, the main thing to check is whether std::io::ErrorKind::WouldBlock is generated and handled as expected.
If you are only using Read and Write, you could probably quickly switch rtrb with ringbuf, which also has a Read and Write implementation.

Any news on this @nullchinchilla?
If there indeed is data corruption, I'd like to fix that, but if there isn't, I'd like to close this issue because it might deter people from using rtrb.

So I refactored out the code that was causing issues into a separate crate: https://github.com/geph-official/bipe/blob/master/src/lib.rs
Can you take a look to see whether there are obvious problems in my code? I think what I'm doing (implementing a "blocking" asynchronous pipe) is pretty straightforward --- but what I see is that occasionally stuff in the buffer get "lost".

It turned out to be a bug in my code, where I called write() where I meant write_all(). My own ring-buffer implementation blocked until there was room to fulfill the entire write, so the bug was masked until I switched to rtrb!

Thanks for the update @nullchinchilla, I'm glad you found the bug!


Allow use of endpoint URL for S3_REGION

This change allows users to pass in a URL rather than a region name for configuring S3. This enables S3 compatible storage systems such as Google Cloud Storage and Eucalyptus to be used as both Backup and configuration storage options.
I am happy to make this to work a different way if the current logic is incorrect in some way.
Thanks for Exhibitor!

FYI - I'm in discussion with Netflix to move Exhibitor to its own repo so that it get better community support. Please stayed tuned.

Thanks for the update @Randgalt!

If we like to support GCM or some other backend, we should implement separate Provider classes.
Going to close this for now.


[AutoPR datafactory/resource-manager] Update GoogleAdWords and GoogleBigQuery clientId for fix issue

Created to sync https://github.com/Azure/azure-rest-api-specs/pull/7903

This PR has been merged into https://github.com/Azure/azure-sdk-for-python/pull/8442