Switch to version Dagger 0.18.11

BEGINRELEASENOTES

Switched to version 0.18.11
Added relevant examples and documentation
Small fixes

ENDRELEASENOTES

Should we try to merge it now or wait for https://github.com/JuliaParallel/Dagger.jl/pull/531?
If we do it now we'll get gantt plott but spoil execution graph from logs, right?

It contains a modified version (with fixes) of GraphVizSimpleExt, which is used by default, so everything works as of 0.18.11.

I see, the GraphVizSimpleExt has all the changes from https://github.com/JuliaParallel/Dagger.jl/pull/531 so we can drop it later once the fix gets into dagger

Running graphs_scheduling/src/main.jl gives the following error once all the processors are done:
ERROR: LoadError: KeyError: key 68 not found
Stacktrace:
  [1] getindex
    @ ./dict.jl:498 [inlined]
  [2] _proc_color(ctx::@NamedTuple{proc_to_color::Dict{Dagger.Processor, String}, proc_colors::Vector{RGB{FixedPointNumbers.N0f8}}, proc_color_idx::Base.RefValue{Int64}, proc_to_shape::Dict{Type, String}, proc_shapes::Tuple{String, String, String}, proc_shape_idx::Base.RefValue{Int64}, id_to_proc::Dict{Int64, Dagger.Processor}}, id::Int64)
    @ Main.ModGraphVizSimpleExt ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:176
  [3] write_edge(io::IOStream, ts_move::TimespanLogging.Timespan, logs::Vector{TimespanLogging.Timespan}, ctx::@NamedTuple{proc_to_color::Dict{Dagger.Processor, String}, proc_colors::Vector{RGB{FixedPointNumbers.N0f8}}, proc_color_idx::Base.RefValue{Int64}, proc_to_shape::Dict{Type, String}, proc_shapes::Tuple{String, String, String}, proc_shape_idx::Base.RefValue{Int64}, id_to_proc::Dict{Int64, Dagger.Processor}}, inputname::String, inputarg::RemoteChannel{Channel{Int64}})
    @ Main.ModGraphVizSimpleExt ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:235
  [4] write_dag(io::IOStream, logs::Vector{TimespanLogging.Timespan}, t::Nothing)
    @ Main.ModGraphVizSimpleExt ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:323
  [5] write_dag
    @ ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:260 [inlined]
  [6] _show_plan
    @ ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:353 [inlined]
  [7] show_logs
    @ ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:369 [inlined]
  [8] show_logs(io::IOStream, logs::Vector{TimespanLogging.Timespan}, vizmode::Symbol; options::@Kwargs{})
    @ Main.ModGraphVizSimpleExt ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:363
  [9] show_logs
    @ ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:363 [inlined]
 [10] #17
    @ ~/fwk2/graphs_scheduling/src/main.jl:92 [inlined]
 [11] open(::var"#17#18"{Vector{TimespanLogging.Timespan}}, ::String, ::Vararg{String}; kwargs::@Kwargs{})
    @ Base ./io.jl:396
 [12] open(::Function, ::String, ::String)
    @ Base ./io.jl:393
 [13] main(graphs_map::Dict{String, String})
    @ Main ~/fwk2/graphs_scheduling/src/main.jl:91
 [14] top-level scope
    @ ~/fwk2/graphs_scheduling/src/main.jl:106
in expression starting at /home/mafila/fwk2/graphs_scheduling/src/main.jl:106
┌ Warning: Worker 5 died, rescheduling work
└ @ Dagger.Sch ~/.julia/packages/Dagger/kBlIi/src/sch/Sch.jl:545
┌ Error: Error assigning workers
│   exception =
│    ProcessExitedException(5)
│    Stacktrace:
│     [1] worker_from_id(pg::Distributed.ProcessGroup, i::Int64)
│       @ Distributed ~/.julia/juliaup/julia-1.10.4+0.x64.linux.gnu/share/julia/stdlib/v1.10/Distributed/src/cluster.jl:1093
│     [2] worker_from_id
│       @ ~/.julia/juliaup/julia-1.10.4+0.x64.linux.gnu/share/julia/stdlib/v1.10/Distributed/src/cluster.jl:1090 [inlined]
│     [3] remote_do
│       @ ~/.julia/juliaup/julia-1.10.4+0.x64.linux.gnu/share/julia/stdlib/v1.10/Distributed/src/remotecall.jl:557 [inlined]
│     [4] cleanup_proc(state::Dagger.Sch.ComputeState, p::OSProc, log_sink::TimespanLogging.LocalEventLog)
│       @ Dagger.Sch ~/.julia/packages/Dagger/kBlIi/src/sch/Sch.jl:408
│     [5] monitor_procs_changed!(ctx::Context, state::Dagger.Sch.ComputeState)
│       @ Dagger.Sch ~/.julia/packages/Dagger/kBlIi/src/sch/Sch.jl:890
│     [6] (::Dagger.Sch.var"#100#102"{Context, Dagger.Sch.ComputeState})()
│       @ Dagger.Sch ~/.julia/packages/Dagger/kBlIi/src/sch/Sch.jl:508
└ @ Dagger.Sch ~/.julia/packages/Dagger/kBlIi/src/sch/Sch.jl:510

Then it reports a series a warnings about workers dying and rescheduling - but it's a known problem

Running graphs_scheduling/src/main.jl gives the following error once all the processors are done:
ERROR: LoadError: KeyError: key 68 not found
Stacktrace:
  [1] getindex
    @ ./dict.jl:498 [inlined]
  [2] _proc_color(ctx::@NamedTuple{proc_to_color::Dict{Dagger.Processor, String}, proc_colors::Vector{RGB{FixedPointNumbers.N0f8}}, proc_color_idx::Base.RefValue{Int64}, proc_to_shape::Dict{Type, String}, proc_shapes::Tuple{String, String, String}, proc_shape_idx::Base.RefValue{Int64}, id_to_proc::Dict{Int64, Dagger.Processor}}, id::Int64)
    @ Main.ModGraphVizSimpleExt ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:176
  [3] write_edge(io::IOStream, ts_move::TimespanLogging.Timespan, logs::Vector{TimespanLogging.Timespan}, ctx::@NamedTuple{proc_to_color::Dict{Dagger.Processor, String}, proc_colors::Vector{RGB{FixedPointNumbers.N0f8}}, proc_color_idx::Base.RefValue{Int64}, proc_to_shape::Dict{Type, String}, proc_shapes::Tuple{String, String, String}, proc_shape_idx::Base.RefValue{Int64}, id_to_proc::Dict{Int64, Dagger.Processor}}, inputname::String, inputarg::RemoteChannel{Channel{Int64}})
    @ Main.ModGraphVizSimpleExt ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:235
  [4] write_dag(io::IOStream, logs::Vector{TimespanLogging.Timespan}, t::Nothing)
    @ Main.ModGraphVizSimpleExt ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:323
  [5] write_dag
    @ ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:260 [inlined]
  [6] _show_plan
    @ ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:353 [inlined]
  [7] show_logs
    @ ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:369 [inlined]
  [8] show_logs(io::IOStream, logs::Vector{TimespanLogging.Timespan}, vizmode::Symbol; options::@Kwargs{})
    @ Main.ModGraphVizSimpleExt ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:363
  [9] show_logs
    @ ~/fwk2/dagger_exts/GraphVizSimpleExt.jl:363 [inlined]
 [10] #17
    @ ~/fwk2/graphs_scheduling/src/main.jl:92 [inlined]
 [11] open(::var"#17#18"{Vector{TimespanLogging.Timespan}}, ::String, ::Vararg{String}; kwargs::@Kwargs{})
    @ Base ./io.jl:396
 [12] open(::Function, ::String, ::String)
    @ Base ./io.jl:393
 [13] main(graphs_map::Dict{String, String})
    @ Main ~/fwk2/graphs_scheduling/src/main.jl:91
 [14] top-level scope
    @ ~/fwk2/graphs_scheduling/src/main.jl:106
in expression starting at /home/mafila/fwk2/graphs_scheduling/src/main.jl:106

Then it reports a series a warnings about workers dying and rescheduling - but it's a known problem

That is a bug I mentioned recently. The error is thrown when the logs are plotted before all the nodes finish computations, and it happens most of the time. I am currently working on fixing this problem.

That is a bug I mentioned recently. The error is thrown when the logs are plotted before all the nodes finish computations, and it happens most of the time. I am currently working on fixing this problem.

I think I found the culprit
The problem appears because the logs are fetched before all the tasks are finished. For regular tasks their results are fetched when plotting individual graphs, but we never wait for the completion of the extra tasks that sends notifications. We could get the tasks for that extra node which also happens to be the last node in a graph and wait for their completion

Oh, sorry, I did know the exact problem source, just did not describe it much, as was already working on the fix. It started to look too cluttered and hard to read for me, so I added some wrappers etc, consequently, it took a bit more time than expected) Besides, it should be easier to track which tasks are being run and which were already done by now. Moreover, now graphs are parsed one at a time.
However, if it is simpler to stay with the old style of code, I can commit your changes

I think I'd rather take the version before adding AbstractMetaTask end the others. Refactoring of scheduling graph pipeline should go to a different PR where we could focus solely on it

OK, I will try to revert these changes

OK, I will try to revert these changes

I have a different proposal. Let's freeze this as is and I'll cherry pick the relevant commits to a new PR with a clean history and no conflicts

OK, I will try to revert these changes

I have a different proposal. Let's freeze this as is and I'll cherry pick the relevant commits to a new PR with a clean history and no conflicts

Oh, sorry, I've seen this too late
I have created a separate branch for scheduling pipeline refactoring and reverted these changes here to the state of 8a52e6d

OK, I will try to revert these changes

I have a different proposal. Let's freeze this as is and I'll cherry pick the relevant commits to a new PR with a clean history and no conflicts

Oh, sorry, I've seen this too late I have created a separate branch for scheduling pipeline refactoring and reverted these changes here to the state of 8a52e6d

Now I can apply your suggestions on silencing the workers and a bug fix. But will wait for the response this time :)

No problem. Please take a look at #7 and comment if anything is missing or I messed up something :sweat_smile:

No problem. Please take a look at #11 and comment if anything is missing or I messed up something 😅

Looks like everything is fine there


azure auth error missing jwks_uri

PDA version
0.4.0
Python version
3.0
Steps to Reproduce

Configure login via azure
get error because metadata is missing jwks_uri

Expected Behavior
get logged in ;)
Observed Behavior
server error 500
[2023-04-06 12:00:00,518] [app.py:1449] ERROR - Exception on /azure/authorized [GET]
Traceback (most recent call last):
File "/usr/lib/python3.10/site-packages/flask/app.py", line 2073, in wsgi_app
response = self.full_dispatch_request()
File "/usr/lib/python3.10/site-packages/flask/app.py", line 1519, in full_dispatch_request
rv = self.handle_user_exception(e)
File "/usr/lib/python3.10/site-packages/flask/app.py", line 1517, in full_dispatch_request
rv = self.dispatch_request()
File "/usr/lib/python3.10/site-packages/flask/app.py", line 1503, in dispatch_request
return self.ensure_sync(self.view_functions[rule.endpoint])(**req.view_args)
File "/app/powerdnsadmin/services/azure.py", line 35, in azure_authorized
token = azure.authorize_access_token()
File "/usr/lib/python3.10/site-packages/authlib/integrations/flask_client/apps.py", line 105, in authorize_access_token
userinfo = self.parse_id_token(token, nonce=state_data['nonce'], claims_options=claims_options)
File "/usr/lib/python3.10/site-packages/authlib/integrations/base_client/sync_openid.py", line 66, in parse_id_token
claims = _jwt.decode(
File "/usr/lib/python3.10/site-packages/authlib/jose/rfc7519/jwt.py", line 96, in decode
data = self._jws.deserialize_compact(s, load_key, decode_payload)
File "/usr/lib/python3.10/site-packages/authlib/jose/rfc7515/jws.py", line 101, in deserialize_compact
algorithm, key = self._prepare_algorithm_key(jws_header, payload, key)
File "/usr/lib/python3.10/site-packages/authlib/jose/rfc7515/jws.py", line 254, in _prepare_algorithm_key
key = key(header, payload)
File "/usr/lib/python3.10/site-packages/authlib/integrations/base_client/sync_openid.py", line 38, in load_key
jwk_set = JsonWebKey.import_key_set(self.fetch_jwk_set())
File "/usr/lib/python3.10/site-packages/authlib/integrations/base_client/sync_openid.py", line 14, in fetch_jwk_set
raise RuntimeError('Missing "jwks_uri" in metadata')
RuntimeError: Missing "jwks_uri" in metadata

@chriss-de did you read the contribution guidelines before submitting this?


supporting COMPOSE_FILE environment variable

fixing https://github.com/containerd/nerdctl/issues/853
Signed-off-by: fahed dorgaa<EMAIL_ADDRESS>

=== RUN   TestComposeConfigWithMultipleFile
    compose_config_test.go:112: assertion failed: error is not nil: expected "hello1\nhello2\n", got "hello2\nhello1\n": hello2
        hello1

--- FAIL: TestComposeConfigWithMultipleFile (2.57s)

I did split tests because of https://github.com/compose-spec/compose-go/issues/235

Cc @AkihiroSuda  can we merge this ?


Join Waitlist opens a New Tab everytime

Describe the bug
After clicking the join waitlist button, the Website is getting opened everytime in a new tab.
https://github.com/keyval-dev/odigos/assets/114233864/359f6202-4e8b-4b12-a151-9b83bdfd6452
To Reproduce
go to https://odigos.io/waitlist
Then Click on Join Waitlist of Navbar
Desktop (please complete the following information):

OS: Windows 11
Browser Google Chrome
Version 118.0.5993.89 (Official Build) (64-bit)

Additional context
Please assign me the issue I would love to fix it @edeNFed

Please assign me the issue I would love to fix it @edeNFed

Bro I saw the Issue and Told @edeNFed to Assign it to me. If I will be unable to do it then you should Ask Why You're not giving a chance to your Junior 🥲

Please assign me the issue I would love to fix it @edeNFed

See at the end of the issue

thanks @myselfprincee, this is the expected behavior


GCE hostpath issue

Running a job results in the error message:
Error response from daemon: mkdir /pach-job-data: read-only file system

This was fixed by #1368


Error: [string -unknown location]:?: Call failed. (simCallScriptFunctionEx on isRunning@HTC_VIVE) (Trinus)

Hello Boris,
I'm using the phone with Trinus(an app let mobile phone become VR headset) to simulate the HTC VIVE.
Everything works well until I run the example scene 'hello vr world'
Steam VR is stuck in running vrepVIVE and V-REP prints out
 Error: [string -unknown location]:?: Call failed. (simCallScriptFunctionEx on isRunning@HTC_VIVE)
What can I do to fix it?
Thank you!
Kind regards
Lily

Originally posted by @lyl1999923 in https://github.com/BorisBogaerts/CoppeliaSim-VR-Toolbox/issues/1#issuecomment-679000805

Hi Lily,
This error does not tell me much about the actual problem, so could you please provide more details. Did you perform all installation steps? Did you already start the simulation? Which version of the toolbox do you use with what version of coppeliaSim? Can you confirm that the file HTC_VIVE.lua is in the folder C:\Program Files\CoppeliaRobotics\CoppeliaSimEdu (or in the location where coppeliaSim is installed on your system).
Kind regards,
Boris

I follow the installation video on Youtube ,and already start the simulation.(run steam VR>>run vrepVive.exe>>run vrep scene)
I am using the CoppeliaSim VR Toolbox 2.2 and V-REP PRO EDU V3.6.2.(Maybe the version 3.5 could perform well,I will try it later)
And at the coppeliaSim installed location I find HTV_VIVE.lua there.
Thank you for your reply!

Could you please share what is printed in the vrepVive.exe shell, this will help me determine in which stage of the loading the error occurs.

vrepVIVE output.txt
Here is the output of the vrepVive.exe shell.
Thank you very much!

That looks like it should be working. Is there a file called debug.log in the VR interface installation directory?

No. I can't find the debug file in the VR interface installation directory,neither the Vrep installation directory.
Maybe the problem is about the device I use,I will try another one later.
Thank you !

It seems like there isn't a problem with the interface. However the interface makes use of VTK which in turn makes use of openVR. It seems like something is going wrong there.


docs: Fix examples path

Checklist:

[x] Either (a) I've created an enhancement proposal and discussed it with the community, (b) this is a bug fix, or (c) this is a chore.
[x] The title of the PR is (a) conventional, (b) states what changed, and (c) suffixes the related issues number. E.g. "fix(controller): Updates such and such. Fixes #1234".
[x] I've signed the CLA.
[ ] I have written unit and/or e2e tests for my change. PRs without these are unlikely to be merged.
[ ] My builds are green. Try syncing with master if they are not.
[ ] My organization is added to USERS.md.

These files are auto-generated by make docs.

I'll fix this in another PR.

Thank you for spotting.


Question on the relation between cutoff_len and max_position_embeddings

Reminder

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

System Info
N/A
Reproduction
Hi, I'm trying to use llama3 to do sft. I have a question on the cutoff_len and max_position_embeddings. If i don't use "linear" or "dynamic" scaling, then the cutoff_len only influence the dataloader and will not influence the model's max_position_embeddings(still use the model's config.json's specified configuration). Is this correct?
Expected behavior
No response
Others
No response

Yeah, cutoff_len means the maximum length of input data. But the model's max_position_embeddings means the pretraining context length of the model.


Supply a default SVG where the image is missing?

Next step for #306: it's a lot better to supply a fallback SVG file for devices that don't have one than bail out completely. Adding SVGs is the last thing to do when adding a device because it's just spit and polish, not a requirement for functionality.
So the main question here is: how do we supply the default SVG? Just send across the fallback SVG file and don't tell anyone? Or send an empty SVG and provide some extra query for the fallback file?
I'm tempted to go for the first option, it makes clients a lot easier.

If you can transparently handle this in libratbag or ratbagd then that is probably the easiest. It prevents having to do error checking and requesting the default SVG in all clients.

The main issue is that always supplying a fallback svg means we prevent the ability for any error checking in the clients. But I'm willing to defer that need until we do.

Fixed in https://github.com/libratbag/libratbag/pull/306.


Varanny won't start on Windows 11

I have installed both VaraHF and VaraFM. Additionally, I have installed hamlib-w64-4.5.5. I updated the Varanny json as shown below:
{
"Port": 8273,
"Modems" : [
{
"Name": "IC705FM",
"Type": "fm",
"Cmd": "C:\VARA-FM\VARAFM.exe",
"Config": "C:\VARA-FM\VARAFM.ic705.ini",
"Port": 8300
},
{
"Name": "IC705HF",
"Type": "hf",
"Cmd": "C:\VARA\VARA.exe",
"Port": 8400,
"CatCtrl": {
"Port": 4532,
"Dialect": "hamlib",
"Cmd": "C:\Program Files\hamlib-w64-4.5.5\bin\rigctld.exe",
"Args": "-m 3055 -r com5"
}
}
]
}
I am using an ICOM 705 connected over USB Com5. When I run Varanny I get the following error and have not been able to determine the cause:
C:\Users\david\Downloads\varanny-windows-amd64>varanny.exe
2023/11/29 15:37:42 Loading configuration from C:\Users\david\Downloads\varanny-windows-amd64\varanny.json
2023/11/29 15:37:42 invalid character 'V' in string escape code
I have looked through the json and could not find an error. What am I doing wrong?
Thanks.
David
KX8U

\ are considered escape characters in the .json file. To represent a \ in a windows like path, it needs to be doubled up, so that C:\VARA\VARA.exe should be written C:\\VARA\\VARA.exe
Additionally, the model number for the IC705 is 3085, unless you've changed CIV configuration.


top view resize isn't working in draggable panel

Hello, I'm trying to implement draggable panel in an activity, in which user can select a video to play from list view. Video will be initialized in maximized view. Everything is working as expected, till this part. As soon as the user minimize the top view of the panel, video player dimensions doesn't change. I've tried using top_view_resize attribute, but no effect. How can I use draggable view's top_view_resize attribute in the draggable panel?

@SarthakJoshi review other issues open in this repository. Depending on the video view you are implementing the library is going to resize it or not. There are some Android SDK APIs which doesn't support resize. Sorry I'm closing this issue because it's duplicated.


How to disable Insights on a virtual machine

Information from this Wiki: https://learn.microsoft.com/en-us/azure/azure-monitor/vm/vminsights-optout
We have enabled insights for some VM's, but now we find we don't require this anymore.  We want to disable the insights.  When we talked about, we thought would be straight forward and there would be a disable insights, but this is not the case.  I compared agents running on a machine with Insights installed, and one without and they are the same.  I compared extensions in portal,
VM's with Insights installed and Insights not installed both have: LinuxAgent.AzureSecurityCenter
There is NO NO NO MicrosoftMonitoringAgent installed on the machines under extensions and applications I only see this in extensions.  There is nothing in VM Applications.
bootstrap_script
DependencyAgentLinux
enablevmaccess
LinuxAgent.AzureSecurityCenter
OMSExtension
There is nothing in the above URL that properly defines how to disable Insights on select VM's.

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

ID: 883a8ca1-9350-187e-fac6-da44aae71bb3
Version Independent ID: e7aef7b2-1bd9-260c-9d02-8dc3af5e4c75
Content: Disable monitoring in VM insights - Azure Monitor
Content Source: articles/azure-monitor/vm/vminsights-optout.md
Service: azure-monitor
Sub-service: virtual-machines
GitHub Login: @guywi-ms
Microsoft Alias: guywild

@da53728-BRONGA
Thanks for your feedback! We will investigate and update as appropriate.

I think for now we can disregard this request.  We have a mix of the legacy Log Analytics and the newer Azure Monitor Agent spread across multiple machines.  For the ones with Azure Monitor Agent we do see AzureMonitorLinuxAgent ( but not MicrosoftMonitoringAgent ).  We will remove AzureMonitorLinuxAgent and still research how to properly remove the legacy Log Analytics agent

@da53728-BRONGA Thanks for your feedback! There's a good chance the extension you want to remove is the OMSExtension extension. Although it is called OmsAgentForLinux by default, someone might have renamed when the extension when it was deployed.  We are closing this issue for now, but feel free to comment here as necessary. #please-close


Create an option to both accounts unfollow each other withouth blocking them.

Is your feature request related to a problem? Please describe.
I noticed the some random accounts of adult content is follow my account and I would not like to have them follow me (OK those ones I can block), but sometimes I no longer interested in someones content and I don't think also that person should be following me, but I don't want to block them.
Describe the solution you'd like

We could do it in different ways like: blocking and unblocking both accounts don't follow each other.
A drop down button: "Make both ways unfollow"

Describe alternatives you've considered
It is anoying because the only way is blocking the account for now.
Additional context
Our account is like our home we should be more in control to also decide who should or not follow us.

Duplicate of https://github.com/bluesky-social/social-app/issues/1160


Feature Request: CustomAMI per SlurmQueue.ComputeResource

Our team has multiple queues with mixed InstanceTypes and InstanceSize and we're trying to switch from startup scripts to CustomAMIs.  The problem we're running into is that AMIs are specific to a combination of InstanceType and InstanceSize, making it seemingly impossible to apply CustomAMIs to mixed queues.
Is it possible to apply a CustomAMI per ComputeResource?

Hi jkirsch-LF,
currently is not possible but I will add these as a feature request.
However can you share more about your use case since usually the AMI does not depend on the InstanceSize.
I do not know if it is applicable to your case but as a workaround you can: install everything in a single AMI and then use it in all the queue or install the common software by queue.

You are correct that AMIs usually do not depend on Instance Size, however, the pcluster build-image config file does require an InstanceType+InstanceSize combination be provided.
https://github.com/aws/aws-parallelcluster/blob/release-3.0/cli/tests/pcluster/schemas/test_imagebuilder_schema/test_imagebuilder_schema/imagebuilder_schema_dev.yaml#L18
Even if size was removed, we have queues consisting of different p instance types and another queue of g instance types for different work. Applying a pcluster baked AMI per compute resource would be helpful in this scenario.
We can certainly make our own AMI using traditional methods, but it’s a pretty cumbersome process.

Hi @jkirsch-LF instance-type passed at build-image time doesn't impact the AMI you're going to create.
I mean, you can create the AMI using a t2.medium but in the cluster you can use the same AMI to instantiate a c5n.18xlarge or the instance type you prefer.
The instance-type you're passing to the build-image command is just specifying the instance used to create the AMI, a larger instance will speed up AMI creation process, but it doesn't have other impacts other than this. The same is true for the size.
Let us know if it helps.


build errors  while building tag_mesh

hi @ncasaril
i am trying to build tag_mesh tapp,i am getting following build errors.

Error: repos/apache-mynewt-nimble/nimble/host/src/ble_sm.c: In function 'ble_sm_key_exch_exec':
repos/apache-mynewt-nimble/nimble/host/src/ble_sm.c:2054:30: error: taking address of packed member of 'struct ble_sm_master_id' may result in an unaligned pointer value [-Werror=address-of-packed-member]
 2054 |         rc = ble_sm_gen_ediv(&master_id->ediv);
      |                              ^~~~~~~~~~~~~~~~
repos/apache-mynewt-nimble/nimble/host/src/ble_sm.c:2059:40: error: taking address of packed member of 'struct ble_sm_master_id' may result in an unaligned pointer value [-Werror=address-of-packed-member]
 2059 |         rc = ble_sm_gen_master_id_rand(&master_id->rand_val);
      |                                        ^~~~~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors

can you please help me solving this issue.
thanks
manoj

Hi Manoj,
It looks like this is a problem in nimble rather than in mynewt-dw1000-core / apps.
Can you have a look at what version of mynewt and nimble you're using. I.e. run newt info.
You should be using the versions supported in repository.yml. That is, the compatible versions should be installed if you run:
newt upgrade

Kind regards,
Niklas

hi Niklas,
already i done  newt upgrade but still i am facing same issue.```
newt info:
Apache Newt 1.8.0 / ab96a8a / 2020-03-18_18:42
Repository info:
* apache-mynewt-core: e311e78e59e71aae72679b76baea8fd9e2aa18e8, 1.5.0
* apache-mynewt-mcumgr: 40341abeeac9c93b4aa59c20ee183376c7920d7e
* apache-mynewt-nimble: a85b65d97ecd062d8ea88c1a151f649e35e47420, 1.0.0
* mcuboot: 377307de7dd0330dda289293cb26978b660a4f95, (dirty: local changes)
* mynewt-dw1000-apps (project): b2768e3b18417849be385bb1d422a3eb8c58cc61
* mynewt-dw1000-core: d6b1414f1b4527abda7521a304baa1c648244108, 0.0.0
* mynewt-timescale-lib: 948eab9c5fdd8edfa53aa12f0dd7aada6e379c83, 1.0.1
thanks
manoj


Port to 8.x: SO-5591: Description acceptability updater changes

Closing in favor of https://github.com/b2ihealthcare/snow-owl/pull/1143


code crunch issue

Hi, is there an issue with code crunch i upload my files for the discrete event simulator and i got an E and i want to view the details but it is not allowing me to do so as it keeps loading. May i know why this is the case?

Hello this happens to me as well. I think it is because the project has alot of files being uploaded, and so it takes some time to load. Just wait abit longer or try again a few minutes later

Just need to wait a little longer, it takes some time to load.

Code crunch sometimes takes a while to load. I had a similar issue where I wasn't able to view the details or submit the code. Maybe you could check if your search browser is updated to the latest version. In addition, sometimes code crunch has their issues, just gotta be patient

Happens to me too especially closer to the deadlines, probably because more people uploading at that time. Just have to wait longer for it to load

keep refreshing and wait for a bit, can't help it

Did you manage to submit it, @JosiahPraeman?
If so, great! You can close your issues to help keep the forum clean.
Thank you!


Docker Needs Love

Go through Dockerfile and docker-compose.yml and correct/test.
Ex composition/config is here: https://github.com/Mainflux/depricated-mainflux.
We need Emqttd docker (plus config) working also here.

Automated build of Mainflux repo: https://hub.docker.com/r/mainflux/mainflux/

@nmarcetic started looking at this one, so assigned to him also.

All of this works now


[2.6] App upgrade uses wrong repository when same name chart is available in multiple repos

Rancher Server Setup

Rancher version: 2.6.0
Installation option (Docker install/Helm Chart): Helm Chart

If Helm Chart, Kubernetes Cluster and version (RKE1, RKE2, k3s, EKS, etc): RKE1

Proxy/Cert Details: No proxy, Cloudflare certificate

Information about the Cluster

Kubernetes version: v1.20.4
Cluster Type (Local/Downstream): Downstream

If downstream, what type of cluster? (Custom/Imported or specify provider for Hosted/Infrastructure Provider): vSphere

Describe the bug

I deployed minio today using the UI and I wanted to change the configuration, and the app started giving undefined annotations errors. I then realised from the developer options network tab that the UI is trying to fetch the chart from the wrong repo. The version that was deployed was not available in the other repo and so now I cannot upgrade the app.
To Reproduce

Add https://charts.bitnami.com/bitnami and https://helm.min.io/ to the chart repos
Using the chart in the minio repo, deploy the minion app with default settings
Try to upgrade, the UI will throw errors in YAML even if no changes are made

Result
The UI does not let me upgrade the app
Expected Result

The chart should use the repo via which it was deployed instead of using the first repo it finds itself in
Screenshots

Additional context
<!--Add any other context about the problem here.—>

@abhi1693 i've transferred the issue to the repo responsible for UI.
Would you be able to expand on UI will throw errors in YAML? what is the error and where is it?
We have the ability at the moment to manually select the repo and chart if the chart for the app cannot be found. For a quick fix i think we should ..

Make it clearer which repo, chart and version will be installed when the user clicks update on an existing app
Allow the user to override / change the repo, chart and version which the UI finds
This would be a nice 'catch all' scenario which covers other issues.

An expanded solution would be to record the helm repo url and chart name as an annotation on the helm app resource. The UI would then pick that by default when going to the update wizard.

Linking an issue where we incorrectly connect an existing app with a chart repo - https://github.com/rancher/dashboard/issues/9613


Draft: [Python base SDK] Absolute imports should be made internal

Description

Related issue https://linear.app/serverless/issue/SC-1200/issue-with-some-imports-in-python-sdk-initialization#comment-f0d95f19
The absolute imports by our layer are arranged to be made internal and not visible to customer code. This will ensure our imports are not overwritten by customer code, for instance if customer has a "secrets" module we can still import the standard library "secrets" module and not customer's module.
We should not import the sdk itself internally though, otherwise the customer's version would be different and we'd have two instances of the sdk hanging around
Relative imports are not affected, as they point precisely to our layer code.
This is a breaking change

Testing done

Unit tested
Integration/performance tested, against a modified serverless-aws-lambda-sdk module (because of breaking changes), to make sure the approach is sound

Next

We should release a breaking version of base SDK
Same fixes to be applied on the serverless-aws-lambda-sdk package
Unit tests and integration tests on serverless-aws-lambda-sdk should be enhanced to cover the module name clashes such as "secrets" and some more ("typing", "contextlib" etc.)
New version of the serverless-aws-lambda-sdk package to be released

@medikoo this is also ready for review, but we should first release https://github.com/serverless/console/pull/813 if we want to get the other fix out first. I've marked the PR as draft to leave the decision to you.
If you decide to release the two fixes for the two bugs at once, then this should be merged first and then we should update https://github.com/serverless/console/pull/813 to make it a breaking change and move on.

Yes, ready to merge 👍 Breaking change is the way we isolate imports, when the layer sdk is still importing old way, this will cause some modules to be imported twice. Also there is a dropped parameter so the code won't compile either in the layer sdk if it uses this new version of base sdk.


DMPRoadmap/roadmap#562

TODO refactoring of guidances and notes.
-edit phases using plan navigation layout
-bootstrap plan progress. bootstrap sections header. added togglable section icons for expand/collapse
-answers_controller returning a JSON with partial views rendered. Split question types in different partials. Started new answers/status.js
-Rename view to edit_plan_answers.html.erb. Load tinymce through ES6 for question answers. Delete old status.js ES5. Added timeago to vendor
-fixed broken test regarding answers_controller

looks good


[MauiCompat] Add .net6 support

Related to: https://github.com/CommunityToolkit/Maui/issues/23
Could you please also add .net6 target to Xamarin.CommunityToolkit.MauiCompat?

@brminnick @VladislavAntonyuk Hi, 1.3.0-compat-alpha3 still doesn't target .net6.0.
Could you reopen this please?


Does not support Array.prototype.includes

flowtry-demo
// remove this function and there will be no errors
function fooBad(bar: "baz" | "qux" | "quux" | "quuz") {
  return ["baz", "qux"].includes(bar) ? (  // flow does NOT understand
    {
      baz: 1,
      qux: 2,
    }[bar]
  ) : (
    {
      quux: 3,
      quuz: 4,
    }[bar]
  )
}

function fooGood(bar: "baz" | "qux" | "quux" | "quuz") {
  return bar === "baz" || bar === "qux" ? (  // flow understands just fine
    {
      baz: 1,
      qux: 2,
    }[bar]
  ) : (
    {
      quux: 3,
      quuz: 4,
    }[bar]
  )
}

Hmm, I think it’s unlikely this would get implemented. Note that it could only possibly work for array literals with string literals inside. Calling includes on a variable or anything else that does calculation at runtime would prevent us from doing any analysis at type checking time. Since flow can only check static sets of cases anyways, using array includes doesn’t buy you much over the equality checks.

@asolove My only reason for preferring .includes is that I don't have to repeat bar ===. For this posted example, I used a shorter list of unioned literals than my real-world scenario. Is there an alternative that provides the conciseness of using .includes but can be understood by flow?

I don’t think so, sorry. I often break these into multi line if conditions if there are a bunch of them. Do you mind if I close this issue?

It's all good, thanks for the info.


Very good library, is there an RN version?

Hi! By RN I assume you mean React Native, right? I have zero experience with React Native so I'm not sure what this is lacking to work in RN and what needs to be done to make it compatible.
Can you elaborate here on the details (even if obvious for folks with RN experience), or maybe share a link about this topic.
Also, contributions are welcome. I have not used this in a while and I had neglected it since it did not appear to have much of a user base, but I may soon update the dependencies and maybe even port it to TS.

@gnapse
Yes, the ReactNative version. Tree can hardly find a better library in the RN open source community.


Support for AWS's ECR

Amazon Web Service's Elastic Container Registry changes it's authentication token every 12 hrs. So setting REPO_USER & REPO_PASS only work for that long...
I  would like to be able to set AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY & AWS_REGION and then have watchtower regenerate (via AWS's API) the authentication token as needed.
Without this, it doesn't appear possible to use watchtower with ECR.
Thanks!

Also support for IAM Profile should be added so no access or secret key is needed.
👍

FWIW I was able to use watchtower with ECR successfully using the following setup:

Run watchtower with mapping the docker config.json as described under https://github.com/v2tec/watchtower#usage
Have a cron job set up to run every 6 hours that does $(aws ecr get-login --region <whatever>)  or equivalent (in my case I run it as a root user so I'm mapping /root/.docker/config.json above)
The instance has permissions to access the given ECR repo set up in its IAM profile

Why can't you use https://github.com/awslabs/amazon-ecr-credential-helper ??? I used it on my machine (not with watchtower) and it's like ECR = Dockerhub.
Seem like it will work with watchtower.

@gabormay I am trying to do what you said, but I am receiving this error:
time="2018-05-25T15:30:00Z" level=info msg="Unable to update container /app-frontend, err='Error response from daemon: pull access denied for<PHONE_NUMBER>111.dkr.ecr.ap-southeast-1.amazonaws.com/app-frontend, repository does not exist or may require 'docker login''. Proceeding to next."
Do you know what can I do to have the watchover container being able to access to the ECR? Many thanks!!

@vcajes Well, it's likely something wrong with your setup. Can you check the logs of the 'aws ecr get-login' command? Can you run it manually, see if it works? Did you check the repository address and region? Can you pull the image manually?
FWIW in the meanwhile I started using amazon-ecr-credential-helper as suggested by @shadycuz and it works like a charm, maybe give that a try if all else fails.

@gabormay Yes, I can run it manually. The docker pull command works well and the aws login as well.
The only problem seems to be that the watchover container is not able to use the AWS credentials to pull the images. Do I need to pass AWS credentials of something to the watchover?

@vcajes Well, I did everything according to https://github.com/v2tec/watchtower#usage, used the second variant with the config.json mapping and it worked like a charm.

Thank you @gabormay ! I solved the problem and now is working. The problem was that I installed docker as root. Now installed with the ec2-user of the Amazon Linux AMI and working like charm. Thanks!!

@gabormay Hi mate! I see that you have a working solution. Can you provide your config files as example? Looks that I missed something in my settings. I'm trying to avoid 12h re-login from EC2 (amazon linux) vm to ECR instance.

Eventually I was able to make aws helper working, so I can manually do pulls form ECR, but still can't configure watchtower.
docker logs watchtower gives - no basic auth credentials, while manual pull works and ecr log get filled appropriately.   Watchtower initialized by
docker run -d \
  --name watchtower \
  -v /var/run/docker.sock:/var/run/docker.sock \
  v2tec/watchtower

regarding to this

supply registry authentication credentials with the environment variables REPO_USER and REPO_PASS

a bit confused what need to be set there - I use AWS EC2 and ECR.

@GreatEarl I think you are still missing the -v /home/<user>/.docker/config.json:/config.json part.

@gabormay thanks mate, already figured it out ))

if anyone is still having troubles with this, I was able to get watchtower to play nice by:

adding the credential helper to the image myself
adding { "credsStore": "ecr-login" } to /config.json (not included in my image)
exposing my key id and secret key to watchtower by either env vars or the ~/.aws/credentials file

note that I wasn't able to get either of these to work until I made my watchtower-ecr start from alpine instead of from scratch

My final docker-compose.yml:
version: '3.2'
services:
  my-service:
    image: <id>.dkr.ecr.<region>.amazonaws.com/my-image:latest
  watchtower:
    image: andyault/watchtower-ecr:armhf-latest
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - /path/to/docker-config.json:/config.json
      - /path/to/.aws/credentials:/root/.aws/credentials
    command: --interval 30 --debug

If you are on EC2 you don’t need to login for ECR. Just can attach an IAM policy to the EC2 instance and afterwards use ECR without a login:
Add an IAM role with access to ECR: https://docs.aws.amazon.com/AmazonECR/latest/userguide/ecr_managed_policies.html
Attach this new role to your EC2 instance: https://aws.amazon.com/blogs/security/easily-replace-or-attach-an-iam-role-to-an-existing-ec2-instance-by-using-the-ec2-console/

@jakob-stoeck do you have a reference for this?  I'm unable to get this working.  I've given my ec2 instance the AmazonEC2ContainerRegistryPowerUser policy and when I'm on it and try to pull my containers, I get: Error response from daemon: .... no basic auth credentials.

@fantapop To make it work with IAM roles, in addition to the above, you have to mount your AWS credentials file in andyault/watchtower-ecr or create your own image from containrrr/watchtower that includes:

your AWS credentials file
and the ECR credential helper

You can use a separate credentials file that refers to the role you have attached to the EC2 instance.
Example aws-credentials file

NOTE: Change the role arn to match the role that you have attached to the EC2 instance.

[profile EC2-ECR-pull]
role_arn = arn:aws:iam::<account-id>:role/<role_name>
credential_source = Ec2InstanceMetadata

You can mount it this way:
    volumes:
      - /path/to/aws-credentials:/root/.aws/credentials

There is actually a way of doing this, described in the docs, which works with the official image:
https://containrrr.github.io/watchtower/private-registries/#credential_helpers
I'd also like to encourage all future readers to never add credential files to your docker images.


[ZT] mobile WARP client migration

This is significantly better than it originally was, thank you very much all :-)

This is significantly better than it originally was, thank you very much all :-)
I think our MDM migration document still needs quite a bit more details before this is ready, however. At the moment, I feel we're very high-level and hoping for the best, when I think we really need to get into the weeds of the migration.


Problem: passing transaction and accessor around is not trivial

It's (nearly?) impossible to use accessors in scenarios that
fall out of commonly suggested pattern of:
{
  let accessor = txn.access();

  // work with the database
}

txn.commit();

Particularly, if the transaction is done in a few places
across the codebase, passing accessor throughout poses
a challenge.
Solution: implement Drop trait for ConstAccessor so that if it
gets dropped, a new one can be easily obtained.
P.S. I might be missing something. Would my patch violate any of the guarantees? I am still new to Rust. It made my code work so far (I have a specific requirement of being able to pass the accessor around), but haven't done much research. The tests pass.

Thanks for the PR @yrashk!

It's (nearly?) impossible to use accessors in scenarios that fall out of commonly suggested pattern

Would you be able to provide an example so I can better understand? I've generally found that just passing a transaction and accessor reference around together is fairly bearable, like in
struct Context<'a> {
  txn: &'a lmdb::ConstTransaction<'a>,
  access: &'a lmdb::ConstAccessor<'a>,
}

Admittedly it's not the most ergonomic situation, which is something I'd like to improve. Besides the extra typing, you also can't move the transaction after obtaining the accessor.

Would my patch violate any of the guarantees?

Nope. The implementation of child_tx actually does exactly this since it forces dropping the accessor.
The reason for it working the way it does is that I felt that allowing calling access() more than once would make the accessor less obvious as a separate object, and also is a good way for people to shoot themselves in the foot by just going through access() every time.
// NB I haven't tried compiling this

fn print_it(a: &str, b: &str) {
  println!("{}: {}", a, b);
}

// This code works
let a = tx.access().get::<str,str>(&db, "a").unwrap().to_owned();
let b = tx.access().get::<str,str>(&db, "b").unwrap().to_owned();
print_it(&a, &b);

// This code fails to borrow-check because we try to hold on to
// the &str after the temporary accessor goes away.
let a = tx.access().get::<str,str>(&db, "a").unwrap();
let b = tx.access().get::<str,str>(&db, "b").unwrap();
print_it(a, b);

// This code compiles but blows up at runtime, because we try
// to obtain two accessors at once.
print_it(tx.access().get::<str,str>(&db, "a").unwrap(),
         tx.access().get::<str,str>(&db, "b").unwrap());

I've been going back and forth in my head a bit about this though.
Adding Drop on ConstAccessor is a (probably minor) breaking change though, since it changes the lifetime requirement from "outlived by the transaction" to "strictly outlived by the transaction" (Drop Check). For example, the following (contrived) code compiles today but wouldn't after this change:
let (tx, access);
tx = lmdb::ReadTransaction::new(&env);
access = tx.access();

I haven't been able to come up with any realistic cases that would break though.
Perhaps another possibility would be to add a method to the accessor types to explicitly relinquish the accessor:
pub fn release(self) {
  self.0.has_yielded_accessor.set(false);
}

This would solve both problems I outlined above. Not sure how that would work with your use-case though.
Anyway, I'm not totally opposed to this and will think about it some more. If you have any thoughts about the above or information that would make this clearer it would be greatly appreciated!

As can be seen above, I've changed my mind on this and decided that this PR is the best option; it's consistent with RefCell, and the examples make it sufficiently clear what the preferred pattern for using the accessor is.
I've rolled the commit here into https://github.com/AltSysrq/lmdb-zero/pull/7, but I'm going to leave this PR open for the time being so that it gets correctly marked as "merged" rather than "closed" when the other one is merged.

Jason, thank you very much! I am going to try switching to the ergonomics branch now and as time allows, switch to the updated API so I can make passing things around better (hopefully without having to resort to cursor transmutation anymore!)


fewer gateway requests

Currently the info() method will often issue two calls to the gateway to determine the size of an object and if it is a file or directory. It should be possible to find a solution which does this in one go and also with public gateways (local gateway api supports files/stat, but public gateways usually don't).

The async implementation (#10) only uses a single request for info().


Document MySQL < 8 / MariaDB < 10.3 does not support the referential action onDelete: setDefault

Based on https://github.com/prisma/prisma/issues/11498
MySQL < 8 / MariaDB < 10.3 (not 100% sure for that version) does not support the referential action onDelete: setDefault
It errors with Error: Cannot add foreign key constraint.
TODO:

update https://www.prisma.io/docs/concepts/components/prisma-schema/relations/referential-actions with version incompatibility

    I have just found out that `MySQL 8.0` [docs](https://dev.mysql.com/doc/refman/8.0/en/create-table-foreign-keys.html#foreign-key-referential-actions) report the following:

SET DEFAULT: This action is recognized by the MySQL parser, but both InnoDB and NDB reject table definitions containing ON DELETE SET DEFAULT or ON UPDATE SET DEFAULT clauses.

Originally posted by @jkomyno in https://github.com/prisma/prisma/issues/11498#issuecomment-1301793237


Update OG-Core documentation

This PR updates the documentation of OG-Core.

Adds core maintainers section to README.md
Updates the version in intro.md
Removes references to Tax-Calculator model in OG-Core documentation
Fixes broken equations in text and removes broken equations that refer to other documentation
Add demographics.md section without calibration discussion.
Updated the references and citations location of .bib files and .md files

@jdebacker

Codecov Report

Merging #745 (b07045d) into master (1abf952) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #745   +/-   ##
=======================================
  Coverage   84.61%   84.61%
=======================================
  Files          19       19
  Lines        3355     3355
=======================================
  Hits         2839     2839
  Misses        516      516

Flag
Coverage Δ

unittests
84.61% <ø> (ø)

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

Thanks @rickecon!


Setting a long decay (extending the sample) creates sounds slowly.

Perhaps the module could perform some automatic pitch & frequency modulation, as Godot can quite easily slow down a sample to play it longer.
To reproduce:

Create a SfxrStreamPlayer
Set decay_time to 1.0
Click play

The sound on my machine takes quite a while to generate.
However if I raise the frequency of the generated sound, and then use a much shorter delay, I can use the godot built in pitch_scale to slow the sound down to get what I want without any delay.

Create a SfxrStreamPlayer
Set decay_time to 0.2
Set pitch_scale (Default AudioStreamPlayer) to 0.2

You will get a much lower pitched sound that generates very quickly.

Hi @tavurth
I know that longer sounds can take some time to generate in some computers, but I can't do much about that as GDScript can get slow.
On the latest push I changed some things and optimized a bit, so they might be quicker to generate. Also they get stored and can be reused without regenerating or buffering, so that can help as well.
You can use the default pitch scale in Odoo, or custom audio buses, to further alter the generated sound, but that is outside of the scope of this tool and I don't think there would be a problem using them. I'm not sure what you mean with that part.

Oh I also wanted to mention that for the speed part I even re-wrote everything in GDNative C++, but then the delivery/install/support of the plugin gets really complicated and I wanted the tool to be remain simple in that regard.

Yep I'm glad this is GDscript as it keeps things simple, maybe a C# port would work well since Godot natively supports it for crossplatform delivery.
My PR was more about how we could abuse the pitch_scale to reduce the size of the generated sample.
If we always set the pitch_scale to 0.1 then the sample is much much longer than it would be otherwise.
However the frequency is altered to be very low.


horizon: consolidate initializers

This PR improves the readability and removes unnecessary code.
Close #897

Yeah, I think the change is OK but it doesn't improve readability of the code in my opinion. The main problem here is that you have to manually check dependencies of each initializer and call them in correct order. If you do it in an incorrect order you can pass nil instead of a previously created object and it can lead to crashes later.
What would really improve the code is a dependency graph resolver like: facebookgo/inject. Check example in that package godoc but in short: all you need to do is just provide the dependency graph with the instances of the objects (can be incomplete!), then run Populate() and it will automatically assign the objects.
I don't want to block this so 👍 but let's reconsider using facebookgo/inject in a future.

If you do it in an incorrect order you can pass nil instead of a previously created object and it can lead to crashes later.

We can actually just modify the initializers to take extra parameters that they need and make sure those parameters are valid.

What would really improve the code is a dependency graph resolver like: facebookgo/inject.

Good to know there's a thing like this. However, I'm leaning toward to not importing another third party helper library.
Anyways thanks for not blocking on it!

Good to know there's a thing like this. However, I'm leaning toward to not importing another third party helper library.

If a package make our life easier and can prevent some bugs I don't see a reason why not to include this.

Anyways thanks for not blocking it!

👍


LLM request Fail

Hi, im getting this issue about not connecting to chatgpt.

The "Test API Key" shows its valid.
In the pannel i´m using this parameters: Provider: openai (powerd by gpt-4o-mini). Input: Note. Patterns: summarize. Output: First Mesh AI.
In the settings of Mesh AI: only have OpenAI. Default Provider: openai. Custome patterns folder: Custome Patterns. Fabric patterns folder: Fabric Patterns. Mesh output folder: Mesh AI. No workflows. Enable debugging: on.
Mesh AI Version: 1.2.1
Also, i dont see any new folder named "Mesh AI" has an output folder.
In the "puglins" folder i have: "mesh-ai" and "mesh-ai-main", folders.

The setting Mesh Output Folder, does not get created automatically.  The setting being undefined looks like its complaining about a setting not being supplied, Which settings do you not have set?

Hi. The settings that appears when i select the Mesh AI under Community Plugins that i dont have touch are:
Google, Microsoft, Antrophic, Grocq, Ollama (ollama server URL: http://localhost:11434, "No models available"), Openrouter, Use Perplexity: off, Tability APU key, Youtube API key, Workflows: none.
PS: Thanks for your reply

This should be resolved in the latest update. Give it a shot.

Show me a screenshot of your settings, black out the keys.

This is my config, I just input the API for OpenAI and Youtube

Having the same issue with OpenAI, but it works with Groq (by the way it's spelled G R O Q, not G R O C Q).
Seems to work once and then i have to restart Obsidian to be able to use it again.

Are you on the most recent version? And selected your default provider from settings?Sent from my iPhoneOn Oct 7, 2024, at 1:59 PM, pablonaj @.***> wrote:
Having the same issue with OpenAI, but it works with Groq (by the way it's spelled G R O Q, not G R O C Q).
Seems to work once and then i have to restart Obsidian to be able to use it again.
Screenshot.-.2024-10-<IP_ADDRESS>.png (view on web)
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were assigned.Message ID: @.***>

Can you show your settings, and blackout any keys?Sent from my iPhoneOn Oct 15, 2024, at 10:22 AM, Paul Hale @.***> wrote:
image.png (view on web)
Same problem. Have yet to find a model with OpenAI or Groq that works when using pattern extract_wisdom.
—Reply to this email directly, view it on GitHub, or unsubscribe.You are receiving this because you were assigned.Message ID: @.***>


Wrapper layout compressing the output of a delegate (LOG4J2-3023)

As it was explained in https://github.com/apache/logging-log4j2/discussions/2495#discussioncomment-9186368, all JSON-based layouts are deprecated in favor of JSON Template Layout. However the GELF layout has a compressionType option, which is missing from the JTL.
Would be really nice to have, as it can save a nice amount of traffic costs.

I'm kinda interested, but my Java knowledge is very basic and I'm not sure if my help is really useful here :see_no_evil:

I think we should introduce an OutputStream abstraction:
public interface OutputStreamWrapper {

    OutputStream wrap(OutputStream stream);
}

Such an abstraction could solve several issues:

it would allow users to introduce their own compression/decompression algorithms (apache/logging-log4j2#1508),
it would allow us to remove the dependency on commons-compress from Log4j Core,
it would allow users to implement some sort of end-to-end encryption (cf. LOG4J2-1000 and LOG4J2-2930).

I marked LOG4J2-3023 as duplicate of this issue, so we don't need to use JIRA any more.


Several corrections of "Essential". It is a common typo. There should…

… be Essentials instead of Essential - see the details on the website with the pricing: https://www.microsoft.com/en-us/dynamics-365/products/business-central/pricing or the licensing guide: https://www.microsoft.com/content/dam/microsoft/final/en-us/microsoft-brand/documents/Dynamics-365-Licensing-Guide-October-2024-375295.pdf.

#sign-off


Introduce Omniverse kits

Added the ansys.geometry.serviceand ansys.geometry.seviceui kits to the wheel. Note: these will also be redistributed directly via an omniverse branch.

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

Project coverage is 96.43%. Comparing base (7071ba6) to head (deb8659).
Report is 6 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #385      +/-   ##
==========================================
+ Coverage   93.86%   96.43%   +2.57%
==========================================
  Files          18       17       -1
  Lines        2690     2611      -79
  Branches      321      302      -19
==========================================
- Hits         2525     2518       -7
+ Misses        124       49      -75
- Partials       41       44       +3

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


chore(Dependencies) : update zio-logging-slf4j from 0.5.14 to 2.0.1

Updates dev.zio:zio-logging-slf4j from 0.5.14 to 2.0.1.
GitHub Release Notes - Version Diff
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio", artifactId = "zio-logging-slf4j" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "@monthly" },
  dependency = { groupId = "dev.zio", artifactId = "zio-logging-slf4j" }
}]

labels: library-update, early-semver-major, semver-spec-major, commit-count:1

Superseded by #493.


ig.user.getIdByUsername bug

This bug shows on any username:
Promise { pending }
Code:
console.log(ig.user.getIdByUsername("anyusername"));

It's a promise. You'll need to await it.


OCPBUGS-32884: Upgrade go-jose module to 4.0.1

Upgrade go-jose module to 4.0.1

/jira refresh

/override ci/prow/security

/override ci/prow/security

/override ci/prow/security

/retest

/cc

/retitle OCPBUGS-32880: Upgrade go-jose module to 2.6.3

/jira refresh

/retitle OCPBUGS-32884: Upgrade go-jose module to 2.6.3

Verified with cluster-bot build.
AWS cluster with default cco mode i.e. Mint installed successfully.
Regression tested with OCP-36498/34470/48360/50869/64885.

/label cherry-pick-approved


is this can generate a executable file?

cargo run c_file_path

just print some assembly code.

@756445638 Thanks for your interest. Please see here for more information.
https://github.com/utam0k/r9cc/blob/99c50f35bdb84b553635374d2b53343cac3cc62a/Makefile#L6-L13

ok thanks!


Validation errors in tasks with SWITCH type containing JS expressions after upgrading to 3.16.0

Describe the bug
When loading workflow definition with SWITCH type tasks with JS expressions, I get validation error.
Also, when loading workflow definition in task there are no inputParameters, which can lead to erroneous execution of eval()
Object returnValue = ScriptEvaluator.eval(expression, inputParameters);
Details
Conductor version: 3.16.0
Persistence implementation: Redis
Queue implementation: Dynoqueues
Lock: Redis
Task definition: SWITCH
To Reproduce
Сreate a workflow definition with a SWITCH type task with an expression:
function check(){
    var inputResult = $.inputResult;
    var result = "OK";
    if (!inputResult || !inputResult.serviceResult || inputResult.serviceResult.resultType === "ERROR") {
        result = "ERROR";
    }
    if (inputResult.serviceResult.resultCode === "-1001") {
        result = "NOT_FOUND";
}
    return result;
}

check()

Get the logs:
ConstraintViolationImpl{interpolatedMessage='Expression is not well formatted: TypeError: Cannot read property "resultCode" from undefined in  at line number 10, taskType: SWITCH taskName SWITCH_TASK', propertyPath=tasks[12], rootBeanClass=class com.netflix.conductor.common.metadata.workflow.WorkflowDef, messageTemplate='Expression is not well formatted: TypeError: Cannot read property "resultCode" from undefined in  at line number 10, taskType: SWITCH taskName SWITCH_TASK'}
Expected behavior
Before the upgrade, these tasks with expressions worked properly and eval() returned the expected result
Additional context
changes in validation with version upgrade:
https://github.com/Netflix/conductor/pull/3805

Everything was solved by passing to the input only those fields that were required in this expression. But filtering still had to be moved to jsonPath, because validation did not pass on the expression
"expression": "Java.from($.statuses).filter(function (el) { return el.toLowerCase() !== 'ok' }).length > 0"


new: Hue Flourish ceiling light

Just bought a »Hue Flourish« light and added some lines to devices.js to make it work.
(Hope, everything is correct as this is my first PR ever.)

Congratulations with your first merged pr :smile:


Travis-CI not running yet

Currently Travis is pointed to the Travis-CI branch. The tests are stalled at 68% for some reason.

Moved topobank to new repos resulting from splitting the PyCo repo. Trying Travis again..
Currently it's stuck at this test: topobank/users/tests/test_prevent_url_guessing.py::test_sharing_profile
Is this related to using the fixture client for a Django client?

The next test
def test_initial_surface(live_server, client, django_user_model, handle_usage_statistics)

is using the live_server fixture. It's probably related to that.

Replaced live_server with mark that the test should use transactions. Still blocking. Trying now reordering tests with a plugin for pytest: https://github.com/rlucioni/pytest-django-ordering

The main reason for blocking was a ".delay" call for a celery task. This could be easily solved by mocking.


Further updates to weather selection/config

Further updates:
Weather config added to main options window

Saves the info to the .flight.cfg file in the same wording as the .ysf:
CONSTWIND -2.244669m/s 0.000000m/s -4.049489m/s
CLOUDLAYER OVC 60.960000m 152.400000m
CLOUDLAYER OVC 1158.239998m 1249.679998m

Have amended language to reflect the units being used (ft and NM).
Config defaults now propagate through to the create new flight menu.
@pasutisu - could you review the Japanese wording to ensure it makes sense?

tested (briefly) on my end - looks good!


More info at: https://travis-ci.com/Qiskit/qiskit-terra/jobs/247297112

CI performance blip.


OpenEXR library in PyIlmBase pkg-config

Today I noticed there's a reference to -lIlmImf in the pkg-config file for PyIlmBase (v2.5). For a successful build PyIlmBase only needs to have IlmBase installed, but not OpenEXR, so I don't understand, why consumers should depend on OpenEXR as well. My question now, is this reference correct?
https://github.com/AcademySoftwareFoundation/openexr/blob/8bc3741131db146ad08a5b83af9e6e48f0e94a03/PyIlmBase/PyIlmBase.pc.in#L15

That's true, no need for -lIlmImf, although that's the least of the problems here, since it's also missing the -lPyImath_Python* and -lPyIex libraries.  The PyIlmBase library primarily installs python modules and is almost never used as a C++ library, so I doubt the pkg-config is ever used. Which must be the case because it's rather hopelessly broken.
The PyImath pkg-config works in the 3.0 release of Imath, which I think should be an adequate fix, since that supersedes 2.5. The 2.5 setup attempts to support both CMake and autoconf, which was retired in the 3.0 release. Getting this to work across CMake and autoconf, as well as python2 and python3 is likely to be hard enough that I'd rather file this as "won't fix."


Sort by "last modification" file property

I see that files can be sorted by name, mime and size.
It would be very convenient to add one more property to this list - file date

I wish to help add this feature, though I probably will need some guidance.

@Azomas You can set the order to last_modification and files will be ordered by last modification.
Regards

@Krato where exactly should I set the order?


Suggestion about decorators

Suggestion
Relax syntax restrictions on decorations. At least do not remove parser support for decorators on interfaces.
I wouldn't mind parser-generated warnings because those can be suppressed. But if TypeScript stops parsing decorators on interfaces and interface members I will be really disappointed.
🔍 Search Terms
decorator syntax restriction interface
✅ Viability Checklist
My suggestion meets these guidelines:

[X] This wouldn't be a breaking change in existing TypeScript/JavaScript code
[X] This wouldn't change the runtime behavior of existing JavaScript code
[X] This could be implemented without emitting different JS based on the types of the expressions
[X] This isn't a runtime feature (e.g. library functionality, non-ECMAScript syntax with JavaScript output, new syntax sugar for JS, etc.)
[X] This feature would agree with the rest of TypeScript's Design Goals.

⭐ Suggestion
TypeScript works great as an "intermediate programming language", which is always transpiled into other languages.
Let's keep it that way! And make sure the design meets the requirements.
I would suggest TypeScript keep decorators on interfaces and interface members.
📃 Motivating Example
I am using TypeScript to transpile to Lua. And I need decorators on interfaces.
💻 Use Cases
Why can't decorators just "decorate"? It doesn't have to be meaningfully executable at all!  After all, it is what meta-programming is about.

Isn't TypeScript supposed to be a superset of Javascript?
You should have some vision and bring some transcendental value to this great invention.
Currently, at least pre 5.0, decorators on interfaces can be correctly parsed with a warning.
I simply suggest you keep it that way because it won't break anything. And secondly, it will bring tremendous value beyond simple Javascript transpilation!

Why can't decorators just "decorate"?

Because that's not what they are there for. Decorators are a JavaScript feature, not a TypeScript one. JavaScript has no interfaces, so there's nothing the decorator can decorate.
A few options you have:

Use classes instead of interfaces.
Use comments instead of decorators.
Fork TypeScript and implement the feature yourself.

Duplicate #2900


index field 'keymap' (a nil value)

same here, looks like latest commit broke something

https://github.com/numToStr/Comment.nvim/releases/tag/v0.6

I updated the neovim version and everything is fine

oh I just read the PR. Ok, nice, let's stick in tag v0.6 until arch repos update the package. Thanks! 👍🏻

Yes, I've merged a feature in https://github.com/numToStr/Comment.nvim/commit/f9df9847ca403cee7124d862249c02916e773d03 that is breaking for 0.6 users. So I request you to follow v0.6 (release) until upgrading to 0.7


Add support for Python 3.11

Add Python 3.11 to CI matrix, PyPI classifiers.
Bump version to 0.2

Want me to fix this branch up @hugorodgerbrown ?


Highchart-export-clientside breaks when boost.js is added

Hi A----,
Thank you for the your awesome plug-ins keep it up.
I just want to bring something to your attention a plug-in was created to make your highcharts faster if you have to many records which is called Boost.js.
Now your exports works fine with the boost till certain amount of records (5000), then it breaks your plug-in.
Can you please give me a solution or do you think the problem is with the boost.js plug-in.

Could you write a JSFiddle ( https://jsfiddle.net ) that replicates this issue?
Thanks!

You can work out something using the getContext() (https://github.com/highslide-software/highcharts.com/blob/master/js/modules/boost.src.js#L185)
From that, you can get the canvas instance ( https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/canvas ) and then, the image (like that, https://github.com/highslide-software/highcharts.com/blob/master/js/modules/boost.src.js#L221 ).
If you can work out a JSFiddle illustrating the issue, I might be able to include something for that in the library.


Change ftp to https

The download website https://www.vim.org/download.php distributes files via ftp. I think this should be switched to https.

Well, here's what my browser says if I change ftp:// to https:// in order to get to https://ftp.vim.org/pub/vim/unix/vim-8.1.tar.bz2 instead of the same by ftp:

This Connection is Untrusted
You have asked SeaMonkey to connect securely to ftp.vim.org, but we can't confirm that your connection is secure.
Normally, when you try to connect securely, websites will present trusted identification to prove that you are going to the right place.
However, this website's identity can't be verified.
What Should I Do?
If you usually connect to this website without problems, this error could mean that someone is trying to impersonate the website, and you shouldn't continue.
[ This sounds bad, take me to my home page instead. ]
Technical Details
ftp.vim.org uses an invalid security certificate. The certificate is only valid for the following names: ftp.nluug.nl, ftp1.nluug.nl, ftp2.nluug.nl
Error code: SSL_ERROR_BAD_CERT_DOMAIN
I Understand the Risks
If you understand what's going on, you can tell SeaMonkey to start trusting this website's identification. Even if you trust the website, this error could mean that someone is tampering with your connection.
Don't add an exception unless you know there's a good reason wh> y this website doesn't use trusted identification.
[ Add Exception… ]

What I think you should do is not use those links at all but clone either the git source (from github) or the Mercurial source mirror (from bitbucket), and then periodically pull new changes onto your clone.
Best regards,
Tony.

@tonymec Building from source is not really an option. It's too much of a hassle even for me as a software developer.

The download website https://www.vim.org/download.php distributes
files via ftp. I think this should be switched to https.

Yeah, that should be better.  But some people might prefer the ftp:
link.  So I'll keep those as an alternative.
The links will point to https://ftp.nluug.nl, since the certificate is
for that domain, ftp.vim.org is just an alias.
Please check that I didn't make a mistake.
--
GALAHAD hurries to the door and pushes through it.  As he leaves the room
we CUT TO the reverse to show that he is now in a room full of bathing
and romping GIRLIES, all innocent, wide-eyed and beautiful.  They smile
enchantingly at him as he tries to keep walking without being diverted by
the lovely sights assaulting his eyeballs.
"Monty Python and the Holy Grail" PYTHON (MONTY) PICTURES LTD
/// Bram Moolenaar --<EMAIL_ADDRESS>-- http://www.Moolenaar.net   \
///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \
\\  an exciting new programming language -- http://www.Zimbu.org        ///
\\            help me help AIDS victims -- http://ICCF-Holland.org    ///

closing, as the links have been changed.


Small sections about performing math functionality

Correct me if I am missing any information, but I was not able to use some standard float operations like floor and ceil and I required those when calculating register values for a HAL. Am I missing a necessary import for this? I now added the libm dependency and was able to use the floorf functions for my purposes, but I think not being able to use functions like floor is related to having the #[no_std]  attribute on the application?
If that is the case, it might be worth an idea to add a small section related to how to perform some basic math operations which are reserved to std normally

That is correct. It would be great if you could contribute that small section about this in a PR.

Unfortunately, I'm not an expert (yet), I only stumbled upon this when trying to do floating point calculation on a MCU. I could try to get some information about which math operations are allowed and which ones are reserved to std . I might do some research. Maybe someone already compiled a list or something similar? Then I could try to contribute a small section about this topic.

A related RFC can be found here: https://github.com/rust-lang/rfcs/issues/2505


Fix broken notations in F.linear docs

Fix
https://docs.chainer.org/en/latest/reference/generated/chainer.functions.linear.html

jenkins, test this please.

Jenkins CI test (for commit e8ca10c03eca2cd52fc5c37628b5a6c66c36fe0d) succeeded without errors!

LGTM, but I'm wondering whether we should remove the parenthesis too. What do you think?

Do you mean parenthesis after these two

The other dimensions are handled as concatenated one dimension whose size must be
and
Weight variable of shape (M,N), where
? I think that makes sense.

Indeed, I meant those two. They simply look like conditions that must hold true, rather than explaining shapes. But let's leave it as is if you think it looks okay (and since the've been written in that way since before).

Removed to-be-backported since https://github.com/chainer/chainer/pull/4204 wasn't.


generateChangeLog generates bad foreign keys

Search first

[X] I searched and no similar issues were found

Description
generateChangeLog generates bad foreign keys.  See the example below, with rules_execution_id, repeated multiple times...
    <changeSet author="vicrod (generated)" id="1676920674006-17">
        <addForeignKeyConstraint baseColumnNames="rules_execution_id,rules_execution_id,rules_execution_id,rules_execution_id,rules_execution_id,rules_execution_id" baseTableName="non_transactional_billing_charge_old" baseTableSchemaName="nfx_rules" constraintName="non_transactional_billing_charge_rules_execution_id_fkey" deferrable="false" initiallyDeferred="false" onDelete="NO ACTION" onUpdate="NO ACTION" referencedColumnNames="rules_execution_id,rules_execution_id,rules_execution_id,rules_execution_id,rules_execution_id,rules_execution_id" referencedTableName="rules_execution" referencedTableSchemaName="nfx_rules" validate="true"/>
    </changeSet>

It's defined in redshift (postgres) as follows:
FOREIGN KEY (rules_execution_id) REFERENCES nfx_rules.rules_execution(rules_execution_id)

Steps To Reproduce
run generate change log against a database that has foreign keys.  Observe that sometimes the foreign key is generated incorrecty.
Actual Behavior
No response
Expected/Desired Behavior
No response
Liquibase Version
No response
Database Vendor & Version
No response
Liquibase Integration
No response
Liquibase Extensions
No response
OS and/or Infrastructure Type/Provider
No response
Additional Context
No response
Are you willing to submit a PR?

[ ] I'm willing to submit a PR (Thank you!)

Does it help to include the liquibase-redshift extension in your lib directory? One fix in that extension is to remove the snapshot (and therefore generation) of foreign keys. The code comment says because Redshift does not support calls to MetaData.getIncomingKeys() and doesn't really support FKs anyway.
That extension should keep the addForeignKey from even showing in the generated changelog

Closing due to lack of response. If this is still an issue, feel free to reopen or comment.


Split Note by Headings does not seem to work correctly

Apologies for double posting from Obsidian and Reddit forums, but I wonder if anyone could offer a solution to the following problem. When using Split Note by Headings - most headings are correctly split, but some are left out or the relevant information under each heading isn’t correctly captured. On closer inspection, this seems to be because of an accidental indent below one of the headings in some of the text that follows.
Given the length of the documents and notes I am using it really won’t be possible to search through and check for random indents.
Has anyone else encountered this? Or, in other words, is it possible to use Note Refactor with it actually splitting by headings reliably? Thanks in advance (and great plug in regardless, I should add)

这就是个垃圾插件

Could this be due to adding a character to a title that is incompatible with the note names?

For some reason it ignored indented content which is perfectly valid in markdown.

I can confirm this. I wasn't sure what exactly why the H1-splitting didn't work in some cases, but it seems that it is indeed the indentation.

I am also having problems when splitting at H1. Let me illustrate...
Let's say I have a note that looks like this:
# Sample

# A1

section A1

# A2

section A2

# A3

section A4

If I select Split note by headings - H1, I get 3 separate notes — so far, so good,

splitting by H1 doesn't work at all, but splitting by H2 creates empty files, which is even worse 😅


authorizeURLHandler is not weak, prevents view controller from being deallocated

Once I set OAuth2Swift authorizeURLHandler to my view controller, my view controller is never getting deallocated.
I believe this is happening because authorizeURLHandler is not declared as weak:
open var authorizeURLHandler: OAuthSwiftURLHandlerType
My view controller's deinit is never called.

possible workaround
oauthswift object as week in controller
or restore default authorizeURLHandler

I will propose a new solution in next version with explicit code to make weak
Because make weak for everybody could create some bugs like #526

The solution to make weak by code
oauthswift.authorizeURLHandler = YourVariable.weak()

This will a proxy with weak reference


Support external ObjectMapper usage with CloudEvent

Description
Add support for external ObjectMapper's when using CloudEvent.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

API change check
API changes are not detected in this pull request.


ppInk crash due to clipart image no longer available

@pubpub-zz
I ran into this error today after deleting an image I had used to test clipart. After testing, I deleted the image through windows file manager, not from within ppInk clipart which caused it to crash, it wouldn't run again until the error was fixed.
I spotted the problematic string pointing to the deleted image in the config.ini and omitted it. Now it's working again. Demo of how error happens:
https://user-images.githubusercontent.com/61389799/110827595-e6968580-829e-11eb-9feb-347c562927c5.mp4
Maybe ppink can make a copy of the image in a folder it creates (e.g. clipart images) to avoid this error, or if it can check beforehand if the images loaded are available, if not it will remove them from clipart.

I knew this behavior and as the file was clearly readable I considered it was sufficient. As I did some fix/ehancement  covering your latests comments from #46, I've fixed also this. if a file is missing the error will allow you to carry on, remove the image from the clipart dlg and then save the new ini files
ppInk11.zip

I knew this behavior and as the file was clearly readable I considered it was sufficient. As I did some fix/ehancement covering your latests comments from #46, I've fixed also this. if a file is missing the error will allow you to carry on, remove the image from the clipart dlg and then save the new ini files
ppInk11.zip

@pubpub-zz Just tested the "from clipboard" function in Cliparts and it is working very well.


Enforce timeout for podsReady

What type of PR is this?
/kind feature

What this PR does / why we need it:
Which issue(s) this PR fixes:

Part of: https://github.com/kubernetes-sigs/kueue/issues/349
Special notes for your reviewer:

refactored a little to use a fake clock for the integration tests, this could be decoupled to a PR
PodsReady condition is now added independently from configuration, which might be an omission from the previous PR, to be discussed. For now, in this PR, I add the PodsReady condition always (but it is not used to block admission or enforce timeout).
I withdraw from attempt to eliminate the 1s sleep in the existing integration test, because the timestamps for the workloads are created by apiserver, which would not use the fakeClock, leading to flakes

/ok-to-test
In case you want to test it.

/unassign
Thanks @ahg-g, leaving the rest to you.

Today, while testing e2e I discovered that there is an issue with the current implementation - once a workload's admission is canceled due to timeout, the condition Admitted remains True. What's more it is not updated on a new scheduling, its LastTransitionTime is not bumped, so the newly re-admitted workload is exceeding the timeout immediately, thus gets re-admitted in a loop. This can be easily reproduced in an integration test like this (it gets re-admitted >1000 times in 30s):
		ginkgo.It("Should re-admit a timed out workload only once", func() {
			ginkgo.By("create the 'prod' workload")
			prodWl := testing.MakeWorkload("prod", ns.Name).Queue(prodQueue.Name).Request(corev1.ResourceCPU, "2").Obj()
			gomega.Expect(k8sClient.Create(ctx, prodWl)).Should(gomega.Succeed())
			ginkgo.By("checking the 'prod' workload is admitted")
			util.ExpectWorkloadsToBeAdmitted(ctx, k8sClient, prodClusterQ.Name, prodWl)
			util.ExpectAdmittedWorkloadsTotalMetric(prodClusterQ, 1)
			ginkgo.By("exceed the timeout for the 'prod' workload")
			time.Sleep(podsReadyTimeout + time.Second)
			ginkgo.By("verify the 'prod' workload gets re-admitted once")
			util.ExpectWorkloadsToBeAdmitted(ctx, k8sClient, prodClusterQ.Name, prodWl)
			util.ExpectAdmittedWorkloadsTotalMetric(prodClusterQ, 2)
		})

I'm wondering how to fix this.  As a simple proposal I’ve pushed a proposed fix that sets Admitted=Unknown condition before setting Spec.Admission=nil. It seems to provide correct behavior in the scenarios I could think of.
However, I’m not convinced I don't forget about something and it also seems to increase complexity as we need to think about order of setting the condition and the field.
For alternatives I was also thinking about a new interim condition type, ExceededTimeout, or extending the Admission structure to have the Reason and Field when canceling. Then, we could add the Admitted=False condition based on the values in the structure. After the condition is set, the Admission could be nil’ed back. However, the alternative approaches seem more involving than what is done, so not sure I should pursue them. WDYT @alculquicondor @ahg-g?

/retest

One thing to note is that there could be a failure after setting Admitted=Unknown and removing the admission. The next iteration should be considering this Workload as going over the timeout. But then we might be making a difference between no condition and Admitted=Unknown. Maybe ExceededPodsReadyTimeout is a good idea.
But maybe we should consider moving the admission field to the Status, as it's giving us too many problems by being in the Spec. The rationale was that, by being in the spec, it will allow admins to directly create an admitted workload with a single step. Mind opening an issue to discuss whether this is still an important requirement that we need to optimize for?

One thing to note is that there could be a failure after setting Admitted=Unknown and removing the admission. The next iteration should be considering this Workload as going over the timeout.

Indeed, by setting the condition to Unknown I reset the timeout counter, so if setting Spec.Admission=nil fails, the next iteration will not enforce the timeout. The good news is the next iteration will update the Admitted to True, thus allowing the timeout to elapse eventually.

But maybe we should consider moving the admission field to the Status, as it's giving us too many problems by being in the Spec. The rationale was that, by being in the spec, it will allow admins to directly create an admitted workload with a single step. Mind opening an issue to discuss whether this is still an important requirement that we need to optimize for?

Yes, if Admission was in status I could update it atomically with setting the condition, but if we decide to do it, then it probably deserves a dedicated PR.

Indeed, a new PR and a new API version. We could leave it for the next release, along with a full revisit of the API #23
I would go with ExceededPodsReadyTimeout for now.

I thought we wanted to admission in spec to allow admins to force admit a job, is this not a requirement anymore?

My concern with ExceededPodsReadyTimeout is that looking at the Admitted condition will not be enough to determine the admission status; so the choice is not clear cut to me and so I would lean towards setting the condition to Unknown

And would be consider a Workload with PodsReady=Unknown to be past the timeout?

I thought we wanted admission in spec to allow admins to force admit a job, is this not a requirement anymore?

Correct, that was the intention. But how much should we optimize for it? Maybe it's perfectly reasonable for the admin to go and call Update on /status. And we could make it simpler via a kubectl plugin.

Yup, just playing devil's advocate. I think having kubectl plugin is probably the right approach, but I would be interested to look if there is precedence to that (a user manipulating status)

And would be consider a Workload with PodsReady=Unknown to be past the timeout?

Why do we want that?
btw, we can also amend the following check to include Admitted==true https://github.com/kubernetes-sigs/kueue/blob/e4e1ddd813b473eafce9ef2c6677932011ba24f6/pkg/controller/workload/job/job_controller.go#L480

Why do we want that?
btw, we can also amend the following check to include Admitted==true

And would be consider a Workload with PodsReady=Unknown to be past the timeout?

Why do we want that?

My intention was to count towards the timeout only when Admitted=True (in order to treat it as unset). Pushed a small commit to fix that. Each admitted is workload has the condition Admitted set to True soon after admission by workload_controller.
I think that the interim PodsReadyTimeoutExceeded condition might be tricky to do right. We need to be careful of race conditions, for example to clear it so that a re-admitted workload does not get admission cancelled.
Long term I would lean towards moving Admission to Status. It seems risky to give it as a tool to admins, to setup flavor usage by hand. I would remain possible by modifying status as a backdoor. Instead, we could consider having a dedicated field in spec for admins to give hints to scheduler, for example rank to be used for ordering entries for scheduling. This way an admin could say "admit this next", but without the need to specify flavor usage by hand.

/retest

/retest
webhook test seems unrelated to the changes

is there a flaky test?

is there a flaky test?

Yes, but it seems unrelated to the changes in this PR: https://prow.k8s.io/view/gs/kubernetes-jenkins/pr-logs/pull/kubernetes-sigs_kueue/498/pull-kueue-test-integration-main/1613143403141271552
Let me open an issue.

Let me open an issue.

https://github.com/kubernetes-sigs/kueue/issues/511

@ahg-g @alculquicondor applied the suggested change. I have also refactored the integration tests for the feature so that we can use short timeouts only in these tests that actually test timeout behavior. PTAL

/retest

@ahg-g @alculquicondor please do another pass on the PR, all the comments are addressed for now.

Generally LGTM, but I'll leave the last pass to @ahg-g

/lgtm
/approve


Why tap?

Why does the example require tap?
id = Sinderella.transforms(data, till_midnight) do |data|
  data.each do |key, value|
    data.tap { |d| d[key].upcase! }
  end
end

Seems that the code is the same as:
id = Sinderella.transforms(data, till_midnight) do |deep_cloned_data|
  deep_cloned_data.each do |key, value|
    deep_cloned_data[key].upcase! # modifying the deep cloned values
  end
end

Some linters flag the use of data in the block as an error.

Hi @justin808 thanks for the comment.
 I've not tried your example, so I assume it works still and the specs pass with that modification applied.
I do remember there being an issue that required me to tap, but to be completely honest I can't quite recall what the reasoning was (it's been nearly a year and a half since I wrote that code, so my memory is a little hazy).
If I get a chance I'll look at that and ping another response here, otherwise I'll likely modify the code to reflect your suggested refactor.


Performance issues using multiple "customCardProps" in List Formatting

Target SharePoint environment
SharePoint Online
What SharePoint development model, framework, SDK or API is this about?
Declarative list formatting
Developer environment
Windows
What browser(s) / client(s) have you tested

[ ] 💥 Internet Explorer
[X] 💥 Microsoft Edge
[X] 💥 Google Chrome
[ ] 💥 FireFox
[ ] 💥 Safari
[ ] mobile (iOS/iPadOS)
[ ] mobile (Android)
[ ] not applicable
[ ] other (enter in the "Additional environment details" area below)

Additional environment details
Out of Box List format Json syntax
Describe the bug / error
After sample creation using List View with json with multiple "customCardProps" object started to have browser freeze/issues after selection of multiple customCardProps object using mouse over or click.
Issue looks to be related with management the objects and how the object is released.
Human user case Mouse over action:

After some second the following error appear:

Example code below
{
  "$schema": "https://developer.microsoft.com/json-schemas/sp/v2/row-formatting.schema.json",
  "hideColumnHeader": true,
  "hideSelection": true,
  "rowFormatter": {
    "elmType": "div",
    "children": [
      {
        "elmType": "div",
        "style": {
          "padding": "5px"
        },
        "txtContent": "click 1",
        "customCardProps": {
          "openOnEvent": "hover",
          "directionalHint": "topCenter",
          "isBeakVisible": true,
          "formatter": {
            "elmType": "div",
            "children": [
              {
                "elmType": "div",
                "style": {
                  "padding": "5px"
                },
                "txtContent": "click 1"
              }
            ]
          }
        }
      },
      {
        "elmType": "div",
        "style": {
          "padding": "5px"
        },
        "txtContent": "click 2",
        "customCardProps": {
          "openOnEvent": "hover",
          "directionalHint": "topCenter",
          "isBeakVisible": true,
          "formatter": {
            "elmType": "div",
            "children": [
              {
                "elmType": "div",
                "style": {
                  "padding": "5px"
                },
                "txtContent": "click 2"
              }
            ]
          }
        }
      },
      {
        "elmType": "div",
        "style": {
          "padding": "5px"
        },
        "txtContent": "click 3",
        "customCardProps": {
          "openOnEvent": "hover",
          "directionalHint": "topCenter",
          "isBeakVisible": true,
          "formatter": {
            "elmType": "div",
            "children": [
              {
                "elmType": "div",
                "style": {
                  "padding": "5px"
                },
                "txtContent": "click 3"
              }
            ]
          }
        }
      },
      {
        "elmType": "div",
        "style": {
          "padding": "5px"
        },
        "txtContent": "click 4",
        "customCardProps": {
          "openOnEvent": "hover",
          "directionalHint": "topCenter",
          "isBeakVisible": true,
          "formatter": {
            "elmType": "div",
            "children": [
              {
                "elmType": "div",
                "style": {
                  "padding": "5px"
                },
                "txtContent": "click 5"
              }
            ]
          }
        }
      },
      {
        "elmType": "div",
        "style": {
          "padding": "5px"
        },
        "txtContent": "click 6",
        "customCardProps": {
          "openOnEvent": "hover",
          "directionalHint": "topCenter",
          "isBeakVisible": true,
          "formatter": {
            "elmType": "div",
            "children": [
              {
                "elmType": "div",
                "style": {
                  "padding": "5px"
                },
                "txtContent": "click 6"
              }
            ]
          }
        }
      },
      {
        "elmType": "div",
        "style": {
          "padding": "5px"
        },
        "txtContent": "click 7",
        "customCardProps": {
          "openOnEvent": "hover",
          "directionalHint": "topCenter",
          "isBeakVisible": true,
          "formatter": {
            "elmType": "div",
            "children": [
              {
                "elmType": "div",
                "style": {
                  "padding": "5px"
                },
                "txtContent": "click 7"
              }
            ]
          }
        }
      }
    ]
  }
}

Steps to reproduce

Create a new View
Include sample code
Start moving mouse over the options multiple time until page starts to freeze

Expected behavior
customCardProps object should work correctly without page being freeze

Dear @shagra-ms,
I would like to reference the following issue.
Thank you for your attention.

Dear @shagra-ms,
It's working fine now, can you confirm this was issue was fix from msft or i'm just lucky :)?

@aaclage We fixed the issue back in September. I just forgot to follow up here. Thanks for letting me know this is working fine now :)

@shagra-ms like always, thank you for the support and great work.


chore(deps): bump https://github.com/jenkins-x/jx-cli to 3.0.110

Update jenkins-x/jx-cli to 3.0.110
Command run was ./promote/main

[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by:
To complete the pull request process, please assign abayer
You can assign the PR to them by writing /assign @abayer in a comment when ready.
The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

OWNERS

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@jenkins-x-bot-test: The following test failed, say /retest to rerun them all:

Test name
Commit
Details
Rerun command

gke
2aca88c8d1ea4fa69120efa174a62d7d325e9512
link
/test gke

Instructions for interacting with me using PR comments are available here.  If you have questions or suggestions related to my behavior, please file an issue against the jenkins-x/lighthouse repository. I understand the commands that are listed here.


Fixed many Errors and also included some features

Description
I have fixed many errors and also include some features :

Adding of navigation bar and implementing the dark mode for that
Adding tilt effect to the login page
Adding Footer to every page
Increasing the size of the cards in mobile view
Fixed navbar css
Responsive of contributors page

Fixes #808
Screenshots
https://github.com/Counselllor/Counsellor-Web/assets/118350936/eb9d6fda-9d5f-42fe-92f8-ad8a3aa005d0
Checklist

[x] Tests have been added or updated to cover the changes
[ ] Documentation has been updated to reflect the changes
[x] Code follows the established coding style guidelines
[x] All tests are passing- [ ]

Fix this !

Ok fixing

FIxed Please check

Pull the latest changes right now , then check status : on branch
then push again !

@thestarsahil  Done can you please check


Add cross platform smb

To support Linux we are having to use an SMB Library, rather than relying on windows directory enumeration against unc paths.  This also means we cannot rely on Windows for auth and therefore arbitrary usernames and passwords are now supported.
When running on Windows, if a username/password is provided then we will use the cross-platform enumeration modules.  If a username/password combo isnt provided, we still use the faster Windows native methods

Dedup is a little high because of the CrossPlatform file/dir crawler, but it has a nested bit of work which makes decoupling a little tricky


Create jquery-ui-timepicker-fo.js

Faroese translation for the jQuery Timepicker Addon
Please include Faroese wherever needs be.
Provided is a translation based on jquery-ui-timepicker-{da,se,no}.js

Translated default messages for bootstrap-select.


Upload buildpackage tgz to Github Release

This change uploads a buildpackage tarball to Github releases. It is the same package as what gets upload to ECR, but in a different format. This allows services that may allowlist github.com but not public.ecr.aws to download the buildpackage.

In case anyone else copies this implementation to another CNB repo - it needed some follow-up fixes that should be copied too (or just look at main, not here):
#224, #225, #226 and 8f11800d03efa7bf72809dfad97ff25c92c03fa4