fix(create-email): Move "react-email" package to devDependencies for the template

The manual setup suggests adding react-email as a devDependency (with the -d flag), so the behaviour should be the same here. The package is not required at runtime and adding at as a regular dependency, rather than a devDependency, adds hundreds of MBs of JS to production builds.

Good catch!
Could you just add in a changeset for the create-email package?

Getting errors around react-email/components versions when trying to generate the changeset. Is it an issue with the branch/fork or something else?
Package "web" must depend on the current version of "@react-email/components": "0.0.26-canary.3" vs "npm:@react-email/components@latest"
🦋  error Error: Failed to find where HEAD diverged from main. Does main exist?
🦋  error     at getDivergedCommit (/Users/brianbriscoe/Code/react-email/node_modules/.pnpm/@changesets+git@3.0.0/node_modules/@changesets/git/dist/changesets-git.cjs.js:66:11)
🦋  error     at async getChangedFilesSince (/Users/brianbriscoe/Code/react-email/node_modules/.pnpm/@changesets+git@3.0.0/node_modules/@changesets/git/dist/changesets-git.cjs.js:198:22)
🦋  error     at async Object.getChangedPackagesSinceRef (/Users/brianbriscoe/Code/react-email/node_modules/.pnpm/@changesets+git@3.0.0/node_modules/@changesets/git/dist/changesets-git.cjs.js:239:24)
🦋  error     at async getVersionableChangedPackages (/Users/brianbriscoe/Code/react-email/node_modules/.pnpm/@changesets+cli@2.27.7/node_modules/@changesets/cli/dist/changesets-cli.cjs.js:200:27)
🦋  error     at async add (/Users/brianbriscoe/Code/react-email/node_modules/.pnpm/@changesets+cli@2.27.7/node_modules/@changesets/cli/dist/changesets-cli.cjs.js:466:35)
🦋  error     at async run (/Users/brianbriscoe/Code/react-email/node_modules/.pnpm/@changesets+cli@2.27.7/node_modules/@changesets/cli/dist/changesets-cli.cjs.js:1300:5)

@Briscoooe Had this myself a while back, it's just that you didn't pull the main branch. Try checking out to it git checkout main.

Should be good now @gabrielmfern


Automated Docker Hub Build

Is there an automated Docker Hub build available? If not would it be possible to set one up.
I only saw this one https://hub.docker.com/r/albertdixon/nginx-vts-exporter/. But this doesn't seem to be an automated built image.
It would be awesome to have an automated build of this image.

One way would be to use a golang image and built it in it.

Thanks for the advise, I would consider it 😄

@galexrt
I have already set up an automated Docker Hub build, have fun :-)
https://hub.docker.com/r/sophos/nginx-vts-exporter/

@hnlq715 Thank you! :+1:
I'm going to submit an PR to update the README.md to point to the Docker Hub build.

One thing I just noticed is that the tags of the repo aren't built. Could you please also add a wildcard regex for building tags to the Docker Hub build settings?

Sure, but old versions of nginx-vts-exporter are quite different with v0.3 in many ways.

Could you manually add the v0.3 as a tag on Docker Hub build settings and trigger a build that the image tag becomes available to use (currently only latest/master tag has been built).


Timeline

This proposal is currently stage 1, correct?
Is there any form of timeline planned until stage 4?

This proposal is currently stage 2 and please feel free to watch the repo to receive updates.


RuntimeError: Failed to import transformers.models.t5.modeling_t5 because of the following error (look up to see its traceback): Failed to import transformers.generation.utils because of the following error (look up to see its traceback): cannot import name 'split_torch_state_dict_into_shards' from 'huggingface_hub' (/hy-tmp/sz-moment/lib/python3.11/site-packages/huggingface_hub/init.py)

First of all, thank you very much for your open-source work on Moment.

After I executed pip install momentfm, everything went well, MOMENTPipeline.from_pretrained could be loaded successfully.
However, when I tried to fine-tune with LoRA, after I executed pip install peft. This error occurred.

Environment
Python== 3.11
torch==2.3.1
huggingface-hub==0.19.4
transformers==4.33.3

My code
model = MOMENTPipeline.from_pretrained("/hy-tmp/better464/MOMENT-1-large",
                                           model_kwargs={
                                               'task_name': 'forecasting',
                                               'forecast_horizon': 192,
                                               'head_dropout': 0.1,
                                               'weight_decay': 0,
                                               'freeze_encoder': True,  # Freeze the patch embedding layer
                                               'freeze_embedder': True,  # Freeze the transformer encoder
                                               'freeze_head': False,  # The linear forecasting head must be trained
                                           },
                                           )
model.init()

Complete traceback
Traceback (most recent call last):
  File "/hy-tmp/moment/huggingface_download.py", line 6, in <module>
    from momentfm import MOMENTPipeline
  File "/hy-tmp/moment/momentfm/__init__.py", line 1, in <module>
    from .models.moment import MOMENT, MOMENTPipeline
  File "/hy-tmp/moment/momentfm/models/moment.py", line 10, in <module>
    from transformers import T5Config, T5EncoderModel, T5Model
  File "<frozen importlib._bootstrap>", line 1229, in _handle_fromlist
  File "/hy-tmp/sz-moment/lib/python3.11/site-packages/transformers/utils/import_utils.py", line 1175, in __getattr__
    value = getattr(module, name)
            ^^^^^^^^^^^^^^^^^^^^^
  File "/hy-tmp/sz-moment/lib/python3.11/site-packages/transformers/utils/import_utils.py", line 1174, in __getattr__
    module = self._get_module(self._class_to_module[name])
             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/hy-tmp/sz-moment/lib/python3.11/site-packages/transformers/utils/import_utils.py", line 1186, in _get_module
    raise RuntimeError(
RuntimeError: Failed to import transformers.models.t5.modeling_t5 because of the following error (look up to see its traceback):
Failed to import transformers.generation.utils because of the following error (look up to see its traceback):
cannot import name 'split_torch_state_dict_into_shards' from 'huggingface_hub' (/hy-tmp/sz-moment/lib/python3.11/site-packages/huggingface_hub/__init__.py)

I think it is due to the huggingface-hub version. See https://github.com/run-llama/llama_index/discussions/14605

Hi Shaozhe,
Thanks for your interest in MOMENT. We released a few changes to MOMENT, and hope it works for you now.
I'll close this issue, but please don't hesitate to open another one should you face any problems.
Best,
Mononito


Name virtual machine names with unique suffix

This will help to have unique hostnames for master and worker
nodes when OCP is deployed. Unique hostname for master and
worker node is needed to overcome docker.io ratelimit issue.
Signed-off-by: Sridhar Venkat<EMAIL_ADDRESS>

I did not test this change, I do not have an environment ready. In my ocs-upi-kvm environment git submodules are getting wiped out, so no idea how I can test this in my environment.

I tested this fix in a x86 libvirt environment. Refer to https://www.youtube.com/watch?v=MdeJn1k2b8Y&t=262s
VM Name contains a random string as suffix:
virsh list
Id   Name          State
2    vm-0-qtyycq   running

@gitsridhar This needs to be validated against ocs-ci where the rate iimiting issue occurs.   It should impact Redhat, so the question is how are they solving this issue.   They are testing many platforms and they have many clusters running ocs-ci.   We should implemented the same solution as Redhat, and if that means getting a corp account and paying a fee, so be it.   How much money are we talking about anyway.
The ocs-upi-kvm manages git submodules internally.   When we create two clusters sequentially we need to restore the submodule to its premodified state before creating the second cluster.  The code does a git submodule deinit and then an update --init to restore the code to its original state.   If you want to modify ocp4-upi-kvm to test it out, git you need to update the git module remote references.

The node names are already unique, no 2 nodes will be of same name. Also random id is prefixed to the node names. The result shown in oc get nodes is coming from the hostname and not the virsh domain name. (Perhaps, you will have to change all the DNS entries to name it that way.. I haven't tried).
cc: @bpradipt

Redhat worked around the image problem by moving them from docker.io to quay.io.

I am going to close this as we already have random id prefix support for generating the cluster_id.


Not showing up in dalamud

Hello, I followed all instructions as written but bossmod is not showing up whenever I go to search for it in dalamud. I can see the other plugins in the repository except bossmod for some reason. Have had this issue for a week and have yet to find an answer. Here's what my custom repository setting looks like and my plugin search.

https://puni.sh/api/repository/veyn is the correct repo

https://puni.sh/api/repository/veyn is the correct repo

When I copy and paste this repo it automatically changes to the repo seen above. Even when I type it out myself it does the same.

remove the love.puni.sh one and then add the one I posted

remove the love.puni.sh one and then add the one I posted

That worked, thanks!


Add YAML and Markdown formatting

Background
Adds prettier formatter to the repository in order to format YAML and Markdown files
Prettier will be installed after running make install and then the YAML and Markdown files can be formatted by running make fmt:
Testing
make install
make fmt

Needs this PAT update to run the tests successfully.

@le4ker , @egibs
Does pat need to be updated to ignore package-lock.json? I'm getting the following with make test and I see it in the test failure log here on the pr merge to release as well:
  Invalid Tests Summary
  	/home/runner/work/panther-analysis/panther-analysis/package-lock.json
  		Missing key: 'AnalysisType'

  	/home/runner/work/panther-analysis/panther-analysis/package.json
  		Missing key: 'AnalysisType'

https://github.com/panther-labs/panther-analysis/actions/runs/8422896110/job/23063255413

lol, should have looked at pat, first. It looks like this depends on: https://github.com/panther-labs/panther_analysis_tool/pull/470/files

lol, should have looked at pat, first. It looks like this depends on: https://github.com/panther-labs/panther_analysis_tool/pull/470/files

@kjihso correct, I have it mentioned in the PR description as well 😄

Needs https://github.com/panther-labs/panther_analysis_tool/pull/470 PAT update to run the tests successfully.


Line charts curve downward

Describe the bug
Line charts curve downward if data contains many Points with x = 0
To Reproduce
Use a line chart with isCurved set to true. In my example the chart contains 28 FlSpots with all of them but 3 having x set to 0
Screenshot

preventCurveOverShooting in LineChartBarData might help.


Full support for fixed version Lerna monorepos

[x] Changed package detection
[x] NPM package publishing
[x] Automatic version bumps
[x] Automatic changelog updates
[ ] Re-detect changed packages after version bumps
[ ] Prepublish action
[ ] GitHub artifact publishing

[ ] Attempt to publish all packages, not just changed ones
[ ] Use output from update-npm-deps action to skip this one
[ ] Fix output of lerna changed creating error
[ ] Comment on PR after successful publish

Created separate issues to track tasks that are still relevant


fix import source and destination returned as null

source and destination are always returned null from $this->db->escape_string(...
Updated the referenced object from $db to $database.

So sorry, I really did not see this until now... I'm making the change on the dev branch whilst fixing the timestamp issue.


hub create returns 401 error bad credentials on WSL/Ubuntu

react-gifs git:(master) hub create
github.com username: l1chtlaerm
github.com password for l1chtlaerm (never stored):
Error creating repository: Unauthorized (HTTP 401)
Bad credentials. The API cant be accessed using username/password authentication.
Please create a personal access token to access this endpoint: http://github.com/settings/tokens

I do not have a ~/.config/hub file nor is it created when running hub create. I do have a SSH key for this particular instance. I do not experience this issue on native Ubuntu, but I do experience it on WSL 2 running Ubuntu 18.04. I've also noticed that even after trying to update git and hub separately hub remains as an older version than available. I do not know if this is related to the issue.
react-gifs git:(master) hub --version
git version 2.29.2
hub version 1.12.4

Another thing to note: trying to run hub browse on my own cloned repository throws a  401 "Unauthorized (Net::HTTPServerException) after inputting credentials:
➜  profile git:(master) hub browse
github.com username: l1chtlaerm
github.com password for l1chtlaerm (never stored):
Traceback (most recent call last):
        35: from /home/lichtlaerm/.rbenv/versions/2.6.6/bin/hub:23:in `<main>'
        34: from /home/lichtlaerm/.rbenv/versions/2.6.6/bin/hub:23:in `load'
        33: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/bin/hub:9:in `<top (required)>'
        32: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/runner.rb:17:in `execute'
        31: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/runner.rb:17:in `new'
        30: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/runner.rb:12:in `initialize'
        29: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/commands.rb:63:in `run'
        28: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/commands.rb:687:in `browse'
        27: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/commands.rb:1002:in `browse_command'
        26: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/commands.rb:704:in `block in browse'
        25: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/2.6.0/forwardable.rb:230:in `remote_branch_and_project'
        24: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/context.rb:158:in `remote_branch_and_project'
        23: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/context.rb:158:in `call'
        22: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/commands.rb:870:in `github_user'
        21: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:50:in `username_via_auth_dance'
        20: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:552:in `username'
        19: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:463:in `fetch_value'
        18: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:463:in `fetch'
        17: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:464:in `block in fetch_value'
        16: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:553:in `block in username'
        15: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:54:in `block in username_via_auth_dance'
        14: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:204:in `get'
        13: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:395:in `perform_request'
        12: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:255:in `perform_request'
        11: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:384:in `apply_authentication'
        10: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:329:in `apply_authentication'
         9: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:567:in `oauth_token'
         8: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:463:in `fetch_value'
         7: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:463:in `fetch'
         6: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:464:in `block in fetch_value'
         5: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:568:in `block in oauth_token'
         4: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:330:in `block in apply_authentication'
         3: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:346:in `obtain_oauth_token'
         2: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:346:in `loop'
         1: from /home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/gems/2.6.0/gems/hub-1.12.4/lib/hub/github_api.rb:364:in `block in obtain_oauth_token'
/home/lichtlaerm/.rbenv/versions/2.6.6/lib/ruby/2.6.0/net/http/response.rb:122:in `error!': 401 "Unauthorized" (Net::HTTPServerException)

@l1chtlaerm Sorry for the trouble!
First, you should try updating to the latest version of hub available. Yours is more than 6 years out of date.
If your package manager does not offer the latest version of hub, you can follow our installation instructions to download one manually.
Next, you should go online and generate a Personal Access Token for hub that you will paste in place of a password. https://github.com/github/hub/issues/2655

I'm having problems using the tokens to log in so trying to update to the latest version https://github.com/github/hub/releases/tag/v2.14.2 on windows ubunto.
I can only manage to get the version 1.12.4 using sudo apt install hub.

I'm having problems using the tokens to log in so trying to update to the latest version https://github.com/github/hub/releases/tag/v2.14.2 on windows ubunto.
I can only manage to get the version 1.12.4 using sudo apt install hub.

Hi! I was wondering if you managed to update to the latest version of Hub?? I am having the same issue and even if I get a new token it doesnt work

Hi! I was wondering if you managed to update to the latest version of Hub?? I am having the same issue and even if I get a new token it doesnt work

No sorry, still haven't managed to get it to work.

No sorry, still haven't managed to get it to work.


Fix MCE to DB owner categroy mapping

Coverage increased (+0.4%) to 26.307% when pulling eb6aeb4e10aac108c56f482e9ff0aa09395eb522 on alyiwang:master into d2cba22f5c13120d360e38e6d5289c43e3fa6cd1 on linkedin:master.


show more button added

the show more button is not meant to show only if the text is already truncated (less than 500 words), but it does not show at all. if I remove the if  condition on line 30 in search.js, it works perfectly. I was wondering if you know why this is happening?
maybe it is counting the white spaces (but i usewd the trim function to remove it), not sure why that is happening?

Ah, I see what's going on. The full abstract itself isn't truncated - what happens is that it's always on the page, it's just hidden in the js version of the page, and a truncated one is shown instead, until someone clicks on it. So the full abstract is never under 500 characters unless someone just wrote a really short one.

oh that makes so much sense. thanks!!

changed the name of the div from abstract--full to "result-full" etc.
The show more/less button works!


Add customization for social links UI

Add some customization for links UI like, change social icons, font, etc.

Going to close this as I've expanded #133 to cover customisation. Feel free to add additional relevant details there.


upgraded

Consolidated editor.codeActionsOnSave for ESLint to make it cleaner.
Added formatter settings for HTML to ensure consistent formatting.
Included helpful settings like files.autoSave for better workflow.
Set file associations to ensure correct syntax highlighting.
Added files.exclude to hide unnecessary files from the explorer*

🟡 Heimdall Review Status

Requirement
Status
More Info

Reviews

🟡
0/1

Denominator calculation

Show calculation

1 if user is bot
0

1 if user is external
0

From .codeflow.yml

1

Additional review requirements

Show calculation

Max
0

0

From CODEOWNERS

0

Global minimum
0

Max

1

1

1 if commit is unverified
0

Sum
1


Fix EC

Fix enterprise contract failure:
"failed": [
            {
                "name": "RunAsNonRoot",
                "elapsed_time": 0,
                "description": "Checking if container runs as the root user because a container that does not specify a non-root user will fail the automatic certification, and will be subject to a manual review before the container can be approved for publication",
                "help": "Check RunAsNonRoot encountered an error. Please review the preflight.log file for more information.",
                "suggestion": "Indicate a specific USER in the dockerfile or containerfile",
                "knowledgebase_url": "https://access.redhat.com/documentation/en-us/red_hat_software_certification/2024/html-single/red_hat_openshift_software_certification_policy_guide/index#assembly-requirements-for-container-images_openshift-sw-cert-policy-introduction",
                "check_url": "https://access.redhat.com/documentation/en-us/red_hat_software_certification/2024/html-single/red_hat_openshift_software_certification_policy_guide/index#assembly-requirements-for-container-images_openshift-sw-cert-policy-introduction"
            }
        ],

/retest

/retest


Use method save()

Hi,
I would like to use save() on restangularized element.
1 - I saw this issue https://github.com/mgonto/restangular/issues/697. When will it be merged ?
2 - I think it will be easier to use if save() was based on object.id.
var myCar = {};
// Do restangularizeElement
myObject.save() // Do a POST request on '/car'

var myObject = {id: 1};
// Do restangularizeElement
myObject.save() // Do a PUT request on '/car/1'

What do you think about it ?
Thanks for your reply

+1

+1

+1

It should've been merged awhile ago, but mgonto has left the project as the primary author, so myself and a few others have been trying to maintain it. I will do my best to try to get this reviewed, but time is limited :(


Complete example

Is there any way that you could put the example into a separate module? I can't get either the example in the readme or the tests module to compile.
error: proc macro panicked
  --> src/main.rs:71:9
   |
71 |           nom_rule::rule!($crate::match_text, $crate::match_token, $($tt)*)
   |           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
...
76 |       let mut rule = rule!(
   |  ____________________-
77 | |         CREATE ~ TABLE ~ #ident ~ ^"(" ~ (#ident ~ #ident ~ ","?)* ~ ")" ~ ";" : "CREATE TABLE statement"
78 | |     );
   | |_____- in this macro invocation

   = help: message: called `Option::unwrap()` on a `None` value
   = note: this error originates in the macro `rule` (in Nightly builds, run with -Z macro-backtrace for more info)

Also is it possible to use rules inside of other rules?

Issue seems to arise from the usage of Span::join in this crate, which is available on nightly only. So i guess it should be mentioned in readme that this crate is for nightly compiler only until proc_macro_span feature is available on stable.

Yes! As @ilyatrefilov said, this crate is only available on the nightly channel for the exact reason. So I'll suggest you use the nightly compiler instead. I appreciate your feedback and I've added a note to the readme.
If you're interested in the usage in a real production project, it'll help to read the SQL parser of the database databend


Added command to show app details

Fixes #156
Beyond the new command to show details of a single app this PR reorgs the apps command and the new command into a new hierarchy:
    apps
        list
        show

While the push command was not moved into this hierachy, it could, maybe should.
Existing tests were updated to match the new command name for apps list.
Tests added to cover the new apps show command.
Fix to the workpress test, it was not setting up an org for itself. Seen only when focusing on it alone.
Extended the Makefile with a showfous target to tell us which tests, if any, are focused.
This is now a dependency of the test-acceptance target.
Mostly :heavy_check_mark: for a local :cat2: Wordpress test fails in pushing the app, does not seem to be related.
And :heavy_check_mark: :cat2: on our gh runner :fireworks:

It might be confusing that we have carrier service (singular) but carrier apps (plural). I know that there is the alias but the default should be similar I think.

I would also adapt the acceptance tests to represent the name change, they should test the default name, not the alias, at least not only the alias.

Will do

@thardeck Done


easymotion vim

Check for existing issues

[X] Completed

Describe the feature
In VSCode's vim emulation you have an easymotion mode that allows you to type in
<leader><leader>motion
Then instead of doing that motion regularly, it will pull up easymotion which works like this
If applicable, add mockups / screenshots to help present your vision of the feature
https://www.loom.com/share/65f7ff4745df4f85bc1cd3ca51afdf83

keen for this outside of vim mode too

Related: #325


Change home page to "about" page

Checklist

[x] I have read the tutorials and know the correct effect of the functional design.
[x] There are no similar question on existing issues (including closed ones).
[x] I searched the Internet for related problems, but still couldn't solve it.
[x] My question is based on the latest code of master branch.

Description

Hopefully my last question, I'd like to rearrange the tabs so that the first one/"home" tab is an About tab (which I've already created) and the current Home tab becomes a "blog" tab somewhere farther down. Example

Is there a simple way to switch which tab is the "home"/base tab? I've tried changing the baseurl and url but it breaks lots of other stuff

There is no easy way to do this right now. You can put the contents of the Home page into index.html, but you need to handle other small details, such as breadcrumb, and so on. But If you're not familiar with Jekyll and Web development, I don't recommend this.

Ok, thanks!


Fix the TypeError exception when primary key is given to #where

Hi. #where with parameters including primary key seems does not work. A reproducible failed test code is include in this pull request.
e.g.) Foo::User.where(id: 3, foo: 2).first #=>

     TypeError:
       no implicit conversion of Array into Hash
     # ./lib/her/model/relation.rb:15:in `merge'
     # ./lib/her/model/relation.rb:15:in `apply_to'
     # ./lib/her/model/attributes.rb:26:in `initialize'
     # ./lib/her/model/attributes.rb:39:in `new'
     # ./lib/her/model/attributes.rb:39:in `block in initialize_collection'
     # ./lib/her/model/attributes.rb:35:in `each'
     # ./lib/her/model/attributes.rb:35:in `map'
     # ./lib/her/model/attributes.rb:35:in `initialize_collection'
     # ./lib/her/model/attributes.rb:183:in `new_collection'
     # ./lib/her/model/relation.rb:71:in `block in fetch'
     # ./lib/her/model/http.rb:59:in `request'
     # ./lib/her/model/relation.rb:70:in `fetch'
     # ./lib/her/model/relation.rb:50:in `respond_to?'

I think it should fetch a collection path with query ?{primary key}=xxx , but it fetches a resource path now so the above error comes on the phase of building collection instance from parsed response.

Any feedback?

Sorry - not yet. Will review asap.
--
Sent from my phone: please forgive the brevity.
Ed Jones

On 17 Apr 2017, at 07:44, nikushi<EMAIL_ADDRESS>wrote:
Any feedback?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

@nikushi I went ahead and squashed these commits locally before merging with master. Thanks again!

@zacharywelch Thank you!


Make Truffle use both the spec (console) and JUnit reporters

This lets us see test results on truffle test.

Do not merge yet - seems like we are not getting JUnit test results now.

Okay, works now. @balinskia , PTAL.


fix(groupBy): Fix groupBy to dispose of outer subscription.

Not sure how groupBy is passing current unit tests, as we seem to be covering this case.
This PR fixes a bug where groupBy wasn't unsubscribing from its source when the outer subscription has been disposed and all inner subscriptions are inactive.
If you see here, the inner refCount subscription calls parent.unsubscribe() if parent.count === 0 and parent.attemptedToUnsubscribe is true. But the parent only unsubscribes if parent.attemptedToUnsubscribe is false, which means the subscription to the source is never disposed.
This is easily replicated with groupBy on a Subject, where you'll see the observers list grow indefinitely.

Coverage remained the same at 97.674% when pulling 04b7757dd6e661e7a7be48231d0261790327b9f5 on trxcllnt:fix-groupBy-unsubscribe into dc06e017d1cf7f1336cc38a4ab81033a057a6794 on ReactiveX:5.0.x.

So we can't create create test coverage for this kind of cases?

@kwonoj I'm not sure. This test looks to be covering this case. I tried making a test that broke without this patch applied, but couldn't get it to break outside of the production code I had. It's possible my production code synchronously unsubscribes, which would explain why I can't replicate with marble diagrams (yet).

@kwonoj if you run this example, you can see the interval subscription isn't being disposed:
import { Observable } from 'rxjs';

console.clear();

Observable
  .interval(100)
  .do(console.log.bind(console, 'interval'))
  .finally(console.log.bind(console, 'unsubscribed'))
  .take(10)
  .mapTo(1)
  .groupBy((x) => x)
  .take(1)
  .mergeMap((group) => group.take(1))
  .subscribe(
    console.log.bind(console, 'next'),
    console.log.bind(console, 'error'),
    console.log.bind(console, 'complete')
  );
/*
> Console was cleared
> interval 0
> next 1
> complete undefined
> interval 1
> interval 2
> interval 3
> interval 4
> interval 5
> interval 6
> interval 7
> interval 8
> interval 9
> unsubscribed
*/

@trxcllnt can we definitively add a failing test case for this? I'd like to see that before we can merge this.

@blesh ok, I found a way to add a marble test that fails without this patch applied. the PR has been updated with this test.

Coverage decreased (-0.09%) to 97.583% when pulling 6ea5b177994a65e1389ec3ed5ebdfb920fd0da3e on trxcllnt:fix-groupBy-unsubscribe into dc06e017d1cf7f1336cc38a4ab81033a057a6794 on ReactiveX:5.0.x.

LGTM

@blesh did this get merged??

Hmmm... @trxcllnt I think this got merged into 5.0.x, which was deleted 😱. It's all good, I think we can merge this into master.


[Drain Safe] Use new address input component

Overview
Currently on Drain Safe we are using a custom address input. We should use the new address input component from safe-react-components that includes EIP-3770 support, validation and ENS name resolution.

Goals
Add new address input component with latest improvements
Requirements
ENS should work on that chains that support it

Mainnet
Rinkeby

Atm the issue is blocked by https://github.com/gnosis/safe-react-components/pull/167

Should we wait until this one is merged & released? https://github.com/gnosis/safe-react/pull/3062


Change DisableAutoTLSLabelKey to DisableAutoTLSAnnotationKey

Fix the name since we're setting this via an annotation, not a label.

/lgtm
/approve


Modify Database Schema for Work Order Status

Update the database schema to include fields for tracking the status of work orders, such as "pending," "reviewed," and "confirmed."

Hey! I would like to solve this issue

@Sidart333 Thanks for reaching out for help. I've decided not to continue with this project if you interested in python and ERP system check ERPnext and Odoo


ISPN-14490 Add blocking scheduled tasks to BlockingManager

https://issues.redhat.com/browse/ISPN-14490

Updated

merged! thanks @wburns !


Unbuildable on macOS

Hearthrock.Client and Hearthrock.Tests show a warning of "This project type not supported" in Visual Studio Community 2017 for Mac.
Are there dependencies on macOS that I should know about?

Hi,
I'm not sure, I never use macOS, but
https://stackoverflow.com/questions/31864724/can-you-install-net-framework-on-mac
I think, on Mac and Linux you can only use net core, but the client app using full .net framework
It's good idea to check: can we build all with only  net core, because right now, I think you can't
If you want patched version of lib, I think you can go to second issue here, about battlecry and try to use from the last comment from me, I think Mac use same lib for hs
If not, don't forget make some backups or just scan/repair the game with battle.net app

I Invested a bit further.
Everything except for Hearthrock.Client and Hearthrock.Tests builds.
I'm not very familiar with the .NET ecosystem, so can't quite see what's wrong. My guess is that the client won't build because it's using System.Xaml (or it's a WPF app? both are new to me, so I have no idea).
I tried using the recommended Portable.Xaml package which seems like it should provide cross platform compatibility with System.Xaml, but the build still fails for reasons I can't quite narrow down yet. I might try using the same package but build it in Windows to see if it can produce a macOS build.

I think, you can build project as net core, without ui as console
You just need separate ui from important code and add it to new net core project
But I'm not sure how it'll be work on macos
I think you can find something like manual to migrate to net core

Right now this project doesn't support Mac version.
The code is pure .NET code which can be built on any platform. However, the NuGet package is built on windows Hearthstone binaries (which won't work on Mac).
It is possible to make this project to support Mac, but it will be a problem to maintain it.


mokey service failing to start

Hi
Mokey doesn't start on a Centos 8 instance with IPA 4.8.7-13 installed
After following the instructions and issuing systemctl restart mokey the service fails to start and doesn't give much information,
systemctl status mokey gives the output below but i am not sure what the error is, does anyone have any suggestions?
mokey.service - mokey server
Loaded: loaded (/usr/lib/systemd/system/mokey.service; enabled; vendor preset: disabled)
Active: failed (Result: exit-code) since Thu 2021-01-28 17:05:18 CET; 6s ago
Process: 2807 ExecStart=/usr/bin/mokey --debug server (code=exited, status=1/FAILURE)
Main PID: 2807 (code=exited, status=1/FAILURE)
Jan 28 17:05:18 ldap2.inne.proxdynamics.com systemd[1]: Started mokey server.
Jan 28 17:05:18 ldap2.inne.proxdynamics.com mokey[2807]: time="2021-01-28T17:05:18+01:00" level=info msg="Using template dir: /usr/share/mokey/templates"
Jan 28 17:05:18 ldap2.inne.proxdynamics.com mokey[2807]: time="2021-01-28T17:05:18+01:00" level=fatal msg="encoding/hex: invalid byte: U+0048 'H'"
Jan 28 17:05:18 ldap2.inne.proxdynamics.com systemd[1]: mokey.service: Main process exited, code=exited, status=1/FAILURE
Jan 28 17:05:18 ldap2.inne.proxdynamics.com systemd[1]: mokey.service: Failed with result 'exit-code'.

Seeing the same on Centos 7.  I believe that this is related to something in a recent system update that created the problem.  The current 0.5.4-1.el7.x86_64 version was working before system updates.

@gah242s what version of FreeIPA are you running?

Whatever is latest.  Looks like 4.6.8-5.el7.centos from Base.

Same issue here on CentOS 7...

Having trouble re-producing this. Tested on ipa-server-4.6.8-5.el7.x86_64 and mokey v0.5.4 and all works well. The above error looks to be about a mis-configured enc_key? Can you verify your config is correct. See this issue #40

I haven't changed the .yaml file from the initial install of 0.5.3.  Additionally, this was working after the upgrade to 0.5.4, but before OS updates.  I guess I could regen a new enc_key and see if it changes things?

@gah242s Yes, give that a shot. There was a change in 0.5.4 that ensured the enc_key is properly set. Let me know if that fixes your issue.

That didn't help.  However, for kicks, I regenerated the auth_key then with openssl rand -hex 64, resulting a 128 character key.  That made the difference and it is now running, though I haven't actually tested anything, but it is working.

@gah242s Great. Thanks for testing. The next version of mokey should have an easier way of generating these keys as they tend to trip up new users.

I ran into the same error and I ended up using:
export LC_CTYPE=C; cat /dev/urandom | tr -dc 'a-f0-9' | fold -w 64 | head -n 1

as MOKEY_AUTH_KEY
and
export LC_CTYPE=C; cat /dev/urandom | tr -dc 'a-f0-9' | fold -w 32 | head -n 1

as MOKEY_ENC_KEY
The documentation definitely has some "room for improvement" here.

I ran into the same error and I ended up using:
export LC_CTYPE=C; cat /dev/urandom | tr -dc 'a-f0-9' | fold -w 64 | head -n 1

@zem Thanks for sharing this, I'll add it to the docs.

The documentation definitely has some "room for improvement" here.

Agreed. The docs need a lot of work. We're also working on improving the key generation in the next major release of mokey which will make this much more user friendly.


Error log message contains name of another controller

Bug Report
What did you do?
I have two controllers in my operator:

ClusterHealth
MachineHealth

Both do separate kinds of work, its not important for this issue. The behavior I have observed is when an error in controller ClusterHealth happens, the log message shows that the controller and controller kind are of controller MachineHealth.
I have observed this in a log output (redacted information):
MachineHealth
{"level":"debug","ts":1668804718.5109785,"logger":"controllers.MachineHealth","msg":"track machine health","Machine Health":"Track","Node":"<redacted>.compute.internal"}
{"level":"debug","ts":1668804718.5109887,"logger":"controllers.MachineHealth","msg":"node already tracked, update information","Machine Health":"Track","Node":"<redacted>.compute.internal"}
{"level":"debug","ts":1668804718.5109925,"logger":"controllers.MachineHealth","msg":"node has transitioned to desired machine config","Machine Health":"Track","Node":"<redacted>.compute.internal"}
{"level":"info","ts":1668804718.5221848,"logger":"controllers.MachineHealth","msg":"Reconciling MachineHealth done"}
{"level":"info","ts":1668804718.5331984,"logger":"controllers.MachineHealth","msg":"Reconciling MachineHealth"}
{"level":"debug","ts":1668804718.5416427,"logger":"controllers.MachineHealth","msg":"track machine health","Machine Health":"Track","Node":"<redacted>.compute.internal"}
{"level":"debug","ts":1668804718.5416548,"logger":"controllers.MachineHealth","msg":"node already tracked, update information","Machine Health":"Track","Node":"<redacted>.compute.internal"}
{"level":"debug","ts":1668804718.5416594,"logger":"controllers.MachineHealth","msg":"node has transitioned to desired machine config","Machine Health":"Track","Node":"<redacted>.compute.internal"}
{"level":"info","ts":1668804718.5546865,"logger":"controllers.MachineHealth","msg":"Reconciling MachineHealth done"}
{"level":"debug","ts":1668804718.5732543,"logger":"controllers.MachineHealth","msg":"track machine health","Machine Health":"Track","Node":"<redacted>.compute.internal"}
{"level":"debug","ts":1668804718.5732672,"logger":"controllers.MachineHealth","msg":"node already tracked, update information","Machine Health":"Track","Node":"<redacted>.compute.internal"}
{"level":"debug","ts":1668804718.5732706,"logger":"controllers.MachineHealth","msg":"node has transitioned to desired machine config","Machine Health":"Track","Node":"<redacted>.compute.internal"}
{"level":"info","ts":1668804718.5855224,"logger":"controllers.MachineHealth","msg":"Reconciling MachineHealth done"}
{"level":"debug","ts":1668804718.5994997,"logger":"controllers.MachineHealth","msg":"do not continue for root object"}

ClusterHealth
{"level":"debug","ts":1668804718.5109515,"logger":"controllers.ClusterHealth","msg":"handle node","ClusterHealth":"AWS","node":"<redacted>.compute.internal"}
{"level":"debug","ts":1668804718.5109675,"logger":"controllers.ClusterHealth","msg":"found machine ID","ClusterHealth":"AWS","node":"<redacted>.compute.internal","machine id":"<redacted>"}
{"level":"debug","ts":1668804718.606391,"logger":"controllers.ClusterHealth","msg":"node identified as master","ClusterHealth":"AWS","node":"<redacted>.compute.internal"}
{"level":"debug","ts":1668804718.6586478,"logger":"controllers.ClusterHealth","msg":"received name tag","ClusterHealth":"AWS","node":"<redacted>.compute.internal","Name":"<redacted>"}
{"level":"error","ts":1668804718.938941,"msg":"Reconciler error","controller":"machinehealth","controllerGroup":"<redacted>","controllerKind":"MachineHealth","clusterHealth":{"name":"<redacted>.compute.internal"},"namespace":"","name":"<redacted>.compute.internal","reconcileID":"faf3...","error":"aws ec2 reconciliation: get master interface: network interface not found","errorVerbose":"network interface not found..."}

The problem here is with the last line where an error is thrown. As you can see in the message, "controller":"machinehealth" and "controllerKind":"MachineHealth" indicate its the MachineHealth controller, but the actual error happened in controller ClusterHealth:
Stacktrace
<redacted>/controllers/clusterhealth.(*ClusterHealthReconciler).Ec2ReconciliationAWS
	/go/src/<redacted>/controllers/clusterhealth/aws.go:85
<redacted>/controllers/clusterhealth.(*ClusterHealthReconciler).clusterHealthAWS
	/go/src/<redacted>/controllers/clusterhealth/aws.go:19
<redacted>/controllers/clusterhealth.(*ClusterHealthReconciler).Reconcile
	/go/src/<redacted>/controllers/clusterhealth/clusterhealth_controller.go:158
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:121
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:320
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:273
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:234
runtime.goexit
	/usr/local/go/src/runtime/asm_amd64.s:1571
get master interface
<redacted>/controllers/clusterhealth.(*ClusterHealthReconciler).Ec2ReconciliationAWS
	/go/src/<redacted>/controllers/clusterhealth/aws.go:87
<redacted>/controllers/clusterhealth.(*ClusterHealthReconciler).clusterHealthAWS
	/go/src/<redacted>/controllers/clusterhealth/aws.go:19
<redacted>/controllers/clusterhealth.(*ClusterHealthReconciler).Reconcile
	/go/src/<redacted>/controllers/clusterhealth/clusterhealth_controller.go:158
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:121
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:320
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:273
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:234
runtime.goexit
	/usr/local/go/src/runtime/asm_amd64.s:1571
aws ec2 reconciliation
<redacted>/controllers/clusterhealth.(*ClusterHealthReconciler).clusterHealthAWS
	/go/src/<redacted>/controllers/clusterhealth/aws.go:21
<redacted>/controllers/clusterhealth.(*ClusterHealthReconciler).Reconcile
	/go/src/<redacted>/controllers/clusterhealth/clusterhealth_controller.go:158
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Reconcile
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:121
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).reconcileHandler
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:320
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:273
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:234
runtime.goexit
	/usr/local/go/src/runtime/asm_amd64.s:1571","stacktrace":"<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).processNextWorkItem
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:273
<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller.(*Controller).Start.func2.2
	/go/src/<redacted>/vendor/sigs.k8s.io/controller-runtime/pkg/internal/controller/controller.go:234

What did you expect to see?
I would have expected that controller and controllerKind in the log message point to the correct controller (ClusterHealth).
What did you see instead? Under which circumstances?
The log message's fields point to another controller.
Environment
Operator type:

Kubernetes cluster type:
OpenShift 4.10.32 / 4.11.12
$ operator-sdk version
1.22.2
$ go version (if language is Go)
1.18
$ kubectl version
1.24.0
Additional context
The information found in the error log message point to the controller which was last one registered with the SetupWithManager call in main.go - not sure if its important but included it anyway.

Okay so I did some digging by adding two other controllers into the mix  - the controller which is last registered in the manager "wins": We setup our controllers in the operator by using
return ctrl.NewControllerManagedBy(mgr).
  For(<type>).
  Complete(r)

Complete calls Build in sigs.k8s.io/controller-runtime/pkg/builder/controller.go, which calls doController which is finally responsible to setup the logger:
	if ctrlOptions.LogConstructor == nil {
		log = blder.mgr.GetLogger().WithValues(
			"controller", controllerName,
			"controllerGroup", gvk.Group,
			"controllerKind", gvk.Kind,
		)

		lowerCamelCaseKind := strings.ToLower(gvk.Kind[:1]) + gvk.Kind[1:]

		ctrlOptions.LogConstructor = func(req *reconcile.Request) logr.Logger {
			log := log
			if req != nil {
				log = log.WithValues(
					lowerCamelCaseKind, klog.KRef(req.Namespace, req.Name),
					"namespace", req.Namespace, "name", req.Name,
				)
			}
			return log
		}
	}

It always uses the manager objects logger and thus overwrites it each time Complete is called during the controller setup. Anyone knows about a way around this problem?

Taking a look at our sample Go operator under testdata/go/v3/memcached-operator/, in the controller we set up a new logger from the current context every time we reconcile:
https://github.com/operator-framework/operator-sdk/blob/5e5333e7d0d6f448adf2ee740e94358c9aa662a4/testdata/go/v3/memcached-operator/controllers/memcached_controller.go#L83
I'm not entirely sure how controller-runtime handles setting the controller name for a logger or how to customize this when the Reconcile function returns an error, but it seems like with the information you found it seems to be somehow related to controller-runtime's internal handling of this information. It may be best to raise an issue in controller-runtime as the maintainers there may have more knowledge of the internals and be able to answer your question a bit quicker.
I'm still happy to take a look into this and see what I can find, but I may be a bit slower than the controller-runtime maintainers :)

Thank you :-)
Indeed I have observed this when using logf.FromContext, then you will see this happening on every log message related to that controller.
My approach is to implement my own Log Constructor, as controller-runtime does not export any func to use the default object and change it. This is on a per-controller basis so each controller maintains its own log instance now.
For reference, the logger func:
func Logger(req *reconcile.Request) logr.Logger {
	log := logf.Log.WithValues(
		"controller", "Controller Name",
		"controllerGroup", "controller.group.com",
		"controllerKind", "ControllerName",
	)

	lowerCamelCaseKind := "controllerName"

	if req != nil {
		log = log.WithValues(
			lowerCamelCaseKind, klog.KRef(req.Namespace, req.Name),
			"namespace", req.Namespace, "name", req.Name,
		)
	}

	return log
}

And the setup func:
// SetupWithManager sets up the controller with the Manager.
func (r *ControllerNameReconciler) SetupWithManager(mgr ctrl.Manager) error {
	return ctrl.NewControllerManagedBy(mgr).
		WithLogConstructor(Logger).
		For(&mygroupv1.API{}).
		Complete(r)
}

With this in place, each log message has the correct information pointing to its originating controller even in case of an error.

So it looks like this is resolved? Closing this issue, please feel free to reopen if you have any further questions. Also, maybe open an issue in controller-runtime like everettraven said.


Changing the font size?

Discussed in https://github.com/n4ze3m/page-assist/discussions/54

Originally posted by gerroon April 30, 2024
Is it possible to change the font size in the side bar? It is quite large compared to the font sizes in the web sites pages.

A perhaps easy fix would be to link the zoom "style" functionality to buttons - and +. The zoom can be easily changed by running document.body.style.zoom = 0.5 in the console for a 50% zoom out. Of course, buttons would be a proper solution to this.
I can make a PR with this change, if I have some free time.

Sadly, it looks like the zoom "style" functionality is not yet supported by Mozilla Firefox yet. As this extension is available there as well, it will be much more involved to add zoom functionality.
Which is extra sad, because I managed to quickly do a prototype, and it actually works well on Google Chrome 😅...

Given that it just got support (and I updated my local Firefox), I will still make a PR, and it can be decided later whether to be merged.

Typescript type CSSStyleDeclaration doesn't include zoom yet  (left a comment)., but should work now, as I'll put a //@ts-ignore
Also, from my testing, it looks like Ctrl + Scroll Up/Down zooms in/out the side page!

Hey, this is so cool ❤! Btw, you can check which environment the extension is in using import.meta.env.BROWSER. For Chromium-based browsers, it will be 'chrome', and for Firefox, it will be 'firefox'.


ast: Change the implementation of Accept for DefaultExpr

What problem does this PR solve?
This is the part of pull/19709
What is changed and how it works?
This pr will let DefaultExpr not generate ColumnName
Check List
Tests

Unit test

Code changes
Side effects
Related changes

/cc @AilinKid

PTAL @AilinKid

LGTM

/approve


✨ Update self-references for release 0.21.0

Summary
This PR updates the self-references to anticipate release 0.21.0.
Related issue(s)
Fixes #

/cc @ezrasilvera
/cc @pdettori
/cc @clubanderson
/cc @nirrozenbaum
/cc @dumb0002

/lgtm
/approve


Problem with setting system

(using local models via ollama)
I set the system prompt, then it acts like it doesn't see user messages and just repeats what's in the system.
I unset the system prompt, no matter what I write it tries to explain the concept of "system" to me, or offer code assistance.
Software bugs with AI are interesting - it's doing the opposite of what I expect and for some reason it's funny.
has to do with enabling/disabling reference note, so I'm guessing there's a logic problem with the note/system/user conditions

@Madd0g Check your template format.  this may vary per model and if you bake it into the modelfile it may work better from within BMO.  (Does for me)


Update app.js

That already works, and this commit is useless, but anyway)

@Creeplays Thank you, I almost forgot :P


Addresses Unintended Error caused by PR #1624 when user does not specify a logging_conf_file

Revert default config variables to None, rather than empty strings. Don't warn user if Parameter has value of None.

See @alexdebrie 's comment on Pr #1624 post-merge.

Going to stick with warning when Parameter value is None. Closing....


Update datastore

The fraud detection repo changed to use 3 files (train, validate, and test) instead of a single file.
This PR makes sure we include the version of the repo we pull the data from so that it won't be affected by updates.
Another alternative would be to pull the data into this repo to make sure it's always managed as this code needs it.

@HumairAK I can't add people as reviewers so I'll manually tag you instead ;)


Particles still occasionally escape through moving boundaries

On big enough changes of a boundary's position, most particles are pushed along, but some are ignored and get to escape through. The current hypothesis for this is that they aren't caputured in the movement area set by the SDF. If the particle is trying to update it's position into the old position of the boundary, then that will treat it as it would've (the old position of the triangle is not included in the area at the moment), theoretically giving it the wrong position adjustment.
To fix this, we should try including the old triangle in the movement area.

CORRECTION: The SDF check is happening on the original position of the particle. Thus, it doesn't matter where the particle is trying to update its position. Still, the hypothesis is it not being captured in the movement area.

In the end, there were a few reasons these issues were happening:

A bug in the trianglesToLineSegments() function, specifically the segDistance() function where a particle on one of the two edges of the segment lane would sometimes be classified as inside, sometimes as outside, the lane. This caused problems with the isInsideSolid() function trying to use the fact that two line segments (at least) always share any "end" we come across.
The line segments provided to the GPUC5 intersection algorithm always came a frame late, which allowed particles not in a movement area to escape. Trying to fix this also revealed to me that when we try to provide a value as a uniform to shader that it doesn't like (e.g. a nested list), then it will ingore that value to keep the last valid value it had. I haven't confirmed this though.
Particles within the boundary margin of wherever the movement area will push its particles to still have the chance to escape (despite (1)) because the intersection algorithm will only stop particles at the boundaryMargin, not those which have already passed it. Thus, I needed to grow the movement areas to include the boundaryMargin, make sure the included area has negative magnitude and opposite direction (like a normal SDF), but that at the frontier it doesn't (we really need to push those particles out). It's also important to make sure that overlapping movement areas don't put their "outside area" on top.

Particles do still in certain cases end up within the boundaryMargin after a movement (big movements that change the scale/translate of the SDF?), which  at thin boundaries can cause the particle to leak. However, the current behaviour is plenty stable enough to be happy with.


tests/manual-multi-node.bash is bitrotting

https://github.com/cilium/cilium/blob/f84120f9b350e1ac0c7e2f31add2c3ecd124b0b9/tests/manual-multi-node.bash#L74
The above, prior to commit 99a130d012d78, was a call to "sleep 5". However, with this commit it was changed to make a call to wait_for_cilium_status which runs on the local host, rather than inside either of the multiple nodes run by this test. It should run that within the cilium nodes instead.
https://github.com/cilium/cilium/blob/f84120f9b350e1ac0c7e2f31add2c3ecd124b0b9/tests/manual-multi-node.bash#L76-L77
The above should refer to the newer version of this policy, perhaps cilium/examples/demo/policy.json ?
With fixes to the above two issues, the IPv6 connectivity check passes; IPv4 requires further work.

We did not update and use this test in a while so it will definitely contain several outdated pieces.

So for the IPv4 lack of connectivity, I traced it through and initially, we'd get something like the below.
------------------------------------------------------------------------------
CPU 01: MARK 0xcfa68250 FROM 62006 DEBUG: 98 bytes Incoming packet from container ifindex 11
Ethernet        {Contents=[..14..] Payload=[..86..] SrcMAC=76:09:b8:da:e9:0f DstMAC=92:64:c6:1b:64:c8 EthernetType=IPv4 Length=0}
IPv4    {Contents=[..20..] Payload=[..64..] Version=4 IHL=5 TOS=0 Length=84 Id=51531 Flags=DF FragOffset=0 TTL=64 Protocol=ICMPv4 Checksum=29618 SrcIP=<IP_ADDRESS> DstIP=<IP_ADDRESS>
Options=[] Padding=[]}
ICMPv4  {Contents=[..8..] Payload=[..56..] TypeCode=EchoRequest Checksum=15355 Id=4096 Seq=795}
CPU 01: MARK 0xcfa68250 FROM 62006 DEBUG: Conntrack lookup 1/2: src=<IP_ADDRESS>:0 dst=<IP_ADDRESS>:2048
CPU 01: MARK 0xcfa68250 FROM 62006 DEBUG: Conntrack lookup 2/2: nexthdr=1 flags=1
CPU 01: MARK 0xcfa68250 FROM 62006 DEBUG: CT entry found lifetime=1558, proxy_port=0 revnat=0
CPU 01: MARK 0xcfa68250 FROM 62006 DEBUG: CT verdict: Established, proxy_port=0 revnat=0
CPU 01: MARK 0xcfa68250 FROM 62006 DEBUG: Going to the stack, policy-skip=1
------------------------------------------------------------------------------
CPU 01: MARK 0xcfa68250 FROM 0 DEBUG: 98 bytes Delivery to ifindex 0
Ethernet        {Contents=[..14..] Payload=[..86..] SrcMAC=76:09:b8:da:e9:0f DstMAC=92:64:c6:1b:64:c8 EthernetType=IPv4 Length=0}
IPv4    {Contents=[..20..] Payload=[..64..] Version=4 IHL=5 TOS=0 Length=84 Id=51531 Flags=DF FragOffset=0 TTL=63 Protocol=ICMPv4 Checksum=29874 SrcIP=<IP_ADDRESS> DstIP=<IP_ADDRESS>
Options=[] Padding=[]}
ICMPv4  {Contents=[..8..] Payload=[..56..] TypeCode=EchoRequest Checksum=15355 Id=4096 Seq=795}
------------------------------------------------------------------------------
CPU 01: MARK 0x19f6f9aa FROM 0 DEBUG: 126 bytes Incoming packet from netdev ifindex 0
Ethernet        {Contents=[..14..] Payload=[..118..] SrcMAC=be:78:14:83:8e:e0 DstMAC=be:78:14:83:8e:e0 EthernetType=IPv4 Length=0}
IPv4    {Contents=[..20..] Payload=[..92..] Version=4 IHL=5 TOS=192 Length=112 Id=59745 Flags= FragOffset=0 TTL=64 Protocol=ICMPv4 Checksum=12257 SrcIP=<IP_ADDRESS> DstIP=<IP_ADDRESS>$
 Options=[] Padding=[]}
ICMPv4  {Contents=[..8..] Payload=[..84..]  Payload=[..118..] SrcMAC=92:64:c6:1b:64:c8 DstMAC=76:09:b8:da:e9:0f EthernetType=IPv4 Length=0}
IPv4    {Contents=[..20..] Payload=[..92..] Version=4 IHL=5 TOS=192 Length=112 Id=59745 Flags= FragOffset=0 TTL=63 Protocol=ICMPv4 Checksum=12513 SrcIP=<IP_ADDRESS> DstIP=<IP_ADDRESS>
 Options=[] Padding=[]}
ICMPv4  {Contents=[..8..] Payload=[..84..] TypeCode=DestinationUnreachable(Host) Checksum=64766 Id=0 Seq=0}

It appears to be passing this traffic to the local stack, which performs the route lookup, finds the route <IP_ADDRESS>/16 which is via <IP_ADDRESS>; then the local stack starts trying to resolve <IP_ADDRESS>. However, this IP is configured nowhere, so is unreachable. After a while, the stack comes back and returns some ICMP DestinationUnreachable messages. These come back into the BPF, but we can't actually correlate these ICMP responses with the original ping, so Cilium policy drops it. I wonder though whether we should actually be able to figure out that these are responses to the original ping and send them up to the endpoint.
Also, the above seems to be assuming that connectivity to that subnet is provided directly through the underlay, like it would be for IPv6. I'm not sure whether those routes should even really exist on IPv4 though.
In this setup, we expect that cilium-master and cilium-node-2 nodes should be connected via vxlan. It appears that for some reason, this connectivity is not set up correctly. Here's the tunnel_endpoint_map as configured by default in this script, which appears to have a tunnel entry for how to get to the localhost:
root@cilium-node-2:~/go/src/github.com/cilium/cilium# bpf-map d /sys/fs/bpf/tc/globals/tunnel_endpoint_map
Key:
00000000  0a 0c 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000010  01 00 00 00                                       |....|
Value:
00000000  0a 00 02 0f 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000010  01 00 00 00                                       |....|

Key:
00000000  fd 02 00 00 00 00 00 00  c0 a8 21 0c 00 00 00 00  |..........!.....|
00000010  02 00 00 00                                       |....|
Value:
00000000  0a 00 02 0f 00 00 00 00  00 00 00 00 00 00 00 00  |................|
00000010  01 00 00 00                                       |....|

Specifically, we have the route <IP_ADDRESS>/16 via <IP_ADDRESS>. This covers access to local containers.
If we manually add an entry on each node to properly tunnel, for example, <IP_ADDRESS>/16 via <IP_ADDRESS> on cilium-node-2 and <IP_ADDRESS>/16 via <IP_ADDRESS> on cilium-master, then the test starts working:
root@cilium-node-2:~/go/src/github.com/cilium/cilium# bpf-map u /sys/fs/bpf/tc/globals/tunnel_endpoint_map "0a0b000000000000000000000000000001000000" "c0a8210b00000000000000000000000001000000"
Updated

root@cilium-master:~/go/src/github.com/cilium/cilium# bpf-map u /sys/fs/bpf/tc/globals/tunnel_endpoint_map "0a0c000000000000000000000000000001000000" "c0a8210c00000000000000000000000001000000"
Updated

vagrant@cilium-node-2:~/go/src/github.com/cilium/cilium$ docker exec -i client ping 10.1
1.116.202
PING <IP_ADDRESS> (<IP_ADDRESS>): 56 data bytes
64 bytes from <IP_ADDRESS>: seq=0 ttl=63 time=0.582 ms
64 bytes from <IP_ADDRESS>: seq=1 ttl=63 time=3.021 ms
^C

Is this what you were describing in issue #1392 ?

We ran this test back when the multi node vagrant box automatically assigned these IPs and setup the routes. I don't think we should be setting up these routes in the agent. The native routing mode is meant to be run in an environment where Linux has been configured to route the pod/container IPs.
I think we should simply delete this test for now.
This is not directly related to #1392.

Test was removed, closing the issue.


ARTEMIS-4161 Implementing Memory Leak tests and fixing a few initial small leaks found

There are test failures...

More generally, there are plenty of non-test code changes, they seem like they should be the focus of the JIRA now rather than the tests.


GPU out of memory，have some way to reduce the requirement

Thank for your job,
I GPU memory just 6g.
At 1000 or 2000 iter，ManiFold upsampled the faces,would report 'RuntimeError:CUDA out of memory'
in the past,I will adjust the batchsize when have this problems,but in your code seems to be no it.In the paper used 1080Ti and 2080Ti have 11g GPUmemory and in 6 part DISCUSSION said ' our method is quite expensive in terms of time and memory'.
So,There is no way to run this code used 6g memory？I don't care the runtime.

If you are running out of memory, you can increase the # of parts here https://github.com/ranahanocka/point2mesh/blob/c56d89b993efc625c6e8c74040f974bdfe0d5127/options.py#L70
and the resolution per part is defined here:
https://github.com/ranahanocka/point2mesh/blob/c56d89b993efc625c6e8c74040f974bdfe0d5127/options.py#L28
where right now under 8000 faces is 1 part, under 16000 is 2 parts, and so on.
So for example, I think lookup_num_parts = [1, 4, 8, 16] might work. If not, you can also lower the 8000 threshold.

Hi Rana, I also ran in to the memory problem and I tried to use two GPUs in parallel in order to solve this problem but ran into some trouble. I tried to use nn.Dataparallel in line 425 of networks.py to put "net" into parallel GPUs. But that doesn't work and will report an error. Any advice?

Thanks very much.I run programs on the CPU and get final result.If I have to use GPU, I will try the method you provide.
Thank you again for your outstanding work.

Hi @HeCraneChen --
It should be possible to put the network on two GPUs in parallel  -- but you should also split up the mesh into the # of GPUs as well. For example, if you had 2 GPUs you can split the mesh in two parts, and run it in parallel.


chore(deps): update dependency html-webpack-plugin to v4.4.0

This PR contains the following updates:

Package
Type
Update
Change

html-webpack-plugin
devDependencies
minor
4.0.4 -> 4.4.0

Release Notes

jantimon/html-webpack-plugin
v4.4.0
Compare Source
Bug Fixes

fix typos in comments (#1484) (6b0711e)

Features

added v5 compilation support and deleted depreciation warnings (4ae7be8), closes #1454

v4.3.0
Compare Source
Bug Fixes

fix typos in comments (#1484) (6b0711e)

Features

added v5 compilation support and deleted depreciation warnings (4ae7be8), closes #1454

v4.2.2
Compare Source
Features

Allow to use console.log inside templates (c3f2fdc)

4.2.2 (2020-04-30)
Bug Fixes

Prevent "cannot read property info of undefined" when reading meta information from assets (253ce30)
use modern icon tag rel attribute for favicons (c40dd85)

4.2.1 (2020-04-28)
Bug Fixes

don't add dependencies twice to the webpack 5 watcher api (ceafe14)
prevent scripts marked as hotModuleReplacement from being added to the html file (119252a)

v4.2.1
Compare Source
Bug Fixes

Prevent "cannot read property info of undefined" when reading meta information from assets (253ce30)
use modern icon tag rel attribute for favicons (c40dd85)

v4.2.0
Compare Source
Features

Add template content (#1401) (4740bf7)

v4.1.0
Compare Source
Features

Add template content (#1401) (4740bf7)

Renovate configuration
:date: Schedule: At any time (no schedule defined).
:vertical_traffic_light: Automerge: Disabled by config. Please merge this manually once you are satisfied.
:recycle: Rebasing: Whenever PR becomes conflicted, or if you modify the PR title to begin with "rebase!".
:no_bell: Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

Available now for Enterprise: Renovate Pro with real-time webhook handling and priority job queue.

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

v5.2.5
GitHub release

Your semantic-release bot :package::rocket:


cant send data more than 128 bytes

I am running the latest version = yes
I checked the documentation and found no answer = yes
I checked to make sure that this issue has not already been filed = yes

hi,i want to send an 232 byte string to a rasberry pi ,project is react native(0.59.5) and created by react-native init.
in android every thing is fine but in ios the sent data is not complete.

Library version: 1.0.3
Platform: iOS.
Platform logs : XCODE

this.manager = new BleManager(); //in constractor
send_order(value){
        this.manager.writeCharacteristicWithoutResponseForDevice(
            this.props.item.id,
            res.values.Service_uuid,
            res.values.Char_uuid,
            encode(value)
        )
    }

EDIT: now i try to send 140 byte and that was ok,but 141 loss last byte

Did you set the MTU?
device.connect({ requestMTU: 256 })

yes i do,in last try in ios : device.connect({ requestMTU: 256 }) but received mtu is always 185,data that more than 185 byte does not sent at all

same issue i cannot send long bytes
https://github.com/Polidea/react-native-ble-plx/issues/653


Restrict check to specific input for get_argument.

The get_argument(index) checks for all inputs. I am facing an instance where the validation of Sum node[1] is being done for both inputs (output and reduction_axes) while my guess is it should be restircted only to reduction_axes.  I have put more context of the problem in ngraph slack.
[1]
Sum(const Output& arg, const AxisSet& reduction_axes)

This function does in fact work correctly and does exactly what it is defined to do. The user wants to find out which Node is producing the requested input, it is not defined to return the output port of that node, just return the Node. This is a very useful function and should not be deprecated. It is a helper function. I use it when I want to print out the name of the node supplying an input.
The current error check is wrong. It is a bug. The only error check that belongs in there is if the requested index is within the range of inputs and currently that is handled with at(index)
We should not deprecate this function.
If you are going to deprecate it then at least fix the bug until you remove it.

Replace by #3721


mix phoenix.gen.html controller test fails on id input

I have controller tests were generated as part of executing the following command:
mix phoenix.gen.html

This creates a number of files, of course, one being a controller and controller test. When running these tests without any alteration, I received several errors, one of which was the following:
$ mix test test/controllers/car_controller_test.exs
test/controllers/car_controller_test.exs:4: warning: unused alias Car

  1) test renders page not found when id is nonexistent (Shrek.CarControllerTest)
     test/controllers/car_controller_test.exs:40
     expected response status to be 404, but got 500 from:

     ** (FunctionClauseError) no function clause matching in Mongo.Ecto.ObjectID.dump/1

     stacktrace:
       (mongodb_ecto) lib/mongo_ecto/objectid.ex:25: Mongo.Ecto.ObjectID.dump("11111111-1111-1111-1111-111111111111")
       (elixir) lib/enum.ex:1473: Enum."-reduce/3-lists^foldl/2-0-"/3
       (elixir) lib/enum.ex:1151: Enum."-map_reduce/3-lists^mapfoldl/2-0-"/3
       (ecto) lib/ecto/repo/queryable.ex:91: Ecto.Repo.Queryable.execute/5
       (ecto) lib/ecto/repo/queryable.ex:15: Ecto.Repo.Queryable.all/4
       (ecto) lib/ecto/repo/queryable.ex:55: Ecto.Repo.Queryable.one!/4
       (shrek) web/controllers/car_controller.ex:32: Shrek.CarController.show/2
       (shrek) web/controllers/car_controller.ex:1: Shrek.CarController.action/2
       (shrek) web/controllers/car_controller.ex:1: Shrek.CarController.phoenix_controller_pipeline/2
       (shrek) lib/phoenix/router.ex:261: Shrek.Router.dispatch/2
       (shrek) web/router.ex:1: Shrek.Router.do_call/2

Here's the source code of this test:
  test "renders page not found when id is nonexistent", %{conn: conn} do
    assert_error_sent 404, fn ->
      get conn, car_path(conn, :show, "11111111-1111-1111-1111-111111111111")
    end
  end

It would appear that the test is choking on the string input, and the structure of the object ID. I'm not sure what would be the conclusion here, whether there is a bug in the generator, or in the declaration of the model. Here is the model (with the @primary_key added):
defmodule Shrek.Car do
  use Shrek.Web, :model

  @primary_key {:id, :binary_id, autogenerate: true}
  schema "cars" do
    field :year, :integer
    field :make, :string
    field :model, :string

    timestamps
  end

  @required_fields ~w(year make model)
  @optional_fields ~w()

  @doc """
  Creates a changeset based on the `model` and `params`.

  If no params are provided, an invalid changeset is returned
  with no validation performed.
  """
  def changeset(model, params \\ :empty) do
    model
    |> cast(params, @required_fields, @optional_fields)
  end
end

If anyone can help me get past this error, that would be great. I'm not exactly sure what the root nature of the problem is, but given that the generated model / test are failing, it is a bug of some kind. I'm sure the resolution in the interim is probably to change the input value, so if someone can help me rectify this, I would be greatly appreciative. Thanks.

Fixed in https://github.com/phoenixframework/phoenix/pull/1469

@michalmuskala  I'm not seeing any change of behavior on the phoenix master or v1.1.3 per the issue mentioned above. I'm getting the exact same test error on controller tests generated using mix phoenix.gen.html as before using the master. The pull request referenced seems to change the output of the generator to include test data for binary ID's of "11111111-1111-1111-1111-111111111111". That seems to work fine, as I see that sample data in my controller tests. But the problem is in the handling of it. I receive this error when I run the test:
 1) test renders page not found when id is nonexistent (Shrek.CarControllerTest)
     test/controllers/car_controller_test.exs:35
     expected response status to be 404, but got 500 from:

     ** (FunctionClauseError) no function clause matching in Mongo.Ecto.ObjectID.dump/1

     stacktrace:
       (mongodb_ecto) lib/mongo_ecto/objectid.ex:25: Mongo.Ecto.ObjectID.dump("11111111-1111-1111-1111-111111111111")
       (elixir) lib/enum.ex:1473: Enum."-reduce/3-lists^foldl/2-0-"/3
       (elixir) lib/enum.ex:1151: Enum."-map_reduce/3-lists^mapfoldl/2-0-"/3
       (ecto) lib/ecto/repo/queryable.ex:91: Ecto.Repo.Queryable.execute/5
       (ecto) lib/ecto/repo/queryable.ex:15: Ecto.Repo.Queryable.all/4
       (ecto) lib/ecto/repo/queryable.ex:55: Ecto.Repo.Queryable.one!/4
       (shrek) web/controllers/car_controller.ex:32: Shrek.CarController.show/2
       (shrek) web/controllers/car_controller.ex:1: Shrek.CarController.action/2
       (shrek) web/controllers/car_controller.ex:1: Shrek.CarController.phoenix_controller_pipeline/2
       (shrek) lib/phoenix/router.ex:261: Shrek.Router.dispatch/2
       (shrek) web/router.ex:1: Shrek.Router.do_call/2

If you have any insight into this and can advise, I'd appreciate it. Thx.

Ah, you're right. The fix in phoenix was for generating a UUID, but here we need an ObjectId. Unfortunately it's not easily possible to know what is needed when the generator is running because we don't have access to the Ecto adapter. Only the adapter knows the format of binary_id.

@michalmuskala I thought I was going crazy...relieved to know what I'm seeing is legit. I'm fine with making a manual fix to get my tests working. I'm guessing changing the test data will rectify the test for the interim:
test "renders page not found when id is nonexistent", %{conn: conn} do
    assert_error_sent 404, fn ->
      get conn, car_path(conn, :show, "11111111-1111-1111-1111-111111111111")
    end
  end

What is an acceptable value for the ID or test rewrite that will work?
Second question -- in live usage, that string ID will be incoming off the URL -- shouldn't it be able to handle an invalid ID string of any format, and return a 404 error? I'm a little unclear why we shouldn't be able to send in an ID of "this_is_a_junk_id" without it blowing up. What happens if a junk ID comes in off a URL?

I can confirm that changing this line in the aforementioned test:
get conn, car_path(conn, :show, "11111111-1111-1111-1111-111111111111")

to this:
      get conn, port_path(conn, :show, "56a537b63e0eee155869a051")

succeeds. Still shouldn't have to do that though. I think this issue ought to be reopened, here, or in phoenix, or both.


Pascal case formatted log parameter names

#1087

Can you use a tool and tell me if ConnectionId clashes with the Kestrel ConnectionId

Tomorrow, sure

Presuming ConnectionId doesn't clash or you rename it if it does: LGTM

Yep. I think it does. Last time I used Seq I believe there was ConnectionId from Kestrel and connectionId from SignalR.

Renaming to SocketsConnectionId


Namespace race condition

Hi! Running into a namespace race condition
[2021-04-09T19:49:32Z] Error: create: failed to create: namespaces "cluster-autoscaler" not found
--
  | [2021-04-09T19:49:32Z]
  | [2021-04-09T19:49:32Z]   on .terraform/modules/eks.cluster_autoscaler/main.tf line 3, in resource "helm_release" "cluster_autoscaler":
  | [2021-04-09T19:49:32Z]    3: resource "helm_release" "cluster_autoscaler" {

Follow up run completes fine

Perhaps test out using https://registry.terraform.io/providers/hashicorp/helm/latest/docs/resources/release#create_namespace instead of the k8s resource namespace creation.

Hi, thanks for pointing this out. Another solution would be to create a dependency between the k8s_namaspace resource and the helm release. That way we would ensure the namespace is finished creating before the helm release starts deploying.
Could you make a PR?

Closing this issues because it was Implemented in #7


Swipe events not always triggered (with possible fix)

If you pause before releasing a card near the edge, the card will swipe out, but won't run your onSwipeLeft() or onSwipeRight() function.
You can verify this by watching the console on any demo page.
(I previously thought I'd fixed it, but I was wrong. Problem seems to be that transitionOut() fires if the card's dropped beyond the threshold, but the onSwipe events don't.)

Changing the if at line 148 to fire events works, but fires the event twice on a fluid swipe (once on a drag-pause-drop). If it's possible to create custom events, e.g. onTdLeft and onTdRight, I presume that would solve it.
  if(this.x > 0) {
      targetX = (this.parentWidth / 2) + (this.width);
  this.onSwipeRight();
  } else {
      targetX = - (this.parentWidth + this.width);
  this.onSwipeLeft();
  }

You might try onTransitionLeft and onTransitionRight to see if that gives you the behavior you are wanting.

Solved! It does, thank you.
I suggest the demo html be updated to use on-transition-left/right, I can't imagine anybody would want to register swipes-but-not-drags, especially since it all looks the same to the end-user.
Thanks again :)

I will gladly approve a PR if you are willing to make that change.  You might consider changing the code in the readme.md while you are at it.


Broken link at endpoints-support.md

The link: HPE OneView REST API Documentation is broken at endpoints-support page

@Baykonur - Thanks for pointing out this. We will update this to http://h17007.www1.hpe.com/docs/enterprise/servers/oneview4.1/cicf-api/en/index.html#

Updated this in this PR: https://github.com/HewlettPackard/oneview-golang/pull/179


Obfucated ip should be based on the ip instead of random

Based on the RFC 7239

A generated identifier may be used where there is a wish to keep the
internal IP addresses secret, while still allowing the "Forwarded"
header field to be used for tracing and debugging.

obfuscated identifiers SHOULD be randomly generated for each request

Oh my bad. So how can it be used for tracing and debugging if it's per request? Should there be a specific log in RequestHeaderForwardedTransform which states what obfuscated node is being sent instead of ip?

The per-request header value would at least be stable for the duration of that request and all downstream requests. I'd be very careful about adding a log that associated the obfuscated value with the real one, that's choice better left to the developer.

I see. Thanks for your explanation.


add Volcengine Ark model integration via volcengine-java-sdk-ark-v3

Issue

https://github.com/langchain4j/langchain4j/issues/1237
Change

add Volcengine Ark model integration, It support Doubao-lite-4k、Doubao-pro-32k、Doubao-pro-4k、Doubao-lite-32k、Doubao-lite-128k、Doubao-pro-128k、Doubao-embedding、Llama3-8B、Llama3-70B、Moonshot-v1-8k、Moonshot-v1-32k、Moonshot-v1-128k、GLM3-130B、GLM3-130B金融模型、Mistral-7B
General checklist

[ ] There are no breaking changes
[ ] I have added unit and integration tests for my change
[X] I have manually run all the unit and integration tests in the module I have added/changed, and they are all green
[ ] I have manually run all the unit and integration tests in the core and main modules, and they are all green

[X] I have added/updated the documentation
[ ] I have added an example in the examples repo (only for "big" features)
[ ] I have added/updated Spring Boot starter(s) (if applicable)

Checklist for adding new model integration

[X] I have added my new module in the BOM

Checklist for adding new embedding store integration

[ ] I have added a {NameOfIntegration}EmbeddingStoreIT that extends from either EmbeddingStoreIT or EmbeddingStoreWithFilteringIT
[ ] I have added my new module in the BOM

Checklist for changing existing embedding store integration

[ ] I have manually verified that the {NameOfIntegration}EmbeddingStore works correctly with the data persisted using the latest released version of LangChain4j

@langchain4j please check this pr, This is my first PR and I may not fully understand the contribution specification. There may be some problem, please let me know and I will correct them.

Hi @noday thank you! I will review this PR, but can't promise it will be this week

Will this PR progress continue to advance?

@igerdy can you help with the review please?

@langchain4j   Sure, but I'm not quite sure about the audit standards and flow.

@igerdy there is a contributiong guide which should help. But even a basic review would be great, thank you!

@noday The version number of volcengine java sdk ark runtime should be maintained within the ark module.

@igerdy already maintained within the ark module.

Before using the toolExecutionRequests variable in the toArkMessage function of ArkHelper.class, it is necessary to check if it is empty
PS: You can refer to Qwen, as this issue has also occurred before.
I made a last-minute correction in the #89d826994049c29750b4bd9b1cbb248e7d08f68b  submission

@igerdy 你是指AiMessage里的toolExecutionRequests会是null吗？从单元测试上看倒是没遇到过。但如果你遇到过，可以增加判断。我马上提交。

Yes, you can give it a try.

@igerdy @langchain4j any other suggest for this PR.

@igerdy could you please review this PR? 🙏

blockingForEach in the code is blocking and subscribe should be used instead

It seems that Volcengine Ark API is the same or compatible with OpenAI API (for which we already have langchain4j-open-ai module). Could you please check if langchain4j-open-ai module can be used to connect to Volcengine Ark?

The document said  OpenAI API/SDK can be used to call the Volcano Ark LLM/Agen. but Ark SDK support more parameters and auth type, So it maybe useful in same time.

I merge the suggestions except lombok. I don't have time recently, so lombok and igerdy suggest will in a few days later

blockingForEach in the code is blocking and subscribe should be used instead
The suggestions are merged except lombok. I don't have more time right now, so it will be modify when necessary.

Thank you for your PR!
Please re-open it in the https://github.com/langchain4j/langchain4j-community repository.
cc @Martin7-1


Yet another voxelization fix for IBL shadows

Okay, I'm still running into cases where the voxelization never happens because the required textures aren't ready when the callback occurs.
To make this more robust, I'm allowing the call to happen as many times as it takes before everything is ready and then rendering the voxel grid and then unbinding.

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/15825/merge
Test environment:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15825/merge/index.html
To test a playground add it to the URL, for example:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15825/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/15825/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/15825/merge
https://gui.babylonjs.com/?snapshot=refs/pull/15825/merge
https://nme.babylonjs.com/?snapshot=refs/pull/15825/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/15825/merge#BCU1XR#0

Visualization tests for WebGPU (Experimental)
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15825/merge/testResults/webgpuplaywright/index.html

WebGL2 visualization test reporter:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15825/merge/testResults/webgl2playwright/index.html


ooo ooo ooo! XD

just excited by this, is all XD

Love that you're excited! We're hoping to release an alpha in the next week or two, stay tuned 📻


I get 401 using JIRA_API_TOKEN

I'm on jira 1.0.15 and this seems related to #148.
$ cat $HOME/.jira.d/config.yml
endpoint: https://mycompany.atlassian.net

$ jira ls -u me
usage: jira list []
alias: jira ls []
Prints list of issues for given search criteria
Global flags:
--help
------------8<------------ (snip)
ERROR Invalid Usage: JSON Parse Error: invalid character '<' looking for beginning of value from "\n\n\n\n\n\n\n\n\n\n\n\n\n    Unauthorized (401)</title....

Perhaps you need to set a specific login to work with your api token?
https://github.com/Netflix-Skunkworks/go-jira/#user-vs-login

Oh yes that was it thanks.


Extended query pipeline to execute multiple independent queries in a single batch

This PR adds support for pipelined query execution  that uses extended query protocol to run multiple independent queries and finishes the pipeline with Sync message.
When there is no explicit transaction the pipelined queries run within an implicit transaction. In case of CockroachDB the transaction could be automatically retried on conflict as long as the database server is able to fully buffer the response data.
This image illustrates the pipelined execution but only for a single query. The implemented pipeline prepares all batched queries outside of the implicit transaction.

The implementation could be extended with

ExecutePgPipeline trait, implemented for transaction, connection and pool instances
FetchPgPipeline trait, implemented for transaction and connection

I decided not to use traits with async methods. Instead I've implemented:

execute_pipeline for PgPool and PgConnection
fetch_pipeline for PgConnection

Do you have benchmarks showing if pipelining produces a tangible improvement? I'm not convinced it's worth the extra complexity.

@abonander , I don't understand what kind of complexity do you mean?
I think pipelining doesn't need explicit 'BEGIN TRANSACTION' and 'COMMIT' statements as long as responses could be fully buffered (at least it's true for running a few INSERTs of related records atomically). So in my perspective pipelining actually a simpler approach since less Postgres protocol commands is needed.
I assume cumulative query processing time for multiple single queries and a single pipeline is equal. What about communication overhead?
Pipelining depends on a single roundtrip to database for N queries in pipeline.
Running multiple queries in explicit transaction requires N + 2 round trips (1 'BEGIN TRANSACTION' roundtrip, N roundtrips for batched bind+execute+sync for each query, 1 'COMMIT' round trip). The speed of light (lower RTT bound) is finite so N + 2 round trips will take longer than a single round trip.
What about transaction retries on SERIALIZABLE transaction isolation level?
In pipeline case the database server could buffer responses. If they fit in the buffer it could postpone responses till the end of pipeline. In case of conflict it could automatically retry pipeline without involving the client. This is how CockroachDB behaves and I mainly interested to work with this DBMS.
In case of conversation-like approach with explicit transaction and queries issued one by one the transaction is longer then in the pipeline case. Longer transaction will have higher conflict probability on contention and will require retries more often. If a client received a response for the first query in transaction the database server couldn't retry transaction automatically. Client side retries would require more round trips - N for each full retry.
Does it convince you? If not I could prepare a benchmark for happy case without retries. I'll use existing docker-compose based configuration. With local network between client and db containers the pipeline approach will have less improvement (if there is any) than with real network with two nodes and network devices between them.

Consider that you can get most of the benefits of pipelining by adjusting your query structure.
With Common Table Expressions (CTEs), you can execute multiple statements at once in the same round trip, which act as if they were independently executed, but can reference each others' outputs:
WITH inserted_foos AS (
    INSERT INTO foo(bar_id, baz) SELECT * FROM UNNEST($1::int8[], $2::text[])
    RETURNING *
), updated_bars AS (
    -- Side-effecting queries don't need to produce a result, they will still be executed
    UPDATE bar SET foo_id = foo.id FROM inserted_foos WHERE bar.id = foo.bar_id
)
-- This query cannot actually see the changes in the `foo` table itself as it's executed against the same snapshot.
SELECT * FROM inserted_foos

If you're selecting two independent records, you can use a single query with a lateral or full outer join:
SELECT foo.*, bar.*
FROM foo
FULL JOIN bar ON bar_id = $2
WHERE foo_id = $1

If you're doing multiple, large, independent queries you're going to get better throughput from using multiple connections.
The only situation that uniquely benefits from pipelining is executing multiple independent, medium-sized (>1 row but short enough that the backend is finished before the next request arrives) queries all at once, which doesn't really come up a lot in practice.

I'll illustrate my use case.
There are User and Organization entities linked via UserOrgLink.
My service provides the following API for User operations:

create User. Optionally it's possible to link User to the given Organization after the User is created.
link User. Just link existing User to existing Organization.

I implemented these operations in modular way. There are following API structures and methods:

User::insert - it runs a simple INSERT against Users table.
LinkUserTo::insert - it runs a simple INSERT against UserOrgLinks table
MaybeLinkedUser::insert - it calls User::insert and optionally (depending on maybe_linked_user.link attribute which is Option<LinkUserTo>) calls `LinkUserTo::insert.

With pipelining I could keep this modular structure and simple queries. I could reuse simple operations in multiple contexts. I could fully express the needed control flow, can depend on parameters or state that is outside of the database.
I think Common Table Expressions is a really good option in case of dependent queries that are independent from the state outside of the database.
Regarding your example with large queries. If it's required to run them in the same transaction to get data from the single snapshot then multiple connections is not an option.
Personally I'm not interested in the large queries case. I've mentioned in the MR that the result set is relatively small. I work with CockroachDB and expect it under 16KiB.

You can use a CTE for your use-case like so:
WITH inserted_user AS (
    INSERT INTO Users(username, password_hash)
    VALUES ($1, $2)
    RETURNING USER_ID
)
INSERT INTO UserOrgLinks(org_id, user_id)
SELECT $3, user_id
FROM inserted_user

@abonander I generate ids client side (UUIDv7).
The pipeline also contains a query that is not relevant to the User entity directly but saves the state needed for background processing by separate application worker. The processing is done outside of the API request handler.
With CTE approach I have to copy INSERTs for each scenario (in my case - for link present and link absent).
This will result

in monolitic code - User insert logic have to include the INSERT that saves additional request state
and duplicated pieces of sql - INSERT INTO Users is placed into both "link present" CTE and "link absent" CTE. More changes will be required for SQL statements when new columns are added.

In my opinion, query pipeline is a different tool that could be used instead of complex queries with CTE. Users could choose a preferable tool for each case.

If you want to keep the queries separate then there's nothing stopping you. Pipelining is just an optimization, which again I'm not entirely convinced is necessary, nor worth the tradeoff of extra cognitive load on the user (having to think about "can these queries be pipelined? If they are pipelined what happens when one of the queries errors? What order should they execute in to maintain data consistency?" etc). I'd really rather see benchmarks showing that it can produce a tangible improvement before moving forward.
And we haven't even talked about the API design in this PR, which I'm honestly not really that impressed with. There's not really any consideration given to how the user is supposed to handle queries that return data as all the results are combined into a single stream, which, yeah, that's how Executor::fetch_many() works too but that's not really designed for general use, it's the core primitive that other methods are built on.
So while I'm not giving a hard "no" to the idea of pipelining, I'm going to close this PR because the above reasons and because I don't have the energy to continue debating, sorry. I'd recommend joining the existing discussion in #408, which I've guessing you haven't seen since you didn't mention it at all. If you still want to work on those benchmarks I'd love to see your results there.
And if you're really dead-set on needing a SQL client that implements pipelining, tokio-postgres has it.

@abonander , my current needs with multiple related INSERTs and client side generated ids are fully covered by pipeline.execute(). I'll try to find some time to prepare benchmark for this method.
I agree that fetch_pipeline method is not friendly for beginner users - stream processing definitely requires some cognitive load and familiarity with combinator methods.

@abonander I generalized the transaction pipeline discussion for both explicit and implicit pipelines - https://github.com/launchbadge/sqlx/issues/2082.
The idea is to protect application developers from dealing with concurrency issues and working with stale data. As a bonus the approach also includes collapsing queries into implicit pipelines that optimizes the number of communication rounds with database and unlocks the benefit of server-side autoretry mechanism in single implicit transaction case.

@abonander , I've rebased my branch and added 'Close' command to the pipeline implementation.
Then added pg_pipeline benchmark that runs 3 INSERT queries using pipeline and issuing them one by one.
The benchmark uses pipeline.execute() method.
I've got the following results (MacBook Pro 2019, local Postgres 14 in container, Docker Desktop with default hypervisor):
bench_pipeline/user_post_comment_3
                        time:   [2.6775 ms 2.8063 ms 2.9559 ms]
                        change: [+0.0675% +5.5617% +11.665%] (p = 0.07 > 0.05)
                        No change in performance detected.
Found 12 outliers among 100 measurements (12.00%)
  3 (3.00%) high mild
  9 (9.00%) high severe

bench_multiple_inserts/user_post_comment_3
                        time:   [4.5276 ms 4.6382 ms 4.7709 ms]
                        change: [-7.1142% -3.1412% +1.0713%] (p = 0.15 > 0.05)
                        No change in performance detected.
Found 5 outliers among 100 measurements (5.00%)
  5 (5.00%) high severe

Pipelined version completes in about ~60.5% of time spent by the one query at a time approach.

Hey FWIW we'd also really like to see this feature. We're doing really performance-sensitive DB operations, and we're adding in some use of the outbox table pattern, where you insert and delete a record from a table in the same transaction and capture it with CDC.
As a result, an operation that used to look like:

insert some record into the DB

Now looks like:

begin txn
insert some record in to the DB
insert outbox record into outbox table
delete outbox record from the outbox table
commit txn

There's no way we can do this using a CTE, b/c you can't start a transaction as part of a CTE, and you also can't modify the same row twice in a CTE, so doing something like with ins as (insert ...) delete from some_table using ins where some_table.id = ins.id doesn't work.
Even assuming a super optimistic network hop to the DB of 500 us, that increases the time for this operation to 2.5 ms. We can optimize a bit by putting the delete into a background thread, but at minimum the record insert and the outbox table insert have to occur within the same transaction, and we of course also need to begin and commit the transaction.
We can definitely add in an entirely separate DB driver and connection pool and use tokio-postgres to accomplish this, but it would be great to use our existing sqlx queries for model insertion and so on. I played around a fair bit with trying to get something working with sqlx::Executor::execute_many() for this, but I can't get that to work at all in postgres whatsoever, and it seems to be totally undocumented.

So it would be nice to either see pipelining implemented in some fashion, or execute_many() made to be workable, or otherwise any way of executing n queries without paying the cost of n network round trips

So it would be nice to either see pipelining implemented in some fashion, or execute_many() made to be workable, or otherwise any way of executing n queries without paying the cost of n network round trips

+1 for this feature