Case in which DynamicsBackend.run hangs

Informations

Qiskit Dynamics version: main branch
Python version: 3.11
Operating system: MacOS

What is the current behavior?
This is a bizarre bug that I haven't been able to get to the bottom of. The code is below, but the setup is:

A Solver is constructed with a 2 transmon model, and configured for pulse simulation.
A DynamicsBackend is constructed with this solver instance.
Some simple pulse schedules are created.

With the above setup:

Calling Solver.solve on the pulse schedules works.
Calling DynamicsBackend.run hangs - with some computation seeming to run indefinitely.

In the cases in which this happens, the weird thing about this is that DynamicsBackend.run seems to hang at the step that the ODE solver is called (when debugging and stepping over things it gets stuck here), however all DynamicsBackend.run does up to that point is create a DynamicsJob instance then call Solver.solve. I.e. for the purposes of this bug DynamicsBackend.run is basically a light wrapper around Solver.solve.
Steps to reproduce the problem
Setting up things up:
# Configure to use JAX internally
import jax
jax.config.update("jax_enable_x64", True)
jax.config.update('jax_platform_name', 'cpu')
from qiskit_dynamics.array import Array
Array.set_default_backend('jax')

import numpy as np

dim = 2

v0 = 5.1e9
anharm0 = -0.33e9
r0 = 0.1e9

v1 = 5.15e9
anharm1 = -0.33e9
r1 = 0.1e9

J = 0.002e9

a = np.diag(np.sqrt(np.arange(1, dim)), 1)
adag = np.diag(np.sqrt(np.arange(1, dim)), -1)
N = np.diag(np.arange(dim))

ident = np.eye(dim, dtype=complex)
full_ident = np.eye(dim**2, dtype=complex)

N0 = np.kron(ident, N)
N1 = np.kron(N, ident)

a0 = np.kron(ident, a)
a1 = np.kron(a, ident)

a0dag = np.kron(ident, adag)
a1dag = np.kron(adag, ident)

static_ham0 = 2 * np.pi * v0 * N0 + np.pi * anharm0 * N0 * (N0 - full_ident)
static_ham1 = 2 * np.pi * v1 * N1 + np.pi * anharm1 * N1 * (N1 - full_ident)

static_ham_full = static_ham0 + static_ham1 + 2 * np.pi * J * ((a0 + a0dag) @ (a1 + a1dag))

drive_op0 = 2 * np.pi * r0 * (a0 + a0dag)

from qiskit_dynamics import Solver

# build solver
dt = 1/4.5e9

solver = Solver(
    static_hamiltonian=static_ham_full,
    hamiltonian_operators=[drive_op0],
    rotating_frame=np.diag(static_ham_full),
    hamiltonian_channels=['d0'],
    channel_carrier_freqs={'d0': v0},
    dt=dt,
    #evaluation_mode="sparse"
)

from qiskit import pulse

schedules = []

gauss = pulse.library.Gaussian(
    128, 1., 256, name="Parametric Gauss"
)

with pulse.build() as schedule:
    with pulse.align_right():
        pulse.play(gauss, pulse.DriveChannel(0))
        pulse.acquire(duration=1, qubit_or_channel=0, register=pulse.MemorySlot(0))

Simulate the schedules using Solver.solve works:
from qiskit.quantum_info import Statevector

y0 = np.zeros(dim**2, dtype=complex)
y0[0] = 1.

solver.solve(
    t_span=np.array([0., schedule.duration*dt]),
    y0=Statevector(y0),
    signals=schedule,
    method='jax_odeint',
    atol=1e-6, rtol=1e-8
)

Building a DynamicsBackend with this Solver instance and calling run (with seemingly the same options) leads to a never-ending computation:
from qiskit_dynamics import DynamicsBackend

solver_options = {'method': 'jax_odeint', 'atol': 1e-6, 'rtol': 1e-8}

backend = DynamicsBackend(
    solver=solver,
    subsystem_dims=[dim, dim],
    solver_options=solver_options,
)

backend.run(schedule).result()

Variations of the above code that work or don't
This was discovered when I was trying to see how a sparse simulation performed, hence the sparse configuration of the Solver.
Additional tested situations:

If I remove the "sparse" evaluation mode, and change the rotating frame to the full static Hamiltonian, it works. (I.e. standard dense solver configuration).
However, a dense evaluation mode, still with the rotating frame being the diagonal of the static Hamiltonian, also fails.
Keeping the sparse configuration, but setting J = 0 (the coupling) also works.
Changing the units to GHz/ns instead of Hz/s works.

What's confusing is that the above would normally suggest some issue with the differential equation solving... however Solver.solve still always works in all of the above configurations. Only DynamicsBackend.run hangs, and it specifically hangs when the ODE solver is called!
I've also disabled jitting by changing the Solver.solve code to always skip the auto-jitting behaviour, and the issue persists, so it doesn't seem to be anything weird going on with the internal auto-jitting code.
Further steps
I'll keep tryign to debug with jitting disabled to see where the difference might lie.

This issue actually even persists if I drop the JAX configuration and use a scipy solver, which is "good" in that it means it won't be necessary to dig further into JAX tracing or anything like that.

Okay bug has been figured out. It is somehow a huge mistake in the code that miraculously doesn't impact DynamicsBackend.run results, but in some cases will accidentally make the computation excessively expensive.
The t_span values being fed into Solver.solve within DynamicsBackend.run are the sample numbers, not the sample numbers * dt. So, in the above example, the acquire instruction occurs at sample number 127, so the integration time should be 127 * dt == 2.822222222222222e-08, but the DynamicsBackend is simply passing the integration as [0, 127].
This is a huge mistake, but amazingly it doesn't have a mathematical impact on the results of DynamicsBackend:

The signals are correctly constructed with the right dt, so the correct simulation is occuring up to  127 * dt.
All signals are zero thereafter. As the samples output  by DynamicsBackend computed in the dressed basis, the probabilities for each string are unaffected (aside from numerical error) for all evolution after time 127 * dt.

Further, in cases where the rotating frame was set to be the full static Hamiltonian, after 127 * dt, the RHS of the DE is exactly 0., so even though the integration was proceeding way beyond the desired limit (by 10 orders of magnitude), the variable step solvers would quickly start taking extremely large steps until they hit the endpoint. This resulted in no obvious difference in the time for the correct integration time, and the incorrect integration time.
The hanging was observed initially when first setting up the a DynamicsBackend with a Solver in sparse mode, as in this case the rotating frame is not set to the full static Hamiltonian, but to the diagonal part only. As a result, the RHS is no longer 0. for all times after 127 * dt, and the solver is therefore forced to continue to take small steps (hence it seeming to hang forever).
This will be easily fixed by correctly multiplying the integration times by dt.


Warning unlinking non-existent session file in tinker

Laravel Version: 5.5.27
PHP Version: 7.1.11
Database Driver & Version: MySQL 5.6

Description:
Minor issue. When using Auth::attempt( ) in tinker and using the Filesystem session driver, a PHP warning is displayed trying to unlink non-existent session file.
Steps To Reproduce:
# php artisan tinker
Psy Shell v0.8.16 (PHP 7.1.11 — cli) by Justin Hileman
>>> Auth::attempt(['email' =><EMAIL_ADDRESS>'password' => 'yourpassword'])
PHP Warning: unlink(/Projects/myproject/storage/framework/sessions/yC9WluwkHxFwxkzIn2tLzBNo44FUCxn2HUSsno6d): No such file or directory in /Projects/myproject/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php on line 183

Just need to check if file_exists or is_file before unlinking to avoid warning. The @ symbol in the try-catch around lines 182-188 doesn't suppress the warning.

Why doesn't  @ suppress the warning? Do you have screaming enabled in xdebug? Using file_exists/is_file is still susceptible for racing conditions where two parallel requests attempt to delete the same file.

When using Auth::login(User::first()) (or any user), PHP warns about unlinking an non-existing file.
Auth::login($u)
PHP Warning:  unlink(/Workspace/Project/storage/framework/sessions/bxH9ZY08LSB61t8Mx2DjkF1Olj03Pn6aW20DDBiG): No such file or directory in /Workspace/Project/vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php on line 18

same problem

@mizan-cs Are you using xdebug with screaming enabled? Check the xdebug.scream setting.
https://xdebug.org/docs/all_settings

is any body have a solusion to this problem?

There is no solution to the problem because no-one is bothered to answer that very simple and specific question; Do you have screaming enabled in xdebug?

xdebug.scream
Type: boolean, Default value: 0, Introduced in Xdebug >= 2.1
If this setting is 1, then Xdebug will disable the @ (shut-up) operator so that notices, warnings and errors are no longer hidden.

You can find your setting in your configuration, or by doing var_dump(ini_get('xdebug.scream'));. Make sure you do it in the correct environment; preferably once in the terminal and once from a controller called via http, just to be sure that it's disabled in both.
@phpguru @vicmarconi @mizan-cs @faozimipa You're welcome to report your result in this issue. If you have screaming enabled, disable it. If you have screaming disabled, then there's an issue we need to debug further.

I can confirm that screaming is disabled in my case

Another buzz for this issue.
It might be just a nuisance, but I have a slight hunch that it might be causing my queues to silently fail, because i have issues running them on my Homestead box whenever something session-touchy is involved.
Even tried updating php.ini's error_reporting to only E_ERROR on both FPM and CLI, to no avail.

Same problem here, using PHP 7.0 and Laravel 5.4.
I realized this problem was in my project because the authentication stopped working when I installed the project in a new environment. Then I tried using Auth::attempt directly from php artisan tinker and saw the "unlink warning":

Just to be sure, I tried to fix it adding this lines where the error ocurrs (vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:183):

Now the Warning is gone, but I cannot still log in my app.

Same problem here with PHP 7.1.17 and Laravel 5.6.18.
I haven't enabled xdebug yet.

Also having this problem: php 7.2.15 and Laravel v5.6.39

any solution?
not using xdebug here

also looking for a solution

@sisve  @themsaid this error even occurs in forge - where no xdebug is present.

You guys all use Honeybadger? Dunno if that produces the error in the Middleware if (app()->bound('honeybadger') && $request->user()) {

What wa the answer to this problem?

See my Ticket on honeybadger. This error is supressed by default (with a @). You will get errors anyway if you have defined a custom error reporter or use xdebug it seems.

I'm having the same error, but in live site, its preventing all my operations to work


Regression since dace191 (fix fromjson to keep integer precision (close #172))

$ git co dace191026f576cb7d8ffbea0c29e8c13097a7c1
$ go run cmd/gojq/main.go -n '"123abc" | fromjson'
123

$ git co dace191026f576cb7d8ffbea0c29e8c13097a7c1~1
$ go run cmd/gojq/main.go -n '"123abc" | fromjson'
gojq: invalid character 'a' after top-level value
exit status 5

Same for "{}asd" and "[]abc". I think we're hitting the support for decoding a stream of JSON values.
As I guess we still need to use UseNumber() maybe a possible solutions could be something like this:
func funcFromJSON(v interface{}) interface{} {
	switch v := v.(type) {
	case string:
		var w interface{}
		dec := json.NewDecoder(strings.NewReader(v))
		dec.UseNumber()
		err := dec.Decode(&w)
		if err != nil {
			return err
		}
		var n interface{}
		err = dec.Decode(&n)
		if err != io.EOF {
			// would be nice with better error, the decode err might be confusing to show?
                        // for "123abc" err is "invalid character 'a' looking for beginning of value"
			return fmt.Errorf("invalid character after top-level value")
		}
		return normalizeNumbers(w)
	default:
		return &funcTypeError{"fromjson", v}
	}
}

Work fine with "123 \n" etc also.

What's the actual problem here? I don't think this is a regression.

Hmm, I'll reconsider later. Maybe checking Token() is enough.

What's the actual problem here? I don't think this is a regression.

That is used to throw error on unexpected trailing data, same as jq does:
$ jq -n '"{} 123" | fromjson'
jq: error (at <unknown>): Unexpected extra JSON values (while parsing '{} 123')
$ jq -n '"123 abc" | fromjson'
jq: error (at <unknown>): Invalid numeric literal at EOF at line 1, column 7 (while parsing '123 abc')

Hmm, I'll reconsider later. Maybe checking Token() is enough.

👍  yes that might be better. The double call to Decode and check for EOF feel a bit ugly.

Thanks!


chore(string): Update OP Stack reference

What changed? Why?
Update "Powered by Op Stack" to "Built on the Superchain"
Notes to reviewers
N/A
How has it been tested?
Localhost

🟡 Heimdall Review Status

Requirement
Status
More Info

Reviews

🟡
0/1

Denominator calculation

Show calculation

1 if user is bot
0

1 if user is external
0

From .codeflow.yml

1

Additional review requirements

Show calculation

Max
0

0

From CODEOWNERS

0

Global minimum
0

Max

1

1

1 if commit is unverified
0

Sum
1


Where should I put requirements.txt file on MacOS?

Hi, I am going to run this example on MacOS, and I try to add a custom library numpy. But I don't know where to put that file.
Which place should I put it?

Is no longer relevant as packaging command does not require requirements.txt anymore.


How to configure form name using reduxForm() api at runtime?

generally we configure the reduxForm(config:Object)  at design time , but how to passe configh Object as props to form component at runtime ?.

you can pass props at runtime, but seems "form" prop doesn't work this way #2010


Specify vendor-supplied system header files via '-isystem'.

https://gcc.gnu.org/onlinedocs/gcc/Directory-Options.html

I have my own OpenSSL headers in my own project that should be used instead of the supplied headers.  Using -I will cause redefinition compiler errors to appear. By using -isystem, I'm able to use my own headers without errors.

Ok, let's try this option.


Textures does not always load

Describe the bug
Tangram feiler ved lasting av textures fra tile serveren vår.  Har ikke undersøkt hvorfor det skjer, men har over en periode sett at det stadig skjer.
Browser: Chromium

It looks like the browser might be caching a previous response, including the CORS header.  While loading https://nin.artsdatabanken.no/ I received:
Access to image at 'https://maps.artsdatabanken.no/indexed/LA-KLG-JP.palette.png' from origin 'https://nin.artsdatabanken.no' has been blocked by CORS policy: The 'Access-Control-Allow-Origin' header has a value 'http://localhost:3000' that is not equal to the supplied origin.

Which makes no sense at all.


chore(package): update @types/lodash to version 4.14.109

Coverage remained the same at 84.894% when pulling e9703a825e1e8a8b61d693e4bbd296ab0f7a1c88 on<EMAIL_ADDRESS>into 261d567cb5dac5fb02ff300115b7a90b02479bda on master.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


CMake build command setting system locale to ANSI_X3.4-1968

Brief Issue Summary
During a build with the CMake Build command, the output window appears to override the system locale setting to ANSI_X3.4-1968:
[build] Detected system locale encoding (ANSI_X3.4-1968, locale "C") is not UTF-8.
[build] Qt shall use a UTF-8 locale ("C.UTF-8") instead. If this causes problems,
[build] reconfigure your locale. See the locale(1) manual for more information.

This does not happen when building from command line in vscode terminal.
output of locale in terminal:
locale: Cannot set LC_CTYPE to default locale: No such file or directory
locale: Cannot set LC_MESSAGES to default locale: No such file or directory
locale: Cannot set LC_ALL to default locale: No such file or directory
LANG=en_US.UTF-8
LANGUAGE=
LC_CTYPE="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_PAPER="en_US.UTF-8"
LC_NAME="en_US.UTF-8"
LC_ADDRESS="en_US.UTF-8"
LC_TELEPHONE="en_US.UTF-8"
LC_MEASUREMENT="en_US.UTF-8"
LC_IDENTIFICATION="en_US.UTF-8"
LC_ALL=

CMake Tools Diagnostics
No response
Debug Log
No response
Additional Information
No response

Thanks for the report. Can you run the CMake: Open the CMake Tools log file command and check what the full build system command line looks like when you attempt to build from the CMake Tools extension? That will help us narrow down what could be causing this issue.

Sure.
Also of note, I am using a cmake kit (cmake-kits.json) and there seems to be a relevant line in the log file (which is not present in my cmake-kits.json):
2023-05-30T13:51:51.002Z [debug] [kit] The environment for kit '<redacted>': {
    ...
    "VSCODE_NLS_CONFIG": "{\"locale\":\"en\",\"osLocale\":\"en\",\"availableLanguages\":{}}",
    ...
}

2023-05-26T23:13:45.334Z [info] [proc] Executing command: /usr/bin/cmake --build <redacted>/build --config Debug --target task_engine -j 22 --
2023-05-26T23:13:45.334Z [debug] [proc]   with environment: {"HOME":"<redacted>","container":"podman","TERM":"xterm","PATH":"/vscode/vscode-server/bin/linux-x64/b3e4e68a0bc097f0ae7907b217c1119af9e03435/bin/remote-cli:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin","VSCODE_AGENT_FOLDER":"<redacted>/.vscode-server","SHELL":"/bin/bash","PWD":"/vscode/vscode-server/bin/linux-x64/b3e4e68a0bc097f0ae7907b217c1119af9e03435","VSCODE_HANDLES_SIGPIPE":"true","VSCODE_AMD_ENTRYPOINT":"vs/workbench/api/node/extensionHostProcess","VSCODE_HANDLES_UNCAUGHT_ERRORS":"true","VSCODE_NLS_CONFIG":"{\"locale\":\"en\",\"osLocale\":\"en\",\"availableLanguages\":{}}","REMOTE_CONTAINERS_IPC":"/tmp/vscode-remote-containers-ipc-1528aebf-2e07-43d3-8acf-16b5846d9def.sock","LS_COLORS":"rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:","REMOTE_CONTAINERS_SOCKETS":"[\"/tmp/vscode-ssh-auth-1528aebf-2e07-43d3-8acf-16b5846d9def.sock\",\"/tmp/.X11-unix/X3\",\"<redacted>/.gnupg/S.gpg-agent\"]","SHLVL":"1","_":"/usr/bin/cat","SSH_AUTH_SOCK":"/tmp/vscode-ssh-auth-1528aebf-2e07-43d3-8acf-16b5846d9def.sock","DISPLAY":":3","REMOTE_CONTAINERS_DISPLAY_SOCK":"/tmp/.X11-unix/X3","REMOTE_CONTAINERS":"true","BROWSER":"/vscode/vscode-server/bin/linux-x64/b3e4e68a0bc097f0ae7907b217c1119af9e03435/bin/helpers/browser.sh","VSCODE_CWD":"/vscode/vscode-server/bin/linux-x64/b3e4e68a0bc097f0ae7907b217c1119af9e03435","ELECTRON_RUN_AS_NODE":"1","VSCODE_IPC_HOOK_CLI":"/tmp/vscode-ipc-3988adf1-88da-4f2f-adf6-b2d6304859f4.sock","VSCODE_L10N_BUNDLE_LOCATION":"","APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL":"1","NINJA_STATUS":"[%s/%t %p :: %e] "}

also note this seems to happen with my cmake kit using a toolchainFile, not the one that specifies the compilers. I'm digging into if there is anything in the toolchain file which would cause this

I did not see anything related in my toolchains file -- is the locale pulled from the compiler somehow?

I did not see anything related in my toolchains file -- is the locale pulled from the compiler somehow?

As far as I can tell, the locale message you referenced in the original post is coming from the generated build system itself, not CMake or the extension, so I'm not sure how it's doing locale detection.
Based on the message, I'm guessing you're using Qt in your build. Nothing jumps out in the build command line or environment, so I'm guessing we won't be able to make much progress here without a test project that would allow us to reproduce the same issue locally.


SemanticPass: Fix reducer args coercion

Before this PR, variables passed as reducer args were coerced into fields unless there was a const or var in scope with the same name. All other entities such as functions or reducers were ignored. This was inconsistent with by-lists and sort-lists where coercion in such cases lead to a CANNOT-USE-AS-VARIABLE error.
This PR makes coercion of reducer args work exactly the same as in by-lists and sort-lists (by utilizing the same code path).
Fixes #646.

@bkutil

+1


Triggering Azure Functions using ARM Template

Hi,
I am trying to trigger an HTTP Triggered Azure Function using ARM Template.
There is no such resource/documentation regarding this approach.
Is it even possible to achieve this?
If yes, then please help me with the steps to do the same
Thanks in advance! :)

Hi @KuldeepShikhare - Thank you for your question! Since this is a channel for addressing issues and discussing improvements for azure documentation, could you post your question on either Stackoverflow or MSDN forum?

@KuldeepShikhare Since we have not heard back from you we will now proceed to close this thread. If there are further questions regarding this matter, please reopen this issue & tag me in your reply. We will gladly continue the discussion.


Fetch monitoring metrics from the ReqMgr monitoring thread

Supposedly fixing #8443 , but I still need to get my AMQ topic created and those documents properly structured and posted to MonIT.
It needs this deployment patch as well: https://github.com/dmwm/deployment/pull/590
There are also a few tweaks that I need to make in this patch, but in theory it's working :)
This is how these metrics will look like for wmstats and MonIT:
http://amaltaro.web.cern.ch/amaltaro/forWMCore/PR_8521/data_struct
There are changes to the spec files as well, we need to add a new dependency on: py2-stomp

@ticoann if you have some spare minutes, feel free to have a first look at it and suggest better ways of fetching some of this info ;)

HI Alan,  patch looks good to me. However, if you are only getting the statistics on Active request following call might be better than new views in reqmgr. It loads all in the memory but it just uses the cache so it shouldn't be too much overhead.
https://cmsweb.cern.ch/wmstatsserver/data/filtered_requests?mask=RequestStatus&mask=Campaign&mask=RequestPriority&mask=RequestType
Counting is easier with view but if you get different statics you can do it at one time going through the data.

I knew you'd have a better idea! ;) Using this wmstats API is much cleaner indeed.
BTW, RequestNumEvents is returned as a list, it should be just an integer, I might fix that altogether.

Sorry Alan for making you to rework.  If you decided to use the wmstatsserver API, you can use this  wrapper class/method.
https://github.com/dmwm/WMCore/blob/master/src/python/WMCore/Services/WMStatsServer/WMStatsServer.py#L79

@ticoann can you please review this patch. I still have to fix a few things:

remove my pformat code
test the upload to AMQ (when CERN IT answers my ticket, otherwise we can simply pass that code for now)
maybe move the postToAMQ method to the base class (?) If we do so, then I guess we also need to add 'WMCore.Services+' dependency to 'wmc-rest'?

Thanks!

Yes, check out the first comment in this PR. I have a link to the deployment changes (and needed changes at spec level).

Patch looks good to me, Alan. Thanks

@ticoann Seangchan, can you please review it again? Now we use ACTIVE_STATUS for all those metrics.
I also managed to test the upload to AMQ and it seems to be working fine (I could find the docs in Kibana). I also put a code to avoid crashing the thread if there are issues posting docs to AMQ.
Once we merge it, we need to cut a new tag and build new RPMs with py2-stomp, otherwise ReqMgr2 HB thread will fail to import stomp.
Last but not least, I need to check with Lina on how we can share these credentials with her (see deployment PR).

Patch looks good to me. Thanks Alan, I will create a new tag with spec update later today.

Seangchan, just in case, you can find the spec changes in my repo in vocms055:/build/amaltaro/cmsdist

Thanks Alan,


[Figma] Update Color to deprecate Rinkeby Network

Deprecate "Rinkeby" network colors in Figma to follow code.

rinkeby.default
- rinkeby.inverse

Removed & deprecated from Figma


google oauth question

Hello,
I'm trying to install orientation on heroku, but I can't figure out what the GOOGLE_KEY and the GOOGLE_SECRET environment variables should I use. Right now, I'm using the client_id and the client secret.
Thanks.

This terminology might have changed but that sounds correct. Does it not work for you?

I am also having trouble here. I added client id as key and secret as secret in environment vars.
This brings up an oAuth login with google, but the redirect fails. I made sure to add MYAPP.herokuapp.com/auth/google_oauth2/callback as redirect uri when creating the client id. Any ideas? It seems to work fine for login, except it brings this message when done:
We're sorry, but something went wrong.
If you are the application owner check the logs for more information.
Not sure which logs to check, as I am on free Heroku.

Hi,
thanks for your quick response, I read here: http://stackoverflow.com/questions/17166848/invalid-client-in-google-oauth2 that sometimes the client_id doesn't works, so I created a new one, along with a new heroku app and everything worked correctly!
@boetter  I also got that error, in my case I had to run pending migrations. So run the following heroku run -a my-app-name rake db:migrate.

Thanks so much @erickorozco - running "heroku run -a my-app-name rake db:migrate" worked like a charm!

How does on limit logins to a specific domain? In other words, out of the box anyone can login with their google account (unless I am missing something).

There a guide that will allow you to restrict access to a certain domain, however I'm not sure if you have to transfer the domain to google to achieve this. This is the link for the guide: https://cloud.google.com/appengine/articles/auth?hl=en

Thats for the old App Engine, now (or as of 2011) its no longer possible to set domain restrictions from the Google Developer Console.
The solution appears to be adding a line to the omniauth.rb file:
OmniAuth.config.logger = Rails.logger

Rails.application.config.middleware.use OmniAuth::Builder do
  provider :google_oauth2, ENV['GOOGLE_KEY'], ENV['GOOGLE_SECRET'],
  {
    prompt: "select_account",
    image_aspect_ratio: "square",
    # we're displaying at 80 pixels, this is for high density ("Retina") displays
    image_size: 160,
    hd: "your domain.com"
  }
end

I get a constant loop on my Orientation setup now. Everytime I try to login it just redirects me back to Google after waiting for Heroku/Orientation for a few seconds. I didn't change anything on my Orientation installation, so what could have happened?

You didn't add your company (or personal) email domain to Orientation's User model. Orientation works with a domain whitelist to prevent people who don't have a verified Google Apps account from signing in.

On Sep 1, 2015, at 07:21, Jacob Bøtter<EMAIL_ADDRESS>wrote:
I get a constant loop on my Orientation setup now. Everytime I try to login it just redirects me back to Google after waiting for Heroku/Orientation for a few seconds. I didn't change anything on my Orientation installation, so what could have happened?
—
Reply to this email directly or view it on GitHub.

Closing because this appears to have been resolved.


"Set-CsUser  -EnterpriseVoiceEnabled $true" fails on v2.5.1 and 2.6.0

On v2.3.1 the following command works:
Set-CsUser -identity [user.upn] -EnterpriseVoiceEnabled $true
But on v2.5.1 you get the error:
Set-CsUserModern : A parameter cannot be found that matches parameter name 'RemoteCallControlTelephonyEnabled'.
At C:\Program Files\WindowsPowerShell\Modules\MicrosoftTeams\2.5.1\net472\SfBORemotePowershellModule.psm1:170 char:43

...           $scriptCmd = { & $commandInfo @inputboundparameters @defaul ...

                                        ~~~~~~~~~~~~~~~~~~~~~

CategoryInfo          : InvalidArgument: (:) [Set-CsUserModern], ParentContainsErrorRecordException
FullyQualifiedErrorId : NamedParameterNotFound,Set-CsUserModern

And with v2.6.0 the error changes:
Set-CsUser : [BadArgument] : Couldn't find region for forest d4
At line:1 char:1

Set-CsUser -identity [upn] -EnterpriseVoiceEnabled $true

  + CategoryInfo          : NotSpecified: (:) [Set-CsUser], Exception
  + FullyQualifiedErrorId : System.Exception,Microsoft.Teams.ConfigApi.Cmdlets.SetCsUser

There is already an issue on this topic.
https://github.com/MicrosoftDocs/office-docs-powershell/issues/8479

@TheITguy666, We will be very happy if you can share the outcome or resolution with us. We will certainly update this documentation with that valuable information. Thanks again, for taking out some time to open the issue. I appreciate and encourage you to do the same in the future also.

Now I really have to, since it's impairing two important scripts.
I avoid opening issues at MS, because the 1st line support is .... (well all know)

The commands started working some minutes ago in Switzerland tenants.
No explanation provided by MS yet. I reported on the 'Service Health' portal, but it was closed as 'No issue found' :(


Implement python builtin functions

Builtin functions simplify usage of Eopsin to build contracts, and can improve performance at the same time through native implementations.
Below is a list of builtins that python offers and should be supported by Eopsin as well. Striked through functions are not planned.

[x] all (8b7ac91f4a9935a9423095d787eaff3c52208114)
[x] any (8b7ac91f4a9935a9423095d787eaff3c52208114)
[x] abs (2edc63698980fde9e9e2b067d9d19f6db7fbe056)
[ ] bin
[ ] bool
[x] breakpoint (a no-op) (added in 42a75d35422e6132d9d95181b08c3bda2be03b42)
[ ] bytearray (synonym for bytes?)
[x] bytes (constructor with list of integers)
[ ] callable
[x] chr
[ ] classmethod
[ ] compile
[ ] complex (with rationals and integers)
[ ] delattr
[ ] dict
[ ] dir
[ ] dict
[ ] divmod
[ ] enumerate
[ ] eval
[ ] exec
[ ] filter
[ ] float
[ ] format
[ ] frozenset
[ ] getattr
[ ] globals
[ ] hasattr
[ ] hash
[ ] help
[ ] hex
[ ] id
[ ] input
[ ] int

[x] str (base 10)
[ ] fraction
[ ] int

[ ] isinstance (to distinguish elements of Union types)
[ ] issubclass
[ ] iter
[ ] len

[x] bytes
[x] list
[ ] str

[ ] list
[ ] locals
[ ] map
[x] max
[x] min
[ ] next
[ ] object
[x] oct
[ ] open
[ ] ord
[x] pow

[ ] with negative exponents -> fractions?
[ ] with modulo -> for anyone wanting to implement efficient modulo exponentiation in UPLC

[x] print
[ ] property
[x] range
[x] reversed
[ ] round (for fractions)
[ ] set
[ ] setattr
[ ] slice
[ ] sorted
[ ] staticmethod
[ ] str

[x] int
[ ] fraction
[ ] str
[ ] bytes
[ ] list
[ ] tuple
[ ] data?

[x] sum (added in 23bdda58c62f2029c4fa558e19ec348cd7147726)
[ ] super
[ ] tuple
[ ] type
[ ] vars
[ ] zip
[ ] import

Reference:
https://docs.python.org/3/library/functions.html

Since the introduction of the pairtype with #36 we can also implement zip


emulators/qemu-guest-agent: not working at 24.1 -> 24.7 upgrade

Important notices
Before you add a new report, we ask you kindly to acknowledge the following:

[x] I have read the contributing guide lines at https://github.com/opnsense/core/blob/master/CONTRIBUTING.md
[x] I am convinced that my issue is new after having checked both open and closed issues at https://github.com/opnsense/core/issues?q=is%3Aissue

Describe the bug
QEMU Guest Agent does not work after 24.1 -> 24.7 upgrade.
To Reproduce
Steps to reproduce the behavior:

Run OPNsense 24.1 in QEMU environment, eg Proxmox, with QEMU Agent installed.
Update from 24.1.x to 24.7.x.
Check hypervisor for QEMU Agent connection.

Expected behavior
QEMU Agent should remain installed and communicate with the host.
Describe alternatives you considered
N/A. There are no practical alternatives to having the proper agent.

The plugin needs to move to the qemu port and activate the "guestagent" flavor:
https://github.com/freebsd/freebsd-ports/blob/main/emulators/qemu/Makefile
https://www.freshports.org/emulators/qemu-guest-agent/
I'll take care of this.

@fraenki , not sure if there is an additional problem, but I got it running again on 24.7 after adjusting the following CLI option:
https://github.com/opnsense/plugins/blob/f25a1fa6d54ef53339ab02685ecaf53a8fa5fcbb/emulators/qemu-guest-agent/src/opnsense/service/templates/OPNsense/QemuGuestAgent/rc.conf.d#L9
Changed to:
{%     do optional_flags.append('--block-rpcs=' ~ OPNsense.QemuGuestAgent.general.DisabledRPCs) %}

Looks like --blacklist was renamed to --block-rpcs. See also: https://bugzilla.redhat.com/show_bug.cgi?id=2156515


refactor: rename GoTrueAdminApi to GoTrueAdminClient

hey @Thore1954, would you mind explaining the purpose of this change?

hey @Thore1954, unfortunately, we've decided not to proceed with this change as it seems more of a "preference" rather than an actual issue.


fix:(curriculum)Typo in calorie counter project6

Checklist:

[x] I have read and followed the contribution guidelines.
[x] I have read and followed the how to open a pull request guide.
[x] My pull request targets the main branch of freeCodeCamp.
[x] I have tested these changes either locally on my machine, or GitPod.

Closes #55280

Rather than creating a separate PR, you should update your changes in your existing PR.


Diesel logo should be yellow instead of red

This isn’t a big issue but I thought I would mention it just so you are aware of it. Gasoline is stored in red containers  and yellow containers are used for diesel.
From the Wikipedia page on diesel:

In the US, diesel is recommended to be stored in a yellow container to differentiate it from kerosene and gasoline, which are typically kept in blue and red containers, respectively.

Feel free to close this issue.

Also don't forget to add the appropriate label to indicate that it's synthetic diesel to be EU compliant.

Diesel-type fuels: square. B7, B10, XTL, etc. (“B” stands for specific biodiesel components present in diesel, the XTL stands for synthetic diesel and indicates that it is not derived from crude oil);

You're not the first person to have brought this up. Yellow isn't correct for folks outside of the US, either. It varies by country (though no country uses red as far as I know. :wink:)


[2.2.4] problems after changing domain?

**What kind of request is this (question/bug/enhancement/feature request): BUG
Steps to reproduce (least amount of steps as possible):

remove DNS records for old domain which targets the rancher IP
Setup new DNS records to an new domain
redeploy rancher with docker command and new domain and existing volume
Change the domain in the rancher interface
rotate certificates

Result:
stuck in "This cluster is currently Updating"
Other details that may be helpful:
First error message:
Cluster must have at least one etcd plane host: failed to connect to the following etcd host(s) [IP]
Second Error message after whaiting a while:
Failed to rotate certificates: can't find old certificates
Environment information

Rancher version 2.2.4
Installation option (single install/HA): multi node cluster but single install ranche

Cluster information

Cluster type (Hosted/Infrastructure Provider/Custom/Imported): Custom

Machine type (cloud/VM/metal) VM Ubuntu
Kubernetes version (use kubectl version): 1.13.5 rancher1-3

Docker version (use docker version): 18.9.5

I realy hope someon could help me soon, nothing works currently and I am not sure what I should do.
Thanks.

@MSandro can you check https://github.com/rancher/rancher/issues/14731. The issue describes the steps that can be done to recover from situation you are facing.

Let us know if this needs a follow up.


Actually removed ansible.cfg

Should we close this if we are unable to remove the ansible.cfg file?

I added ANSIBLE_SSH_ARGS to match the ansible.cfg since Im pretty sure that file only gets read during make itnegration and not when the kismatic CIL is used

Closing as this breaks snap-ci


Examples of Firebase Authentication

Hi,
Thank you for elmfire, this looks like really nice.
I've been looking at your version of todomvc and I'm trying to understand how I might take that and add firebase authentication (which it seems you support).
Can you point to me to any example uses please, I'm not quite sure how to wire it all together...
Thanks

I am sure you have seen the docs here at the package site.
Do you have a specific question?
Currently I am writing/contributing to an application called The Plentiful Shop, which uses Firebase authentication. Here are the relevant code regions:

Login
Create user
Subscribe to auth state
Use of auth state

Hi Thomas,
Thanks for responding. I have read the docs, but I couldn't see how to fit into my app. Being fairly new to Elm, I often find the package docs a little too abstract, nothing beats a simple complete example (like elmfire/example/src/Example.elm) that one can actually run and tweak.
Sounds like The Plentiful Shop might have all the bits I need (and more), I will study that code.
Thank you

Agreed, there should be a simple example for authentication. It's on my list.


[Bug]: CSS related operationId name is breaking line

Describe the bug
It was detected on version 6.6.1 and 6.6.2 that operationId description is now presented breaking the line as you can see in the screenshot below. The version 6.5.0 is working find, I did a Ctrl+F5 after downgrading to refresh the CSS and it works.

Expected behavior
Do not break line of have space to display operationId on the right.
Actual behavior
The operationId name is breaking into the next line.
Steps to reproduce
No response
Exception(s) (if any)
// add customOperationIds with AddSwaggerGen
builder.Services.AddControllers();
builder.Services.AddEndpointsApiExplorer();
builder.Services.AddSwaggerGen(options =>
options.CustomOperationIds(selector =>
{
var httpVerb = selector.HttpMethod?.ToSentenceCase();
var controllerName = ((ControllerActionDescriptor)selector.ActionDescriptor).ControllerName;
var actionSuffix = GetActionSuffix(selector);
return $"{httpVerb}{controllerName}{actionSuffix}";
})
);
Swashbuckle.AspNetCore version
6.6.2
.NET Version
8.0.202
Anything else?
No response

The CSS comes from swagger-ui which we redistribute.
The difference between the versions of Swashbuckle is which version was included.
This is either a bug in swagger-ui, which you should report to them and we will pick up at some point when fixed, or it's an implementation detail you depended on which had no guarantees of stability and you will need to work around with custom CSS of your own.


Auto-generating docs

Codecov Report
Patch and project coverage have no change.

Comparison is base (34b276f) 61.74% compared to head (f641e1e) 61.74%.

:exclamation: Current head f641e1e differs from pull request most recent head 4bd6b6c. Consider uploading reports for the commit 4bd6b6c to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@           Coverage Diff            @@
##           develop     #779   +/-   ##
========================================
  Coverage    61.74%   61.74%
========================================
  Files           30       30
  Lines         3508     3508
========================================
  Hits          2166     2166
  Misses        1342     1342

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


System Ready Minimal Images fixes

These are some fixes for the minimal image that are needed to fix up a few minor issues.
Signed-off-by: Peter Robinson<EMAIL_ADDRESS>

@sarmahaj FYI

Lgtm

Do these changes prevent the minimal-raw artifacts from being used on devices or are they nice to have?
Given that we are past dev-freeze for RHEL 9.3, I don't think we should be making changes to the minimal-raw type unless they are absolutely necessary.

I've asked around to figure out what is controversial about this change, and the main thing I've heard is the inclusion of initial-setup.
The workflow as I understand it is to use Image Builder to produce a bootable image from these minimal-raw images.
It sounds like the compromise here is to remove initial-setup from this PR, then document two available paths for users:

Use the minimal-raw image and a blueprint with Image Builder to create an initial user account, or
Add initial-setup back using Image Builder.

If users are looking for an experience that's similar to building other images with Image Builder, they would choose option 1.  If users are looking to test out a simple bootable image and don't mind manually configuring the installation, they could choose option 2.
Thoughts?
/cc @nullr0ute @thozza @runcom @miabbott @mrguitar

I've asked around to figure out what is controversial about this change, and the main thing I've heard is the inclusion of initial-setup.
The workflow as I understand it is to use Image Builder to produce a bootable image from these minimal-raw images.

That's the first step of the whole process, the next step is to provision it onto the device.

It sounds like the compromise here is to remove initial-setup from this PR, then document two available paths for users:

I did not take that conclusion away from yesterday's meeting.

1. Use the minimal-raw image and a blueprint with Image Builder to create an initial user account, or

This will cause potential security implications. We don't ship default credentials because of that.

2. Add `initial-setup` back using Image Builder.

If users are looking for an experience that's similar to building other images with Image Builder, they would choose option 1. If users are looking to test out a simple bootable image and don't mind manually configuring the installation, they could choose option 2.

That depends on the usecase. In the case of 1) that may be useful for a single user, but it falls over if it's being provided to end users, partners or other cases.

I have found more fixes needed so I'm going to update this PR with more commits soon once I've worked it all out. New update soon.

I think that the PR is missing changes to
and nothing in the commits suggests otherwise

You are correct, but TBH this was never meant to land for el8 as these devices will only ever be supported on el9, but I will fix now it's there, I thought the package set was the same across both, I missed the 9 in the name.

Also the Fedora minimal-raw does not reflect the changes to kernel command line arguments done in RHEL ->

And I missed that variable, I have other fixes coming in too, will update.

I did not take that conclusion away from yesterday's meeting. The decision from what I understand it was "what ever we do we can't change it once it's shipped". Also they're not mutually exclusive.

Correct; we want to understand what (if any) changes are required in order for users/customers to be able to boot devices using this artifact type.

That depends on the usecase. In the case of 1) that may be useful for a single user, but it falls over if it's being provided to end users, partners or other cases.

I'd like to understand what would be the more common use case for this artifact.
Even if it is the latter use case, including initial-setup by default would cause this artifact to be the unicorn among all the other artifacts produced by osbuild. Maybe that is the decision we come to, but it does feel anti-pattern compared to how most users will handle user provisioning/configuration when using osbuild.
The other consideration when adding packages to the default set is that end-users have no means of removing those default packages as part of the osbuild compose process, so we need to be very certain that any defaults are going to be applicable to the majority of users.
Regardless of the decisions made about this PR, we will need strong documentation explaining the outcome and how user provisioning/configuration will be done with this artifact.

Documentation for RHEL-8 here: https://access.redhat.com/articles/4323781

For osbuild maybe, but from an install experience on devices (AKA phase two in this process) the user generally does have to deal with users and root passwords in the traditional installer (anaconda) use case, whether that be specifying it in the UX doing a "CD style installer (via traditional media or USB stick)" or as an option in the kickstart so for the "install on device" part it is not differing from the standard user experience.

If the user composed an image using osbuild and the blueprint was missing any user customizations, then yes they would have to handle it during the install phase. But that can be avoided if the blueprint customization is used.

If say Partner Management provided a image to a partner to put on a device the partner would never deal with osbuild so from their perspective it would not be different because with anaconda you have to specify those pieces. In fact if you do that install over a serial or text console it's that exact same UX that is shown to the user.

I think this use case is where I would dig into...is the most common use case for minimal-raw going to be something like this?  What happens if someone provides user customization in a blueprint for a minimal-raw image?  Will initial-setup still run and have to be dealt with?

For osbuild maybe, but from an install experience on devices (AKA phase two in this process) the user generally does have to deal with users and root passwords in the traditional installer (anaconda) use case, whether that be specifying it in the UX doing a "CD style installer (via traditional media or USB stick)" or as an option in the kickstart so for the "install on device" part it is not differing from the standard user experience.

If the user composed an image using osbuild and the blueprint was missing any user customizations, then yes they would have to handle it during the install phase. But that can be avoided if the blueprint customization is used.

The question then becomes how many people will take the defaults vs customising it? I suspect the answer to that is impossible to predict BUT we do need to provide SANE defaults, if a user does nothing in the blueprint as it stands now they will have an image that they have no way to login to, that is confusing and I am absolutely against providing a default username and password (as I'm sure product security will be as well), on the other side of that in Fedora we have had no issues with users understanding how to use initial-setup.

If say Partner Management provided a image to a partner to put on a device the partner would never deal with osbuild so from their perspective it would not be different because with anaconda you have to specify those pieces. In fact if you do that install over a serial or text console it's that exact same UX that is shown to the user.

I think this use case is where I would dig into...is the most common use case for minimal-raw going to be something like this? What happens if someone provides user customization in a blueprint for a minimal-raw image? Will initial-setup still run and have to be dealt with?

Well the intention of the minimal-raw was intended for basic development, board bring up etc, which would generally be a single user..... BUT like all these things predicting what is intended vs how customers end up using things is impossible to predict.

Documentation for RHEL-8 here: https://access.redhat.com/articles/4323781

That kbase describes how to answer the questions in the TUI. That part is fine and self explanatory. It's more about making the call to force this on users by default, when blueprints make it crazy trivial to add it when you need it. We don't have any product plans to distribute these images so I don't know why we care if customers embed users/credentials. I

What happens if they don't specify a username/password in the blueprint? They can't login. In the case with initial-setup they should be able to just exit and login, or just ssh in straight up if they're doing it remotely. Also initial-setup may just exit if a user or root password is set (I need to verify this, because it's nuanced and I don't remember exact details, it may just not make them create it and they can just continue).

I'm mostly stuck on various types of users for the minimal-raw image.  Looking back over the comments, it seems to be a mostly open question, honestly.  We have some ideas of some users, but I don't see anything concrete.
That said, if we have a definite way to bypass the initial-setup tui, and we can document that somewhere, then I guess it's less of a big deal.  But, that needs to be included in testing this before we release it.  If including initial-setup necessarily drops the user into an interactive tui, that feels like a miss.
Honestly, since we'll have to document the user interaction either way (whether we have to show them how to skip initial-setup with a blueprint, or how the user would add initial-setup back in via Image Builder), I would lean towards including fewer packages, and document how to build an image that includes what they need.  But, this goes back to the understanding who we think will use the minimal-raw, and how.

I think that the PR is missing changes to

I think these are now all fixed, along with a bunch of other changes :)

That's probably overkill because there's a ConditionPathExists=/.unconfigured in the initial-setup-reconfigure unit file. I don't see that file as part of the rpm, so I'm not sure if a post script creates it. My guess is the firstboot --reconfigure (from memory so could be wrong) kickstart options tickles this. I know we can create files in the blueprint, but I don't know if we can remove or "untouch" a file like this. A drop-in feels more complicated and a worse customer experience to override. I think knowing the easiest/best way to bypass initial-setup would really help us weight the pros & cons here.

No, there is no option to delete files from the image.
From what I can tell, disabling the initial-setup.service unit looks like the most reasonable way to disable initial-setup from running in the image on the first boot.

If I can dream a bit, an even better experience would be keeping the defaults @nullr0ute provided and empowering users to override/remove the base packages via a blueprint (or other method). That way we get away from hard coding things and backing ourselves (and customers) into corners. This causes so much pain right now particularly with packages like podman, when users don't need/want containers. We can still provide support because we can point to an image override if something doesn't work as expected.

I don't see this happening any time soon (or at all). We intentionally don't want users to be able to exclude packages from the image base package set. @supakeen is experimenting with an "empty" image in Fedora and an option to exclude packages in BP, but that would still be possible only with user-specified packages, not the base package set.
On a general note, all image types produced by image builder come without any user by default. Things are different for various image types, but in general there is always some form of mechanism for creating users on the first boot (cloud-init, ignition, cloud-specific guest tools, etc.).
So having an image type which does not have any default user (which is desired), does not have any way to create it on the first-boot and needs a user in order to use the OS (e.g. container images don't need one) is an anti-pattern from my PoV and something that would not make sense...

Looks OK in my book; I agree with @thozza on the users/initial-setup.
@nullr0ute Are these images to be used on Raspberry Pi's as well (at least for Fedora)? If so you might want to move the minimalRawImgType in distro/fedora/distro.go next to the iotRawImgType instead.

@nullr0ute Are these images to be used on Raspberry Pi's as well (at least for Fedora)? If so you might want to do something similar as done for Aarch64_IoT in distro/fedora/distro.go.

For Fedora, yes, just pushed a commit for that, and also to fix up WiFi firmware in Fedora too.

I really appreciate all the attention on this, and thanks for the discussion around initial-setup. I think we can easily doc up what's necessary here and proceed IMO. I feel much better about this now.
@nullr0ute, thanks so much for getting this done.
@thozza, I would love to show you some real world implications around the current position regarding base image inflexibility. I completely understand and think the status quo is justifiable, but I do not believe the implications are known which is why I'm extremely nervous about this stance moving forward. I'll set up some time to chat.
Cheers!

Investigating a few other bits.

just cleaning up some typos in the commits @nullr0ute

All fixed

OK I think this is ready for review and merge, just generating test images.

OK I think this is ready for review and merge, just generating test images.

I've tested both RHEL and Fedora images on an imx8m device and works as expected :partying_face:

@nullr0ute I don't see any partition table start offset being set for RHEL-8 image. Is this intentional?

Yes, RHEL-8 only supports ServerReady and that doesn't need the offsets if people wish to use it on that release.

I had planned, had a brief discussion with @achilleas-k, on doing some more cleanups around the Fedora pieces on a some follow up clean ups (I have some other ideas for cleanups too), the el8 offset one has now been answered, what's left?

Nothing, I got all the answers I needed... Approved...

on doing some more cleanups around the Fedora pieces on a some follow up clean ups (I have some other ideas for cleanups too),

@nullr0ute could you file issues for these changes?  It would enable us to get others working on the changes while you are on PTO (or even when you are not on PTO).


Several cmake improvements

Still work in progress.

Can you ask a pull request to the New cmake branch ? If you can drop the getopt CMakeLists.txt that would be great as I already added the one from OpenMEEG-matio. Thank's for all the suggestions. I skimmed through them quickly and they seem to be nice improvements (which also show that we never built OpenMEEG-mtio on windows with many of the options)
.

Dear @papadop , I just pulled in your latest changes and rebased my changes on top of yours. I also removed my getopt CMakeLists.txt. I will test now and then push the update.

A minor thing: your getopt library is called gnu and is installed in the target directory. Would it be ok to just call it getopt or getopt_long instead?
And is it required to install the getopt library, or is it only for building the tools?

The getopt library is needed to build the tools and the testing utility test_mat. Whether it is needed to install it depends on the way it is linked into the executables. I tend to think that it is linked dynamically, which means that if you install the tools or the test_mat utility then you also need to install the getopt lib.

As for the name, I do not think I changed anything. But I do not know where I got this. Looking at the CMakeLists.txt it seems that we build a static library, so there is no need to install it and we can name it getopt which is probably better than gnu indeed.

Great, I agree. Then I'll make these minor changes too.

Coverage remained the same at 81.008% when pulling ce3269583e97b7ba0b285520732eb60de1e1a6d3 on emmenlau:cmake_pr into c9fa3a2029bed44fdf37eb4de8413521f635e3dc on tbeu:master.

Coverage remained the same at 81.008% when pulling ce3269583e97b7ba0b285520732eb60de1e1a6d3 on emmenlau:cmake_pr into c9fa3a2029bed44fdf37eb4de8413521f635e3dc on tbeu:master.

Coverage remained the same at 81.008% when pulling ce3269583e97b7ba0b285520732eb60de1e1a6d3 on emmenlau:cmake_pr into c9fa3a2029bed44fdf37eb4de8413521f635e3dc on tbeu:master.

Coverage remained the same at 81.008% when pulling ce3269583e97b7ba0b285520732eb60de1e1a6d3 on emmenlau:cmake_pr into c9fa3a2029bed44fdf37eb4de8413521f635e3dc on tbeu:master.

Coverage remained the same at 81.008% when pulling ce3269583e97b7ba0b285520732eb60de1e1a6d3 on emmenlau:cmake_pr into c9fa3a2029bed44fdf37eb4de8413521f635e3dc on tbeu:master.

Coverage remained the same at 81.008% when pulling 207d1193356250b3553a986047fb4309fa96c6db on emmenlau:cmake_pr into c9fa3a2029bed44fdf37eb4de8413521f635e3dc on tbeu:master.

Coverage remained the same at 81.008% when pulling 207d1193356250b3553a986047fb4309fa96c6db on emmenlau:cmake_pr into c9fa3a2029bed44fdf37eb4de8413521f635e3dc on tbeu:master.

Is this still being worked on? If not, I propose to close it w/o merged?

I intend to continue on  working on thé branch... Please do not close it.

Any updates? If matio supported add_subdirectory() from a parent CMake project, this would be great and would mean the that a project could build matio directly if needed.

Sorry, no news here. Autotools and VS solutions are the supported build environments. See https://github.com/tbeu/matio#20-building

I would close this one in favor of #107

Let's see it it works automatically once I merge #107.

I would close this one in favor of #107

Doing so.


Remove org from container yard image names

Currently images from container yard registries have the org as part of the image name and the org field is empty.  For consistency with other registries the org should be removed from the image name and put in the org field.

Closed by seed-common commit https://github.com/ngageoint/seed-common/commit/7a2249878315b4a567c09bd25d0d711566a17ed0


Is it possible to use both CakePHP default auth with the hybrid Auth?

Right now I am working on project where we need facebook and twitter login.
And I have also configure the login in my project but now its not authenticate with simple username and password.
This is AppController.php
class AppController extends Controller
{
    public function initialize()
    {
            $this->loadComponent('Flash');
            $this->loadComponent('Auth', [
                'loginRedirect' => [
                    'controller' => 'Users',
                    'action' => 'index'
                ],
                'logoutRedirect' => [
                    'controller' => 'Users',
                    'action' => 'login'
                ],
                'authenticate' => [
                        'ADmad/HybridAuth.HybridAuth'
                ]
            ]);
    }
}

Its working with only facebook and twitter login,and please let me know how to store user in database after successful login in fb or twitter.

You can not included FormAuthenticate in your 'authenticate' list.

So If I'll use hybrid auth than it is not possible to use cake default auth,right?

You can use both. Read the Cake manual properly to see how to configure and use multiple authenticators.

I have gone through the doc but didn't get anything useful,can you please send me the link to that article.
That will be very useful me.

http://book.cakephp.org/3.0/en/controllers/components/authentication.html#configuring-authentication-handlers

Thanks for your help.I'll try to do both authentication.
Thank you very much.

Hi thanks for your help its solved by below changes
public function initialize()
    {
            $this->loadComponent('Flash');
            $this->loadComponent('Auth', [
                'authenticate' => [
                        'Form',
                        'ADmad/HybridAuth.HybridAuth'
                ],
                'loginRedirect' => [
                    'controller' => 'Users',
                    'action' => 'index',
                    'plugin' => false
                ],
                'logoutRedirect' => [
                    'controller' => 'Users',
                    'action' => 'login'
                ]
            ]);
    }

Now can you please help me with user registeration,after successful login?

Hello?Can you please tell me,how to save user on first time social login?

This is not a help forum. Visit one of the following:
The CakePHP Manual
The CakePHP online API
The CakePHP Google Group
Stackoverflow
or the #cakephp channel on irc.freenode.net
Thanks!

Then please improve the README.md,
so user can easily install your plugin and use all functionality.
Thanks!

Quoting the README:

If no user is found and registrationCallback option is specified the specified method from the User model is called.

Not the greatest project, but the plugin does work.
https://github.com/thinkingmedia/find2cards
@ADmad maybe we need a sample project?

@thinkingmedia I personally don't have the time to make one :)  But I would be happy to link any sample project / detailed tutorial in the README if someone can write one.

@ADmad if we do a sample project then it has to be kept upto date. I think adding to the README for now should be enough. The README should be all the user needs to use the project. If they can't then the README needs to be updated.

Hello I have made that,I have configured it in my project
I can make you the sample project with detail description if you want.
Thanks.

@thinkingmedia The PR you had started for updating the README was on the right path. Once that's merged I don't think a full sample app would be even necessary.


Investigate relevance of path issue with contact info

Going to the link https://www.samfundet.no/informasjon/17-korona-virus will for some reason direct you to the same place as https://www.samfundet.no/informasjon/kontaktinfo. They refer to the same document, but with different URLs.
This also only happens in production.

The issue isn't spesific to the korona-virus text. It's rather a functionality that you can write anything you want behind an id without it impacting where you are directed. This is also true for other paths such as arrangementer, and isn't really an issue.


error renegotiating with decide-host

It's unclear if this is an error in decide or decide-host. When the client attempts to renegotiate with the host, sometimes the process will fail with the error error registering with host: missing time field in message
This message is what's returned from decide-ctrl, and indicates that the message is missing the timestamp.

Wont' fix now that host protocol has changed.


update bioc-devel r-version to 4.0.2

Based on https://github.com/travis-ci/travis-build/pull/1805
With every Bioconductor release, the lib/travis/build/script/r.rb file has to
change so that the R versions are matching with those that are compatible
with Bioconductor release and devel versions.
Here is the update to that file:
Bioconductor version 3.12 uses R-release (4.0.2).
cc: @jimhester
Reference: https://bioconductor.org/developers/how-to/useDevel/
Best,
Kevin

Pinging @jimhester again here as the PR passes the checks now.

LGTM


[extractor/youtube:tab] Extract more metadata from channel renderers

IMPORTANT: PRs without the template will be CLOSED
Description of your pull request and other information

ADD DESCRIPTION HERE
Extracts more metadata from the channelRenderer type renderers that show up in search and /feeds/channels:

Template

Before submitting a pull request make sure you have:

[X] At least skimmed through contributing guidelines including yt-dlp coding conventions
[X] Searched the bugtracker for similar pull requests
[X] Checked the code with flake8 and ran relevant tests

In order to be accepted and merged into yt-dlp each piece of code must be in public domain or released under Unlicense. Check one of the following options:

[X] I am the original author of this code and I am willing to release it under Unlicense
[ ] I am not the original author of this code but it is in public domain or released under Unlicense (provide reliable evidence)

What is the purpose of your pull request?

[X] Fix or improvement to an extractor (Make sure to add/update tests)
[ ] New extractor (Piracy websites will not be accepted)
[ ] Core bug fix/improvement
[ ] New feature (It is strongly recommended to open an issue first)

wow,deprecated before release. YouTube rolling out a change where they replace the video count with the handle.

YouTube is still providing the video count at https://www.youtube.com/feed/channels so this is still valid