Create PoA processes page

[x] Create page
[x] Add description of what is being covered (including group authorship and structured abstracts)
[x] Add description of checks required on this content, compiled from current protocol documents
[x] Add examples covering correct and incorrect scenarios, as required to support checks
[x] Review house style document to ensure all requirements are covered by GitBook
[ ] Melissa approved page
[ ] Fred approved page
[ ] James approved page
[ ] Naushin approved page
[ ] Claudia approved page
[ ] Share page with Exeter and invite feedback

Definition of done

[ ] Page revised after team comments
[ ] Team reviewed and approved page?

OK! Finally done - the only question I have is, do you think we should link to the standard data availability page rather than the common changes google doc? That's my assumption but I wasn't sure if we wanted to retain the slab within Production only . . .
Otherwise, usual thing - does everything look OK?

If an article is a Clinical trial, the abstract will be structured with headings and additional details at the end (Clinical trial info and funding). All of this must be retained for publication. Clinical trials will usually be indicated in a sticky note.

I think this info is slightly outdated. Might be worth mentioning that Medicine and E&GH articles commonly (although there are some exceptions) have structured abstracts, and removing the sentence about the sticky note?

Once the system is updated, eLife Production should be alerted to the presence of the group author regardless as the details will need to be added to the XML while the article is in the elife-poa-packaging/outbox folder (see below)

The sentence before this mentioned group members. My understanding is that we don't add group author members at POA, because doing so would require manual intervention from us. Is it worth mentioning in the section about adding group authors to the XML that we do not need to add group author members?

There are two options: CCBY 4.0 Creative Commons license and CC0 1.0 Public Domain Dedication. If any of the authors are affiliated with an American government organisation (e.g. the US Department of Energy or the National Institutes of Health), they MUST use the CC0 license.

What to do if the authors are affiliated with US Gov org, and they have selected CCBY?

The chief visual different on first viewing the article is

typo

it is possible that XML conversion errors may break certain characters or introduced bugs

typo

Once any necessary edits have been made to the article files and metadata, go to the Tasks tab and select the ‘Resend PoA files’ button.

Suggest removing 'button'

I think it's probably worth mentioning somewhere in this page that Ed Office currently carry out these checks/steps (aside from the bits that we do ourselves).

Nice work James - nothing else to add from me.


Fix magic require of clojure.string

Quick change that I've been running locally as the namespace is clojure.string as opposed to clojure.str.
My full list right now looks like this:
(nconc cljr-magic-require-namespaces
       '(("async" . "clojure.core.async")
         ("byte-streams" . "byte-streams")
         ("cache" . "clojure.core.cache")
         ("cli" . "clojure.tools.cli")
         ("codec" . "ring.util.codec")
         ("component" . "com.stuartsierra.component")
         ("d" . "datomic.api")
         ("data" . "clojure.data")
         ("deferred" . "manifold.deferred")
         ("gen" . "clojure.test.check.generators")
         ("jmx" . "clojure.java.jmx")
         ("json" . "cheshire.core")
         ("medley" . "medley.core")
         ("prop" . "clojure.test.check.properties")
         ("r" . "clojure.core.reducers")
         ("random" . "crypto.random")
         ("s" . "clojure.spec.alpha")
         ("sgen" . "clojure.spec.gen.alpha")))

I think some of the above is entirely subjective however and wonder where you draw the line on good defaults for all/what belongs in a private configuration…
Thanks for Doom BTW. It's super quick and has been very nice to work/play with.

I also have various indent rules for commonly-used libraries like om.next, core.match, Riemann, clojure.spec, Arachne, core.logic… happy to share those if there's interest in sharing such a thing in Doom (maybe tooling like cljfmt and/or zprint are the place for this kind of data).

Unfortunately, because I'm not a clojure user, it's difficult for me to draw that line too! I'm unsure how cljr-magic-require-namespaces is expected to work, for that matter.
I'm all for sensible defaults, especially if you tell me those namespaces are used frequently, but ultimately, I have to let you be the judge of that. Do you think these are sensible defaults for Clojure users? If so, I'll happily merge this. If not, then it belongs in your private module.

The change in this PR is definitely correct. Even if some people choose to alias clojure.string as something other than str, the namespace that alias resolves too is currently wrong in Doom.
In terms of my list of aliases, some are subjective enough that some Clojure users would need to remove them. Removing all third-party libs so that the magic requires only include clojure.* namespaces would be a sensible filter, but even then…
Although the results of the recent State of Clojure survey show a large uptake of Clojure 1.9 where clojure.spec was introduced, some people will still be using Schema and commonly you'll see that take the s alias over clojure.spec.alpha (which of course will become clojure.spec at some point requiring a change to these magic requires).
I'd argue that the following list is highly unlikely to need anything removed in the foreseeable future:
(nconc cljr-magic-require-namespaces
       '(("cache" . "clojure.core.cache")
         ("cli" . "clojure.tools.cli")
         ("data" . "clojure.data")
         ("gen" . "clojure.test.check.generators")
         ("prop" . "clojure.test.check.properties")
         ("r" . "clojure.core.reducers")))

If you could merge this PR as is that'd be appreciated. I'm happy to create another with a more exhaustive list of magic requires if you want.

Thank you for the detailed reply! I agree with filtering 3rd party libs, I think we should go with that.
That said, if you'd like to introduce sizeable changes to the :lang clojure module (that may be specific to certain toolchains, libraries or some such), consider a module flag.
Take a look at these lines in the :lang haskell module. There are two development environments available for Haskell in Emacs, Intero (for stack) and Dante (for cabal). One can enable one or the other by supplying the +intero and +dante flags to the module in your doom! block. e.g.
(doom! :lang (haskell +dante))

You mentioned indentation rules for common libraries; those, for instance, could be guarded by a +indent flag. My only rule for module flags is they they introduce popular and/or large-scale configuration that you can't otherwise pull off with a couple lines in your private module.
In any case, thanks again for your help!

Thank you for the tip regarding module flags! I'll check them out.


feat: add DynI2c

Adds DynI2c, which allows selecting the I2C peripheral at runtime. This is required for much the same reason that DynPinId exists. Also makes DynPinId work with everything I2c.
Fixes
Page 441 of the spec sheet also indicates the following:

Each controller must connect its clock SCL and data SDA to one pair of GPIOs. The I2C standard requires that drivers drive a signal low, or when not driven the signal will be pulled high. This applies to SCL and SDA. The GPIO pads should be configured for:

pull-up enabled
slew rate limited
schmitt trigger enabled

The current examples have the exact opposite of all of the above. The I2C interface now enforces PullUp in addition to the existing FunctionI2c. The slew rate and schmitt trigger are also configured by both the controller and peripheral.
With these changes I can communicate (KB2040) with two rust-based peripherals (PI Pico) on the same I2C bus (the entire bus collapses if the pins are not configured correctly and a second device is connected).

(3) is impossible to do right now for two reasons: DynPinId is not a Valid[Sca/Sdl]PinId (which is easy enough to fix by impling the trait for both controllers), and you would have to hard-code I2C0 or I2C1 into the type of your struct/field (meaning that it can't be determined at runtime).

You can probably solve this by having an enum with two variants for I2C0 and I2C1, and either implementing the necessary embedded_hal traits for that enum, or sprinkle match expressions through your code. I'd say both would be viable workarounds, but I admit that it's not particularly nice.
I have no idea how common such a use case is. And the implementation of DynI2c isn't very readable either, with all that macro stuff.

The point of having the DynPinId is to allow having an array of pin.
I would imagine the use of a DynI2C in a firmware à la micropython but even there, an enum like listed above would be easier to manage at the right level (the application level).
new_pin is intended for BSP to remap pin/configuration but not by application to bypass precautions implemented in the hal.
To re-use your example where the i2c interface used would be:

Read and deserialize the configuration blob
Create Pin<DynPinId, _, _> based off of that configuration using the bsp provided Pins type and an appropriate match to select the right pin and turn in into a dynpin.
Select the I2Cn based off that configuration blob.
Transform those Pin<DynPinId, _,_> into a pair of ValidatedPinScl<Pin<...>, I2Cn> and ValidatedPinSda<Pin<...>, I2Cn> to then create the expected I2C<...> peripheral driver instance.
You'd then wrap that I2C<I2Cn, (ValidatedPinSda<_>, ValidatedPinScl<_>), Controller> into your own enum (see below).

But in all likeliness, the actual pins used for i2c0 and i2c1 are known at compile time.

So your firmware only needs to keep a configuration for whether to use I2C<I2CO, (a_known_pin_for_i2c0_sda, a_known_pin_for_i2c0_scl), Controller> or I2C<I2C1, (a_known_pin_for_i2c1_sda, a_known_pin_for_i2c1_scl), Controller>.
This enum of i2c interface could even be made completely generic over which hal you're using:
use embedded_hal::blocking::i2c;
enum WhichI2C<A, B> {
    A(A),
    B(B)
}

impl<A: i2c::Read, B: i2c::Read> i2c::Read for WhichI2C<A, B> { ... }
impl<A: i2c::Write, B: i2c::Write> i2c::Write for WhichI2C<A, B> { ... }

This would make your code more portable & flexible.

My keyboard firmware uses a single i2c interface to communicate between the two halves.
Which is controller or peripheral is resolved at runtime based on which half has the usb device in configured state first.
My firmware uses an async variant of the i2c driver but both implementation match.

@jcdickinson As I was re-reading this thread I noticed

(3) is impossible to do right now for two reasons: DynPinId is not a Valid[Sca/Sdl]PinId

DynPinIds aren't indeed valid pins for SDA/SCL because not all pins are valid SDA nor SCL.
However, you can still build one from DynPinId using ValidatedPinSda. This is meant build an I2C from dynpins checking at run time that these pins are actually appropriate.
For that you would use:
let i2c1 = pac.I2C1;
let a_dynpin_func_i2c = todo!();
let another_dynpin_func_i2c = todo!();
// Runtime checks that the given pin are respectively valid sda & scl for that i2c peripheral.
let sda = ValidatedPinSda::validate(a_dynpin_func_i2c, &i2c1);
let scl = ValidatedPinScl::validate(another_dynpin_func_i2c, &i2c1);
// Instantiate the I2C driver with valid i2c pins.
let i2c = I2C::controller(i2c1, sda, scl, 400.kHz(), &mut pac.RESETS, system_clock.freq());

@ithinuel so maybe much of what this PR aims to do can be resolved with an example and documentation. I still think it would be worthwhile to require PullDown or PullNone - as well as some mechanism to correctly configure and "unconfigure"  the pins (for free).
Thoughts on having a struct ConfiguredPins that replaces the current Sda, Scl tuple, and is also provided to the constructors (instead of each pin as a parameter)? Meaning the type would become I2CThing<I2C, ConfiguredPins<Sda, Scl>>.
@jannic it shouldn't be an issue moving the enum out of the HAL, but then there would be confusing inconsistency: why does rp2040_hal allow dynamic pins in the general case, but specifically not for I2C (again, because DynPinId and Validated*Pin are mostly unusable without being able to dynamically select a controller)? I don't have a problem with publishing my own crate that deals with this issue, but it seems like that would be the wrong choice given that rp2040_hal has existing interfaces designed to deal with this (Validated*Pin).

I'll solve this outside of rp2040_hal.


[Installation]: Request for a Solution to Enable Llama 3.1 405B-FP8 Model Compatibility with AMD Mi250

Your current environment
The output of `python collect_env.py`
Collecting environment information...
PyTorch version: 2.6.0.dev20240918+rocm6.2
Is debug build: False
CUDA used to build PyTorch: N/A
ROCM used to build PyTorch: 6.2.41133-dd7f95766

OS: Ubuntu 20.04.6 LTS (x86_64)
GCC version: (Ubuntu 9.4.0-1ubuntu1~20.04.2) 9.4.0
Clang version: 18.0.0git (https://github.com/RadeonOpenCompute/llvm-project roc-6.2.0 24292 26466ce804ac523b398608f17388eb6d605a3f09)
CMake version: version 3.26.4
Libc version: glibc-2.31

Python version: 3.9.19 (main, May  6 2024, 19:43:03)  [GCC 11.2.0] (64-bit runtime)
Python platform: Linux-4.18.0-553.22.1.el8_10.x86_64-x86_64-with-glibc2.31
Is CUDA available: True
CUDA runtime version: Could not collect
CUDA_MODULE_LOADING set to: LAZY
GPU models and configuration: AMD Instinct MI250X/MI250 (gfx90a:sramecc+:xnack-)
Nvidia driver version: Could not collect
cuDNN version: Could not collect
HIP runtime version: 6.2.41133
MIOpen runtime version: 3.2.0
Is XNNPACK available: True

CPU:
Architecture:                         x86_64
CPU op-mode(s):                       32-bit, 64-bit
Byte Order:                           Little Endian
Address sizes:                        48 bits physical, 48 bits virtual
CPU(s):                               128
On-line CPU(s) list:                  0-127
Thread(s) per core:                   1
Core(s) per socket:                   64
Socket(s):                            2
NUMA node(s):                         8
Vendor ID:                            AuthenticAMD
CPU family:                           25
Model:                                1
Model name:                           AMD EPYC 7713 64-Core Processor
Stepping:                             1
Frequency boost:                      enabled
CPU MHz:                              2000.000
CPU max MHz:                          3720.7029
CPU min MHz:                          1500.0000
BogoMIPS:                             3992.51
Virtualization:                       AMD-V
L1d cache:                            4 MiB
L1i cache:                            4 MiB
L2 cache:                             64 MiB
L3 cache:                             512 MiB
NUMA node0 CPU(s):                    0-15
NUMA node1 CPU(s):                    16-31
NUMA node2 CPU(s):                    32-47
NUMA node3 CPU(s):                    48-63
NUMA node4 CPU(s):                    64-79
NUMA node5 CPU(s):                    80-95
NUMA node6 CPU(s):                    96-111
NUMA node7 CPU(s):                    112-127
Vulnerability Gather data sampling:   Not affected
Vulnerability Itlb multihit:          Not affected
Vulnerability L1tf:                   Not affected
Vulnerability Mds:                    Not affected
Vulnerability Meltdown:               Not affected
Vulnerability Mmio stale data:        Not affected
Vulnerability Reg file data sampling: Not affected
Vulnerability Retbleed:               Not affected
Vulnerability Spec rstack overflow:   Mitigation; Safe RET
Vulnerability Spec store bypass:      Mitigation; Speculative Store Bypass disabled via prctl
Vulnerability Spectre v1:             Mitigation; usercopy/swapgs barriers and __user pointer sanitization
Vulnerability Spectre v2:             Mitigation; Retpolines; IBPB conditional; IBRS_FW; STIBP disabled; RSB filling; PBRSB-eIBRS Not affected; BHI Not affected
Vulnerability Srbds:                  Not affected
Vulnerability Tsx async abort:        Not affected
Flags:                                fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 pcid sse4_1 sse4_2 movbe popcnt aes xsave avx f16c rdrand lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs skinit wdt tce topoext perfctr_core perfctr_nb bpext perfctr_llc mwaitx cpb cat_l3 cdp_l3 invpcid_single hw_pstate ssbd mba ibrs ibpb stibp vmmcall fsgsbase bmi1 avx2 smep bmi2 erms invpcid cqm rdt_a rdseed adx smap clflushopt clwb sha_ni xsaveopt xsavec xgetbv1 xsaves cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local clzero irperf xsaveerptr wbnoinvd amd_ppin brs arat npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold v_vmsave_vmload vgif v_spec_ctrl umip pku ospke vaes vpclmulqdq rdpid overflow_recov succor smca fsrm

Versions of relevant libraries:
[pip3] mypy==1.8.0
[pip3] mypy-extensions==1.0.0
[pip3] numpy==1.26.4
[pip3] optree==0.9.1
[pip3] pytorch-triton-rocm==3.1.0+5fe38ffd73
[pip3] pyzmq==26.2.0
[pip3] torch==2.6.0.dev20240918+rocm6.2
[pip3] torchvision==0.20.0.dev20240918+rocm6.2
[pip3] transformers==4.45.2
[pip3] triton==3.0.0
[conda] No relevant packages
ROCM Version: 6.2.41133-dd7f95766
Neuron SDK Version: N/A
vLLM Version: 0.6.4.dev12+g717a5f82.d20241016
vLLM Build Flags:
CUDA Archs: Not Set; ROCm: Disabled; Neuron: Disabled
GPU Topology:
============================ ROCm System Management Interface ============================
================================ Weight between two GPUs =================================
       GPU0         GPU1         GPU2         GPU3         GPU4         GPU5         GPU6         GPU7
GPU0   0            15           15           30           30           30           15           30
GPU1   15           0            30           15           30           15           30           45
GPU2   15           30           0            15           15           30           30           30
GPU3   30           15           15           0            30           45           30           15
GPU4   30           30           15           30           0            15           15           30
GPU5   30           15           30           45           15           0            30           15
GPU6   15           30           30           30           15           30           0            15
GPU7   30           45           30           15           30           15           15           0

================================= Hops between two GPUs ==================================
       GPU0         GPU1         GPU2         GPU3         GPU4         GPU5         GPU6         GPU7
GPU0   0            1            1            1            1            1            1            1
GPU1   1            0            1            1            1            1            1            1
GPU2   1            1            0            1            1            1            1            1
GPU3   1            1            1            0            1            1            1            1
GPU4   1            1            1            1            0            1            1            1
GPU5   1            1            1            1            1            0            1            1
GPU6   1            1            1            1            1            1            0            1
GPU7   1            1            1            1            1            1            1            0

=============================== Link Type between two GPUs ===============================
       GPU0         GPU1         GPU2         GPU3         GPU4         GPU5         GPU6         GPU7
GPU0   0            XGMI         XGMI         XGMI         XGMI         XGMI         XGMI         XGMI
GPU1   XGMI         0            XGMI         XGMI         XGMI         XGMI         XGMI         XGMI
GPU2   XGMI         XGMI         0            XGMI         XGMI         XGMI         XGMI         XGMI
GPU3   XGMI         XGMI         XGMI         0            XGMI         XGMI         XGMI         XGMI
GPU4   XGMI         XGMI         XGMI         XGMI         0            XGMI         XGMI         XGMI
GPU5   XGMI         XGMI         XGMI         XGMI         XGMI         0            XGMI         XGMI
GPU6   XGMI         XGMI         XGMI         XGMI         XGMI         XGMI         0            XGMI
GPU7   XGMI         XGMI         XGMI         XGMI         XGMI         XGMI         XGMI         0

======================================= Numa Nodes =======================================
GPU[0]		: (Topology) Numa Node: 3
GPU[0]		: (Topology) Numa Affinity: 3
GPU[1]		: (Topology) Numa Node: 3
GPU[1]		: (Topology) Numa Affinity: 3
GPU[2]		: (Topology) Numa Node: 2
GPU[2]		: (Topology) Numa Affinity: 2
GPU[3]		: (Topology) Numa Node: 2
GPU[3]		: (Topology) Numa Affinity: 2
GPU[4]		: (Topology) Numa Node: 7
GPU[4]		: (Topology) Numa Affinity: 7
GPU[5]		: (Topology) Numa Node: 7
GPU[5]		: (Topology) Numa Affinity: 7
GPU[6]		: (Topology) Numa Node: 6
GPU[6]		: (Topology) Numa Affinity: 6
GPU[7]		: (Topology) Numa Node: 6
GPU[7]		: (Topology) Numa Affinity: 6
================================== End of ROCm SMI Log ===================================

PYTORCH_TESTING_DEVICE_ONLY_FOR=cuda
PYTORCH_TEST_WITH_ROCM=1
PYTORCH_ROCM_ARCH=gfx908;gfx90a;gfx942;gfx1100
MAX_JOBS=32
LD_LIBRARY_PATH=/opt/conda/envs/py_3.9/lib/python3.9/site-packages/cv2/../../lib64:/opt/ompi/lib:/opt/rocm/lib:/usr/local/lib::/opt/rocm/lib/:/libtorch/lib::/opt/conda/envs/py_3.9/lib
VLLM_WORKER_MULTIPROC_METHOD=spawn
CUDA_MODULE_LOADING=LAZY

How you are installing vllm
docker image: ghcr.io/embeddedllm/vllm-rocm:v0.6.3.post1-717a5f8
VLLM_RPC_TIMEOUT=30000 VLLM_USE_TRITON_FLASH_ATTN=0 vllm serve amd/Meta-Llama-3.1-405B-Instruct-FP8-KV --host <IP_ADDRESS> --port 8000 -tp 8 --max-seq-len-to-capture 16384 --served-model-name amd/Meta-Llama-3.1-405B-Instruct-FP8-KV --enable-chunked-prefill=False --num-scheduler-step 15 --max-num-seqs 1024

Error:
INFO 11-26 03:34:45 model_runner.py:1071] Loading model weights took 47.7777 GB
(VllmWorkerProcess pid=504) INFO 11-26 03:35:14 model_runner.py:1071] Loading model weights took 47.7777 GB
(VllmWorkerProcess pid=501) INFO 11-26 03:35:14 model_runner.py:1071] Loading model weights took 47.7777 GB
(VllmWorkerProcess pid=499) INFO 11-26 03:35:14 model_runner.py:1071] Loading model weights took 47.7777 GB
(VllmWorkerProcess pid=502) INFO 11-26 03:35:14 model_runner.py:1071] Loading model weights took 47.7777 GB
(VllmWorkerProcess pid=503) INFO 11-26 03:35:14 model_runner.py:1071] Loading model weights took 47.7777 GB
(VllmWorkerProcess pid=498) INFO 11-26 03:35:14 model_runner.py:1071] Loading model weights took 47.7777 GB
(VllmWorkerProcess pid=500) INFO 11-26 03:35:14 model_runner.py:1071] Loading model weights took 47.7777 GB
INFO 11-26 03:35:14 model_runner_base.py:120] Writing input of failed execution to /tmp/err_execute_model_input_20241126-033514.pkl...
INFO 11-26 03:35:14 model_runner_base.py:149] Completed writing input of failed execution to /tmp/err_execute_model_input_20241126-033514.pkl.
ERROR 11-26 03:35:15 multiproc_worker_utils.py:117] Worker VllmWorkerProcess pid 504 died, exit code: -15
INFO 11-26 03:35:15 multiproc_worker_utils.py:121] Killing local vLLM worker processes
Process SpawnProcess-1:
Traceback (most recent call last):
  File "/vllm-workspace/vllm/worker/model_runner_base.py", line 116, in _wrapper
    return func(*args, **kwargs)
  File "/vllm-workspace/vllm/worker/model_runner.py", line 1665, in execute_model
    hidden_or_intermediate_states = model_executable(
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1736, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1747, in _call_impl
    return forward_call(*args, **kwargs)
  File "/vllm-workspace/vllm/model_executor/models/llama.py", line 556, in forward
    model_output = self.model(input_ids, positions, kv_caches,
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1736, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1747, in _call_impl
    return forward_call(*args, **kwargs)
  File "/vllm-workspace/vllm/model_executor/models/llama.py", line 345, in forward
    hidden_states, residual = layer(positions, hidden_states,
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1736, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1747, in _call_impl
    return forward_call(*args, **kwargs)
  File "/vllm-workspace/vllm/model_executor/models/llama.py", line 257, in forward
    hidden_states = self.self_attn(positions=positions,
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1736, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1747, in _call_impl
    return forward_call(*args, **kwargs)
  File "/vllm-workspace/vllm/model_executor/models/llama.py", line 184, in forward
    qkv, _ = self.qkv_proj(hidden_states)
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1736, in _wrapped_call_impl
    return self._call_impl(*args, **kwargs)
  File "/opt/conda/envs/py_3.9/lib/python3.9/site-packages/torch/nn/modules/module.py", line 1747, in _call_impl
    return forward_call(*args, **kwargs)
  File "/vllm-workspace/vllm/model_executor/layers/linear.py", line 371, in forward
    output_parallel = self.quant_method.apply(self, input_, bias)
  File "/vllm-workspace/vllm/model_executor/layers/quantization/fp8.py", line 272, in apply
    return apply_fp8_linear(
  File "/vllm-workspace/vllm/model_executor/layers/quantization/utils/w8a8_utils.py", line 132, in apply_fp8_linear
    output = torch._scaled_mm(qinput,
RuntimeError: torch._scaled_mm is only supported on CUDA devices with compute capability >= 9.0 or 8.9, or ROCm MI300+

We understand as MI250 is simply not supported with FP8 model, but a workaround will be very valuable.
Before submitting a new issue...

[X] Make sure you already searched for relevant issues, and asked the chatbot living at the bottom right corner of the documentation page, which can answer lots of frequently asked questions.

What sort of workaround are you looking for? Since FP8 operations are not supported, it may be necessary to cast the values to FP16 (at which point you might as well just use a FP16 model).

Thank you for your response. I looking to run Llama 3.1 405B on 8xMi250. The FP16 model would not fit in 8xMi250.

Can you try loading the FP16 model inFB8 using --dtype half? (Probably won't work but worth a try)

@Bihan Note that fp8 is only supported on MI300x GPUs. You have MI250, which is not support yet.
RuntimeError: torch._scaled_mm is only supported on CUDA devices with compute capability >= 9.0 or 8.9, or ROCm MI300+


Add Sublime Text package

This PR is to add details for the Sublime Text editor

Add instructions on how to install the Sublime Text package for Astro

Related issues & labels

Closes #5502
Suggested label: add new content
Maintainers may edit

Thank you @sarah11918. That was a very nice lesson on the process. I hope I will be of more help again. 😃


Cursor is not positioning to correct position

We have a sort of XML document. When window is resized and user clicks on specific text, cursor is sometimes positioned at the wrong place. After text is changed, the positioning of the cursor with mouse works ok. Is there a conf that has to be added or is this a bug.
lineWrapping is se to true, and because of this, the cursor gets positioned wrong on window resize.

Are you resizing the whole browser window, or using some in-page resizing functionality?

No I am resizing a dialog, so textare is also resizing.

Right -- CodeMirror can not detect such resizes (no meaningful events are fired for them), so in cases like this, where your script forces the editor to resize, you should call the resize method on the editor (without arguments) to force it to clear its position caches and re-measure the actual positions of things.

thx, it works, awesome.


Assisting koji in PyPI

koji project is waiting for rpm-py-installer next version release.
<EMAIL_ADDRESS>
I've uploaded koji-1.14 to testpypi. But as Jun Aruga mentioned, I'm waiting for his fixes, so we don't need manual step in virtualenvs, for production PyPi. https://testpypi.python.org/pypi/koji

This ticket is to manage to assist koji project for koji in PyPI.

Announced the new version to koji project now.

Koji's target issue page: https://pagure.io/koji/issue/458

This is cool 👍  I have been actually waiting for Koji in PyPI.

@tkdchen Yeah. I have been waiting it too.


Secret Roles page is named Device Roles

Huh. It's been like that since before v1.0.0 and you're the first person to report it.


Support to configure Azure DevOps pipeline from vscode

Expose 'Configre Pipeline' command to set up Azure DevOps pipeline from vscode.

Can you please rebase on a newer master?

Can you please rebase on a newer master?

Done.

Can you please rebase on a newer master?

Done.

Thanks, but now the build is failing.


openssl/conf.h not found

@zaucy and I are working on getting boost asio working with openssl. It already works with boringssl but we hit the following error when trying to build for MacOS. I am not sure if there are other issues with it but will re-run the checks to see.
https://github.com/bazelboost/asio/actions/runs/12247097103/job/34164294195?pr=5 from https://github.com/bazelboost/asio/pull/5

Thanks for the attention! Yeah I don't have the Windows expertise to get this going, but I'm happy to review a PR which did. I imagine it would take the shape of:

Add another platform to the platforms list in generate.py - I'm not sure which platform, as Windows has a few.
Edit BUILD.openssl.bazel to load constants from the newly generated .bzl file, and expand all the selects to cover the new constants.
Editing .github/workflows/pr.yaml to add windows-latest to the list of OSes in pr-test.


Expose license url in public namespace

Conflicts:
src/Paket.Core/InstallModel.fs

what's the prupose of this?

It adds LicenseUrl to type InstallModel, I needed it in the public api,
I thought others might too.
On Thu, Jul 14, 2016, at 01:23 PM, Steffen Forkmann wrote:

what's the prupose of this?
— You are receiving this because you authored the thread. Reply to
this email directly, view it on GitHub[1], or mute the thread[2].

Links:

https://github.com/fsprojects/Paket/pull/1811#issuecomment-232638082
https://github.com/notifications/unsubscribe/AADItVLI8bbhQqFrxCfU6ZXtxy7TonHTks5qVhw1gaJpZM4JMVKg

Ok. It looks reasonable
On Jul 14, 2016 2:03 PM, "Robert Pickering"<EMAIL_ADDRESS>wrote:

It adds LicenseUrl to type InstallModel, I needed it in the public api,
I thought others might too.
On Thu, Jul 14, 2016, at 01:23 PM, Steffen Forkmann wrote:

what's the prupose of this?
— You are receiving this because you authored the thread. Reply to
this email directly, view it on GitHub[1], or mute the thread[2].

Links:

https://github.com/fsprojects/Paket/pull/1811#issuecomment-232638082

https://github.com/notifications/unsubscribe/AADItVLI8bbhQqFrxCfU6ZXtxy7TonHTks5qVhw1gaJpZM4JMVKg
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/fsprojects/Paket/pull/1811#issuecomment-232646318,
or mute the thread
https://github.com/notifications/unsubscribe/AADgNPBABaNYDLLQ-6QejNfzBMInK9q_ks5qViWSgaJpZM4JMVKg
.


WARNING: Switched off --watchfs again... temporarily falling back to manually checking files for changes
Runing packages/animations/docs/examples/dsl:server
Launching with notifications
listening on :35729
Loading:
Loading: 0 packages loaded
INFO: Analysed target //packages/animations/docs/examples/dsl:server (0 packages loaded).
INFO: Found 1 target...
[0 / 4] [-----] BazelWorkspaceStatusAction stable-status.txt
...
INFO: Elapsed time: 0.496s, Critical Path: 0.07s
INFO: 0 processes.
INFO: Build completed successfully, 3 total actions
INFO: Build completed successfully, 3 total actions
Starting...Triggering live reload
requesting reload: reload
Serving livereload script from http://localhost:35729/livereload.js?snipver=1
Server listening on http://localhost:5432/
listen tcp :5432: bind: address already in use
connected

Please note listen tcp :5432: bind: address already in use.
The expected behavior is that if ibazel or the underlying bazel run crashes it also shuts down the server or any other child processes of ibazel.

@IgorMinar this is an interesting side effect of #194 and I would be interested in coming up with a generalized way of ensuring the subprocess is killed. The specific issue here is still closed in that #194 is fixed and therefore we should be good, so lets consider this bug to be something of the form:
"If iBazel crashes while a process is running it should terminate that subprocess."

sgtm
On Sat, Dec 15, 2018 at 4:14 PM Andrew Z Allen<EMAIL_ADDRESS>wrote:

@IgorMinar https://github.com/IgorMinar this is an interesting side
effect of #194 https://github.com/bazelbuild/bazel-watcher/issues/194
and I would be interested in coming up with a generalized way of ensuring
the subprocess is killed. The specific issue here is still closed in that
#194 https://github.com/bazelbuild/bazel-watcher/issues/194 is fixed
and therefore we should be good, so lets consider this bug to be something
of the form:
"If iBazel crashes while a process is running it should terminate that
subprocess."
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/bazelbuild/bazel-watcher/issues/197#issuecomment-447607580,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AANM6OnXY8Ou8Vcxqq8wXagdF6mgZeZZks5u5ZB5gaJpZM4ZFn8c
.

@achew22 I was wondering a bit about this issue. So I see that for every execution ibazel performs, it creates a process group for the child process and its descendants as can be seen here: https://github.com/bazelbuild/bazel-watcher/blob/da33b5a7864216827da8b105afb24837f73d634a/ibazel/process_group/process_group_unix.go#L32
According the the interface for SysProcAttr we have access to the process group ID.
But in our implementation for kill, we kill the PID instead of the process group ID https://github.com/bazelbuild/bazel-watcher/blob/da33b5a7864216827da8b105afb24837f73d634a/ibazel/process_group/process_group_unix.go#L45
I think we should be killing the entire process group rather than just the direct child. (I think you might have followed this blog article: https://medium.com/@felixge/killing-a-child-process-and-all-of-its-children-in-go-54079af94773 because it has the same implementation). I don't know if you can count of the PID being equal to the Process group ID. Either way, if you change it to SysProcAttr. Pgid you do have that guarantee.

That all being said, I think to fix this specific bug you'd either need a top level try catch (if such a concept exists in go) which calls Kill on all spawned processes.

Here's bazel logic for killing a process group (they use the process group ID): https://github.com/bazelbuild/bazel/blob/0db53014ce88bda5f41a0081b78ab09b53c497ae/src/main/tools/process-tools.h#L38

I don't believe that this is stale.

Agreed. Removing stale

Not stale.
On Sat, Apr 4, 2020, 5:10 PM github-actions[bot]<EMAIL_ADDRESS>wrote:

Stale issue message
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/bazelbuild/bazel-watcher/issues/197#issuecomment-609107627,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABUZ2EQ6ZZHMIZUH7YFM2LRK7D63ANCNFSM4GIWP4OA
.

Please don't close this.
On Mon, Apr 13, 2020 at 5:12 PM github-actions[bot] <
<EMAIL_ADDRESS>wrote:

Closed #197 https://github.com/bazelbuild/bazel-watcher/issues/197.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/bazelbuild/bazel-watcher/issues/197#event-3228989983,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AABUZ2B22C2AMSQXI43H2I3RMOS5VANCNFSM4GIWP4OA
.


Volume cursor invisible on IE11+

This problem is already visible on https://plyr.io/ (volume cursor on video and audio)

Seems like adding display: flex and flex: 1 to this definition fix the problem :
@media(min-width:768px) {
.plyr .plyr__volume{
max-width:100px
}
}


Start looking into generation of ISA files for metadata annotation.

This PR is the first attempt at producing ISA files for the metadata annotation.
The ISA directory added to the scripts directory contains two python scripts:

isa-json.py
isa-tab.py

The scripts are meant to produce ISA-JSON and ISA-TAB file, respectively, for the reference dataset described in Masuzzo et al., 2016.
These scripts are far from producing a complete ISA metadata annotation, they serve merely as a starting point to understand how to proceed.
The scripts make use of the ISA python API. See refs: https://github.com/ISA-tools/isa-api, http://isa-tools.org/2017/01/isa-api-milestone/, and https://pypi.python.org/pypi/isatools/.
You can install the isatools PyPI package simply with pip install isatools, and then import everything with the line: from isatools.model.v1 import *.
To move this forward, interface with ISA developers and maintainers is crucial at this stage.
NB: For completeness, the scripts added here are a mere copy/paste/adapt from usage examples shown here and here.

:+1: for the first input. As mentioned in the description and the recent calls, the next steps for driving this might require some coordination with @agbeltran and @proccaserra.
One immediate structural thought while looking at the code diff. In both cases we are first generating an investigation expressed in the ISA model and then writing it either as an ISA-TAB or an ISA-JSON file. As all the investigation creation is currently duplicated, would it make sense to:

either create 3 scripts e.g. generate_investigation, write_isa_json, write_isa_tab
or combine everything into a single one which would either take an optional argument allowing to select the output format or even generate output in both file formats

Discussed with Simone, merging this as an example of how to use the current API.


[SR2022]: 2022-02-18 Adventurous Machines Sponsored Post

Body
A huge thank you to our sponsor Adventurous Machines. Adventurous Machines offers a bespoke electronic design service and takes products from concept to reality. Their support helps us inspire the next generation of engineers! Find out more at https://adventurousmachines.com/?utm_source=twitter&utm_campaign=sr2022
Media
Logo on SR grey background
Category
Current Comp Cycle News

Posted Yesterday


ETMoses landing page should advertise our workshops

John pointed out that because ETMoses is a real experts-tool it would be good to if he user would find his way to a workshop about how to use ETMoses rather than him getting frustrated by reading a lot of complex documentation.

In relation to documentation efforts.

Do we still want this, @ChaelKruip ? If so, I will pick it up as part of improving the documentation.

Do we still want this, @ChaelKruip ? If so, I will pick it up as part of improving the documentation.

👍


protocl name for static route policy

Hi, a few of the tests (e.g., https://github.com/openconfig/featureprofiles/blob/3da579ef74aa08d90476105630fe213376e67cf1/feature/gribi/tests/gribigo_compliance_test/gribigo_compliance_test.go#L56) configure a static route and use "static" as the protocol name as shown below:
/network-instances/network-instance[name=non-default-vrf]
{
  "openconfig-network-instance:config": {
    "name": "non-default-vrf"
  },
  "openconfig-network-instance:name": "non-default-vrf",
  "openconfig-network-instance:protocols": {
    "protocol": [
      {
        "config": {
          "identifier": "openconfig-policy-types:STATIC",
          "name": "static"
        },
        "identifier": "openconfig-policy-types:STATIC",
        "name": "static"
      }
    ]
  }
}

This value is vendor specific and we need to have a flag to pass the name. I can have a pull request to add the flag, however I am not sure where do you prefer to add the flag since this will be used by few tests?

@bstoll

I'm ok with starting a flag. @bstoll to comment further.

#600


Request for adding the ICRA 2022 paper

Thanks for this awesome repo. Please add the following ICRA 2022 paper on UDA:
Unsupervised Domain Adaptation in LiDAR Semantic Segmentation with Self-Supervision and Gated Adapters, ICRA 2022 (accepted).
arxiv: https://arxiv.org/abs/2107.09783

Very interesting and attractive paper! I have added it into the list.


Fix pull-ingress2gateway-verify presubmit

What type of PR is this?

/kind cleanup

/ok-to-test

from https://github.com/kubernetes-sigs/ingress2gateway/pull/26#issuecomment-1602156781
pkg/i2gw/aggregator.go:336:2: missing cases in switch of type v1.PathType: PathTypeImplementationSpecific (exhaustive)
	switch *ip.path.PathType {

@shaneutt @robscott Do you know where the exhaustive linter comes from? I did not find it in https://github.com/kubernetes-sigs/ingress2gateway/blob/main/.golangci.yml

Thanks @levikobi!
/lgtm
/approve


Install rascsi in the Linux standard software package path, i.e. in /opt

The Linux standard software installation path is /opt, just like for (other) SVR4 platforms. rascsi binaries should be installed in /opt/rascsi/bin, the manpages in /opt/rascsi/man. When changing the installation path to /opt (in the Makefile), old installations in /usr/local/bin should be removed (rm -f). Of course, only the rascsi-related binaries should be removed, not everything in /usr/local/bin.
easyinstall also has to be changed, because the systemd service needs to use the new path /opt/rascsi/bin/rascsi to start rascsi.
The easyinstall should suggest to add /opt/rascsi/bin to $PATH and /opt/rascsi/man to $MANPATH. This is not mandatory, but useful if a user wants to start rascsi manually.

The easyinstall should suggest to add /opt/rascsi/bin to $PATH and /opt/rascsi/man to $MANPATH. This is not mandatory, but useful if a user wants to start rascsi manually.

I think adding /opt/rascsi/bin to the $PATH would be mandatory. I still use the rasctl utility often. Maybe I'm the only person who does this, but I think the utility should be on the PATH when rascsi gets installed.
After spending a while diving down this rabbit hole, it doesn't appear that there is a clear-cut right and wrong approach to this.
https://unix.stackexchange.com/questions/11544/what-is-the-difference-between-opt-and-usr-local
Since we currently have a rascsi disk image, it could be argued that rascsi is now part of this distribution, and therefore fits in /usr/local instead of /opt
I'm going to tag this issue as an enhancement, since I don't view the current file placement as a defect. From my initial evaluation, it seems like the risks outweigh the benefits. Please let me know if I'm missing anything here:
Benefits:

Easier to delete/uninstall rascsi
Slightly better consistency with SVR4 (this point may be debatable)

Risks

Need to modify the $PATH variable
Potential for breaking things

In summary: I'm not saying we shouldn't do this... I just want to understand the benefits more.

@akuker I also see pros and cons here. But if each software installation would just throw everything into /usr/local/bin, like rascsi does it, this would be quite a mess.

But if each software installation would just throw everything into /usr/local/bin, like rascsi does it, this would be quite a mess.

but that is what every installation  does (respectively in /usr/bin). that is usually no problem when there are complementing install and uninstall routines.
but i wonder whether there are devices that run more applications than just rascsi. if not, what i assume, the question about messiness just doesn't apply.
as context: i'm currently looking at this repo b/c i'm interested in using rascsi. am i understanding correctly that there are neither deb-packages or filesystem images (i know one can buy these), but the setup (and subsequent updates) is quiet a manual process?

@funkyfuture Regarding the usage of /opt it is not correct that every software installation on Linux uses /usr/local/bin. /opt is a convention for software package installations introduced long ago with System V, and it helps keeping packages separated and structured, which is a good thing.
The assumption that users of rascsi do no install anything else on their Pi may be correct in your case, but is it correct for everybody?

am i understanding correctly that there are neither deb-packages or filesystem images (i know one can buy these), but the setup (and subsequent updates) is quiet a manual process?

You are partially correct. There is no deb package available for RaSCSI. There is an "easyinstall.sh" tool that will install/configure RaSCSI for you. That has been our answer to the deb package need. (A future deb package is not out of the question though)
There is also a pre-built image that is available (for free) that you can download. For the last few software releases, there are Raspberry Pi OS Lite images available that have RaSCSI pre-configured. For example: https://github.com/akuker/RASCSI/releases/tag/v22.02.01 (Zip file is at the bottom of the page)

thank you for your feedbacks.
the Linux FHS is very clear that there is not the one location where software is to be installed. if it was to be kept within one branch of the filesystem, yes, that'd be in /opt.
would an issue or even a preliminary pr that aims to create deb packages be of interest for you?

@funkyfuture Personally I think that it would be good to have debian packages with rascsi binaries. These items should IMO be considered, though:

All library dependencies should be covered, i.e. when installing the package all dependencies should also be installed. I guess this is part of the package definition.
How does the user configure rascsi, e.g. the systemd setup? I'm not familiar with creating debian packages, but I assume this is covered somehow?
Creating the package should be an automated part of creating new RaSCSI releases. If this requires additional manual work it might just be a matter of time until this is not done anymore. Then only outdated packages would be available, which would be bad.
In the ideal case there would be automated nightly package builds of the develop branch.

Going to close this ticket as there does not appear to be sufficient interest in updating/improving the installation process. Also see https://github.com/akuker/RASCSI/issues/740.

Agreed. Thanks @uweseimet !


[BUG] URDF difference of 4 centimeters for Rizon4

Version information

RDK: v 1.4
Robot software: 3.6
OS: Ubuntu 22.04

Describe the bug
There are two issues:

In this commit, the Rizon4 URDF (flexiv_rizon4_kinematics.urdf) changed by >4 centimeters for the end-effector pose (see script to visualize)
Neither the new URDF nor the old URDF match are able to match the TCP pose reported by the robot.

For problem #2 above, are there hidden calibration parameters (i.e. a per-robot specific URDF) that we could have access to?  Or is there some other cause for the discrepancy?
For problem #1 above, here is the visualization from the script.  I also changed the alpha channel of the robot so that you can more easily see them overlaid

The specific line change that causes the difference is here.
Is the new URDF or the old URDF closer to correct?  How do we match the TCP pose reported by the robot?
Steps to reproduce

Grab this script
pip install pybullet
get both the old and new URDFs into the right paths
Run the script

Expected behavior
URDF should match the robot, i.e. we should be able to take the measured joints and the URDF and calculate the same TCP pose reported by the robot.
Screenshots
See screenshot above.

@peteflorence This URDF is for newly produced Rizon 4 with updated kinematics values. We will add a new API in RDK v1.5 to export the actual URDF used in the control box, but for now, the easiest solution for you is to git checkout to the commit before this URDF change and copy the old URDF out and use that.

@peteflorence Please advise if this is what you want.
https://github.com/flexivrobotics/flexiv_rdk/commit/7d16e22d2e7463f9501c47453f5443657c82e303


Add new watcher for frameworks to make framework dev nicer

New watcher for frameworks to make framework dev nicer

Could we use this as an opportunity to remove the 'FAILED' in the readme after the bit about the watch task? Can't find a reason it's there but it's no adding anything to the understanding of this.

Yeah, it looks like a mistake to me.

But  👍  otherwise.


Initial ui clean up

This is what this PR completes towards the original issue checklist in #243.

[x] Add white space below tab titles - example
[x] Move focus color and HMC color to config file

[x] Add each HMC as a layer if feature is enabled

[x] Change "Person Type and Purpose" to bold in the Time Use area graph - example
[x] Change "Focus Color:" label to bold in Scenario Travel Model for Base Year 2010 in ARC Transportation Planning Scenario Travel Model for Base Year 2010 > Trip ODs - example
[x] Metro MCEVIZ Scenario Freight > Freight Flows example

[x] Remove colon from "Filter:" label, make bold.
[x] Make "Color" label bold

I've published it as a draft because there are two things I want to do before publishing:

[x] change word "Bubbles" in bar-and-map chart to "Color"
[x] Extend the tab bar

@ryanstreur can you tag any relevant issues this fixes?  thanks.

addressed #248  as well


attempt to fix dev mode FOUC

Alternative to #1026. It seems to work for apps once they're running, but the first load after the server starts always results in this:

I have no idea why — @dominikg does this look familiar?

admin
Before submitting the PR, please make sure you do the following

[ ] It's really useful if your PR references an issue where it is discussed ahead of time. In many cases, features are absent for a reason. For large changes, please create an RFC: https://github.com/sveltejs/rfcs
[ ] This message body should clearly illustrate what problems it solves.
[ ] Ideally, include a test that fails without this PR but passes with it.

Tests

[ ] Run the tests with pnpm test and lint the project with pnpm lint

Changesets

[ ] If your PR makes a change that should be noted in one or more packages' changelogs, generate a changeset by running pnpx changeset and following the prompts

Source for that error:
https://github.com/sveltejs/vite-plugin-svelte/blob/46c27500e10aa97dd8ff6a5d6fc80d110c36cdc8/packages/vite-plugin-svelte/src/index.ts#L195
I think whats happening is that there are 2 caches for svelte compile data and the css is only checked in one. It gets added to the ssr cache during ssr render pass, but when the browser requests the css via the injected link, its a client request and transform is called with ssr=false. ->  cache miss for the module css and error.

closing in favour of #1057


Add support for new OpenWeatherMap One Call API

OWM added a new free API with more forecast days and a lot of more conditions. They aim to provide all the information that was provided by the discontinued dark sky api: https://openweathermap.org/api/one-call-api
https://openweathermap.org/darksky-openweather

Working on ..thanks !

Excellent, I was looking at this module and was looking for the OneCall support...glad the question was asked before. Looking forward to it.

Any updates on this?

Hi, I did a small patch for One Call API
0001-Update-index.js.zip

Would you make a pull request so i can verify and merge it eventually ?? Check the v.5.0.0-pre release ....


[WFLY-19321] JBoss EJB client module is private module

https://issues.redhat.com/browse/WFLY-19321

More information about the wildfly-bot[bot]

I added the 'hold' label pending further discussion of a deprecation plan, documentation of a migration path, update of the JIRA with more details, etc.

@tadamski , @rachmatowicz FYI


How is the name value used?

When I create a new Ionic project, I'm prompted for the backend app's location and a project name. However, the project name doesn't seem to be used. At the very least, I'd expect it to be set as the name in package.json. Currently, that seems to be hardcoded to ionic4j.

@mshima If we change the default value here to use this.localJHipsterConfig.baseName, will it mess up the CI tests?

I don't think so.
Since baseName is probably used by normal client frameworks, we probably should set it to baseName + '-ionic'.

Maybe change the ionic folder to baseName + '-ionic' too.

I'm only concerned with the name in package.json for now. It seems to be hardcoded to ionic4j and that's the only instance of this value I can find in the project. Without this change, this question seems weird:
? What do you want to name your Ionic application? (JHipster project)

The value that I enter (e.g. flickr2) only seems to be used in .yo-rc.json:
"projectName": "flickr2"

Reopening because it looks like my change in #676 doesn't make it so the project name is used in package.json. Instead, it seems to be the one from this line:
The result if I use flickr2 as my app name:
"name": "oauth-2-ionic",

There are a few places that uses the baseName, and may need adjusts.
baseName is configured as camelCase at main jhipster.
https://github.com/jhipster/generator-jhipster-ionic/blob/b35f1a6f409f3a1e4a883864f34bafd9f9e490af/generators/ionic/templates/ionic.config.json.ejs#L2
https://github.com/jhipster/generator-jhipster-ionic/blob/b35f1a6f409f3a1e4a883864f34bafd9f9e490af/generators/ionic/templates/capacitor.config.ts.ejs#L5

I just checked out the main branch and tried it. Now it doesn't seem to get the default name from the JHipster backend. I thought it would be flickrIonic, but now it shows hipsterIonic.
? What do you want to name your Ionic application? (hipsterIonic)

Nevermind, I was doing it from the parent directory, not the app I wanted to generate my Ionic app in.


Implement slider

fixes #272

Pull Request Test Coverage Report for Build 1327

17 of 21 (80.95%)  changed or added relevant lines in 2 files are covered.
No unchanged relevant lines lost coverage.
Overall coverage increased (+0.1%) to 72.02%

Changes Missing Coverage
Covered Lines
Changed/Added Lines
%

src/components/Slider/index.js
13
17
76.47%

Totals

Change from base Build 1297:
0.1%

Covered Lines:
680

Relevant Lines:
901

💛  - Coveralls


Appveyor.yml updates for new build process

[ ] Appveyor version is de-facto version for the assembly/docs/etc
[ ] AssemblyInfo updates from appveyor version
[ ] Nuget package version from appveyor version
[ ] Appveyor initiates deployment to Nuget/GitHubReleases from release branch builds only

Link to Issue #2

Kamino cloned this issue to commandlineparser/commandlineX


Consistent Number exceeds 2^53-1 errors on Windows

A fresh install of the latest d5e87de0433e2a3656ebcbec3f737fa40b13173b on Windows quickly crashes with several ``Number exceeds 2^53-1` errors. Apparently not a single block is parsed successfully. The same behavior shows for every run.
Similar to #26 but shows whether miner is active or not.
Pasting the observed output here:
$ bin\start.bat
[info] Chain is loading.
[info] Content server listening on port 9301
[info] Opening ChainDB...
[info] Chain is loading.
[info] Opening ChainDB...
[debug] AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:153:5)
    at Object.read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:175:19)
    at BufferReader.read64 (I:\Decentraland\bronzeage-node\lib\utils\reader.js:332:18)
    at Output.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:259:15)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:282:23)
    at TX.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2158:30)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2121:19)
    at Block.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\block.js:753:13)
    at Block.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:774:15)
    at Function.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:798:22)
[error] Number exceeds 2^53-1
[error] Number exceeds 2^53-1
{ AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:153:5)
    at Object.read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:175:19)
    at BufferReader.read64 (I:\Decentraland\bronzeage-node\lib\utils\reader.js:332:18)
    at Output.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:259:15)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:282:23)
    at TX.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2158:30)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2121:19)
    at Block.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\block.js:753:13)
    at Block.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:774:15)
    at Function.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:798:22)
  generatedMessage: false,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '==' }
{ AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:153:5)
    at Object.read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:175:19)
    at BufferReader.read64 (I:\Decentraland\bronzeage-node\lib\utils\reader.js:332:18)
    at Output.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:259:15)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:282:23)
    at TX.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2158:30)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2121:19)
    at Block.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\block.js:753:13)
    at Block.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:774:15)
    at Function.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:798:22)
  generatedMessage: false,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '==' }
[debug] AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:153:5)
    at Object.read64 (I:\Decentraland\bronzeage-node\lib\utils\encoding.js:175:19)
    at BufferReader.read64 (I:\Decentraland\bronzeage-node\lib\utils\reader.js:332:18)
    at Output.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:259:15)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\output.js:282:23)
    at TX.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2158:30)
    at Function.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\tx.js:2121:19)
    at Block.fromReader (I:\Decentraland\bronzeage-node\lib\primitives\block.js:753:13)
    at Block.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:774:15)
    at Function.fromRaw (I:\Decentraland\bronzeage-node\lib\primitives\block.js:798:22)
[error] Number exceeds 2^53-1
^CTerminate batch job (Y/N)? y

$

An existing install of earlier code on the same Windows system runs fine.

A fresh install of the testnet v2 commit 3c987dab84245c38cbfc8118c76609e58ccda3e9 on the same Windows system runs fine. Something has changed since that commit.

A fresh install of the latest on a Linux system runs fine. Specific to Windows, or at least my Windows system.

The web interface is a significant change since the testnet v2 commit. Didn't really expect it to cause this error but tried just in case. Same behavior without the web interface running.

Had same error, on Linux Ubuntu in VM on top windows 10:
Starting node
[info] Chain is loading.
[info] Checkpoints are enabled.
[info] Coin cache is enabled.
[info] Content server listening on port 9301
[info] Opening ChainDB...
[info] Chain is loading.
[info] Checkpoints are enabled.
[info] Coin cache is enabled.
[info] Opening ChainDB...
[error] Number exceeds 2^53-1
[error] Number exceeds 2^53-1
{ AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (/root/DCL/bronzeage-node/lib/utils/encoding.js:153:5)
    at Object.read64 (/root/DCL/bronzeage-node/lib/utils/encoding.js:175:19)
    at BufferReader.read64 (/root/DCL/bronzeage-node/lib/utils/reader.js:332:18)
    at Output.fromReader (/root/DCL/bronzeage-node/lib/primitives/output.js:260:15)
    at Function.fromReader (/root/DCL/bronzeage-node/lib/primitives/output.js:283:23)
    at TX.fromReader (/root/DCL/bronzeage-node/lib/primitives/tx.js:2158:30)
    at Function.fromReader (/root/DCL/bronzeage-node/lib/primitives/tx.js:2121:19)
    at Block.fromReader (/root/DCL/bronzeage-node/lib/primitives/block.js:753:13)
    at Block.fromRaw (/root/DCL/bronzeage-node/lib/primitives/block.js:774:15)
    at Function.fromRaw (/root/DCL/bronzeage-node/lib/primitives/block.js:798:22)
  generatedMessage: false,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '==' }
{ AssertionError [ERR_ASSERTION]: Number exceeds 2^53-1
    at Object._read64 (/root/DCL/bronzeage-node/lib/utils/encoding.js:153:5)
    at Object.read64 (/root/DCL/bronzeage-node/lib/utils/encoding.js:175:19)
    at BufferReader.read64 (/root/DCL/bronzeage-node/lib/utils/reader.js:332:18)
    at Output.fromReader (/root/DCL/bronzeage-node/lib/primitives/output.js:260:15)
    at Function.fromReader (/root/DCL/bronzeage-node/lib/primitives/output.js:283:23)
    at TX.fromReader (/root/DCL/bronzeage-node/lib/primitives/tx.js:2158:30)
    at Function.fromReader (/root/DCL/bronzeage-node/lib/primitives/tx.js:2121:19)
    at Block.fromReader (/root/DCL/bronzeage-node/lib/primitives/block.js:753:13)
    at Block.fromRaw (/root/DCL/bronzeage-node/lib/primitives/block.js:774:15)
    at Function.fromRaw (/root/DCL/bronzeage-node/lib/primitives/block.js:798:22)
  generatedMessage: false,
  name: 'AssertionError [ERR_ASSERTION]',
  code: 'ERR_ASSERTION',
  actual: false,
  expected: true,
  operator: '==' }
[error] Number exceeds 2^53-1
Swarm listening on /ip4/<IP_ADDRESS>/tcp/4003/ws/ipfs/QmefgK2WootELP2CmBCi1sHHpnVW81hDqm5ZpcsV8mCdDg
Swarm listening on /ip4/<IP_ADDRESS>/tcp/4002/ipfs/QmefgK2WootELP2CmBCi1sHHpnVW81hDqm5ZpcsV8mCdDg
Swarm listening on /ip4/<IP_ADDRESS>/tcp/4002/ipfs/QmefgK2WootELP2CmBCi1sHHpnVW81hDqm5ZpcsV8mCdDg
[info] IPFS ready

testnet runs ok, but when changing to 'main', I have this crash


Refactor Dnsmasq script to support multiple cache ips

This change is a continuation of #54, it modifies the output of the dnsmasq script to host file format which allows round robin DNS entries.
There is a caveat with round robin DNS entries in dnsmasq, they only supports a single address for wildcard domains, for example: *.cdn.blizzard.com.
If previously you had the generated .conf files dumped into a directory where dnsmasq automatically loaded on start-up, you will need to create config that loads all the host files, for example:
lancache.conf
addn-hosts=/etc/dnsmasq.d/blizzard.hosts
addn-hosts=/etc/dnsmasq.d/steam.hosts
addn-hosts=/etc/dnsmasq.d/uplay.hosts

Closes #107.

Looks good to me.
Could you also add a few lines that create the lancache.conf to deal with the addn-hosts config entries that you mentioned?

Can do though the issue here is that we won’t be able to tell what a user actually wants to cache. That’s why I didn’t add it in the initial PR.
Either we create a lancache.conf with everything in there and expect the user the modify it accordingly or expect the user to create it so it only includes their preferences.

The script only adds entries for anything in the specified config.json file, stored as an example next to it named config.example.json
This means you should be able to add any that do not fail the check between lines 38 and 40

@Crabbey apologies it was actually my way of using the generation script because I just used the default cache instead of specifying explicit caches.
https://github.com/uklans/cache-domains/pull/140/commits/b4bd087823b5a42c5cb2e23daa00995ece07ee34 caters for your request.

ping @Crabbey this has been adjusted per your feedback, any chance for a review and merge?

@Crabbey if you're happy I can merge, you understand the script best I think?

@nightah This might be somewhat expected since the pihole doesn't use regular dnsmasq, but this change seemed to break compatibility with the pihole dns.
I reverted to the script before this change and things seem to work.
It looks to me like the "FTLDNS" that the pihole uses doesn't support something about the ".hosts" files:
Aug 30 14:36:30 raspberrypi pihole-FTL[4529]: dnsmasq: bad option at line 1 of /etc/dnsmasq.d/arenanet.hosts

@joshhsoj1902 this still does work with Pi-hole since I actually use it myself.
You need to move the .hosts file outside of /etc/dnsmasq.d/, only the .conf file should reside in that directory.
Obviously when moved out you also need to modify the font file too. I'll post my script that I run with a cron shortly.

@joshhsoj1902 here's a slightly modified version of the script I run daily with cron.
Essentially it modifies the lancache.conf file and tells it to load the .hosts files from /etc/pihole/ instead of /etc/dnsmasq.d/ and copies the respective .conf and .hosts files to the expected locations:
#!/bin/bash

gitresult=$(cd /srv/repos/cache-domains && git pull 2>&1)

if [ "$gitresult" != "Already up to date." ]; then
    output=$(cd /srv/repos/cache-domains/scripts && \
    bash create-dnsmasq.sh && \
    sed -i 's/dnsmasq.d/pihole/g' output/dnsmasq/lancache.conf && \
    rsync -av output/dnsmasq/*.conf /srv/docker/.pihole/dnsmasq/ && \
    rsync -av output/dnsmasq/*.hosts /srv/docker/.pihole/ && \
    docker restart pihole 2>&1)
fi

@nightah Thanks for the tip, I missed that things needed to be in a different folder. I haven't had a chance to try this out but it was definitely all a misunderstanding on my part :)
Thanks so much!


DO NOT MERGE: Add Hidalgo annotation

Copy of #3158, but with Hidalgo as an Annotator (as apposed to Hidalgo as a Transformer). @lmmentel  @Lovkush-A @fkiraly

I'm just wondering what the best way is to get this merged currently with sktime (i.e. not waiting on the annotation base class to be implemented). As an annotator, with a simplified version of the BaseSeriesAnnotator written above, we run into issues with the testing suite, specifically:
annotation > tests > test_all_annotators > test_output_type
"Test instance not found for..."
which I think has something to do with
args = _make_args(estimator, "fit")
where
def _make_fit_args(estimator, **kwargs):
    if isinstance(estimator, BaseForecaster):
        # we need to handle the TransformedTargetForecaster separately
        if isinstance(estimator, _SeriesToSeriesTransformer):
            y = _make_series(**kwargs)
        else:
            # create matching n_columns input, if n_columns not passed
            # e.g., to give bivariate y to strictly multivariate forecaster
            if "n_columns" not in kwargs.keys():
                n_columns = _get_n_columns(
                    estimator.get_tag(tag_name="scitype:y", raise_error=False)
                )[0]
                y = make_forecasting_problem(n_columns=n_columns, **kwargs)
            else:
                y = make_forecasting_problem(**kwargs)
        fh = 1
        X = None
        return y, X, fh
    elif isinstance(estimator, BaseSeriesAnnotator):
        X = make_annotation_problem(**kwargs)
        return (X,)
    elif isinstance(estimator, (BaseClassifier, BaseEarlyClassifier)):
        return make_classification_problem(**kwargs)
    elif isinstance(estimator, BaseRegressor):
        return make_regression_problem(**kwargs)
    elif isinstance(
        estimator, (_SeriesToPrimitivesTransformer, _SeriesToSeriesTransformer)
    ):
        X = _make_series(**kwargs)
        return (X,)
    elif isinstance(estimator, (_PanelToTabularTransformer, _PanelToPanelTransformer)):
        return make_classification_problem(**kwargs)
    elif isinstance(estimator, BaseTransformer) and estimator.get_tag("requires_y"):
        return make_classification_problem(**kwargs)
    elif isinstance(estimator, BaseTransformer):
        X = _make_series(**kwargs)
        return (X,)
    elif isinstance(estimator, BaseClusterer):
        return (make_clustering_problem(**kwargs),)
    elif isinstance(estimator, BasePairwiseTransformer):
        return None, None
    elif isinstance(estimator, BasePairwiseTransformerPanel):
        return None, None
    elif isinstance(estimator, BaseAligner):
        X = [_make_series(n_columns=2, **kwargs), _make_series(n_columns=2, **kwargs)]
        return (X,)
    else:
        raise ValueError(_get_err_msg(estimator))

plus a whole bunch in tests > test_all_estimators

for a similar reason I think
@fkiraly @Lovkush-A @lmmentel @aiwalter
keep going with Hidalgo as a transformer (for now) or find a way around this road block?

I guess this can be closed?


having trouble when using bar

when I using the bar chart, could it be possible not to draw x/y axis on chart?

Closing this issue as abandoned. @jayshao830413 if your issue is still occurring, please re-open this issue.


OnItemClickListener - Isometric.Item isn't public

MainActivity.java
        isometricView.setClickListener(new IsometricView.OnItemClickListener() {
            @Override
            public void onClick(@NonNull Isometric.Item item) {

            }
        });

I cannot access Isometric.Item (error: Item is not public in Isometric; cannot be accessed from outside package). This is a feature or bug? :)
PS: Your library is awesome. 👍

Hi,
thanks for the bug report, please test with  'io.fabianterhorst:Isometric:<IP_ADDRESS>'


Windows

Add support. Probably limited.
https://github.com/steida/este#prerequisites

Add something like that https://github.com/pedestal/pedestal#supported-platforms, Este.js for Windows will have limited features, because Flow Jest etc.

Fixed by @solcik, thank you!


HttpServer now exposes most things publicly so that composition can b…

Hey, I love the server you wrote.  I spent a few days reviewing alternatives to wcf for some simple webservices that don't need the overhead of SOAP and your server had all the features, simplicity, and lightweightness that I was looking for.  I made a few changes to allow https instead of just http, and exposed most of what you had a protected as public so that composition can be used instead of inheritance.  If you are interested in merging the changes into the project, here is a pr.
Thanks!
Joey

Hello! Thank you for your contribution! Looks good to me 👍


Open link in new tab

Fixes #8
Added  target="_blank" on all links to Open Links in New Tab

Thanks for the contribution @rk9595!


fix: make gas price fetching more accurate

:tada: This PR is included in version 2.0.1-beta.34 :tada:
The release is available on:

npm package (@beta dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


updating readme.md

Is your feature request related to a problem? Please describe.
readme.md is monotonous of this project, like to update it.
Describe the solution you'd like
Giving a vivid and clear readme.md for this project.

@harshsingh32 This issue is solved in #174 , Do checkout and give a review


[tabular] Allow feature importance calculation during fitting when num_bag_folds >= 2

Description
When fitting bagged models with >= 2 folds, it may be redundant to set aside an additional set of validation data in order to calculate feature importance.
Current workflow

Set aside a separate validation set (val) from train data (train)
TabularPredictor.fit(train, num_bag_folds=10)
Calculate feature importance with TabularPredictor.feature_importance(val)
Refit full model with extra val data: TabularPredictor.refit_full(train_data_extra=val)

For large datasets, this can result in unnecessarily long training times due to the multiple fitting steps and not taking advantage of the built-in validation data in the form of the held-out folds. Additionally, this separates the feature importance calculation from the cross-validation process.
Requested workflow
When calling TabularPredictor.fit(), include a feature_importance flag which, when included in combination with num_bag_folds >=2, will automatically calculate feature importance for each held-out fold during training.

TabularPredictor.fit(all_data, num_bag_folds=10, feature_importance=True, refit_full=True)

Semi-related to #3515

Hi @dluks, thanks for creating an issue!
I actually really wanted this add support for this in AutoGluon, but the more I thought about it the more I realized several key issues when trying to make it work with multi-layer stacking.

To calculate the importance of a feature in a stacker model, you first need to get predictions from the base models with that specific feature shuffled in the same way to get the out-of-fold predictions. You would need to get the specific held-out fold indices for each fold model and only predict on those indices, then concatenate them together. This is complicated, but technically do-able with the correct implementation, albeit slower to compute than the holdout method.
However, for performance optimization reasons, we only fit one model for KNN and random forest families, using internal implementation details to get an approximation to the out-of-fold prediction probabilities (efficient leave-one-out for KNN, out-of-bag for RF). To do (1) for these models would be very complicated, especially RF, and would require model-specific code.

We could partially avoid these issues by not re-calculating the base model out-of-fold predictions when computing feature importance with val data, but then the feature importances would technically be incorrect and potentially misleading, which I'd prefer to avoid (since the base model predictions would be computed on the original unshuffled version of the feature).
tl;dr: I believe it is technically possible to do this, but requires a good deal of development effort to achieve.


reorganize init.lua to a multi file setup

I understand the kickstart init.lua is single-file by design, and most likely this PR will not be accepted and that's fine. I just think a multi-file approach is better, even for beginners. In any case thanks for the kickstart.nvim it is the best starting point for nvim configuration.

Hi there!
First off, thanks for your contribution! The beauty of open source is that there's no harm in submitting a PR.
As you say, the nature of this particular project is that it's largely a single file. One file to read. One file to understand.
Would you consider starting a fork? That way you could maintain whatever organization makes sense for you, and folks can use your fork instead who want a multiple file approach.
As always I welcome community input. If folks feel very strongly that a multiple file approach makes more sense, then please chime in here. If enough people feel this way we can re-open and reconsider this PR, but I'm closing it for now.

@feoh thanks for the feedback.
Regarding the fork, yes, my multi-file kickstart fork is here:
https://github.com/dam9000/kickstart-modular.nvim

As you say, the nature of this particular project is that it's largely a single file. One file to read. One file to understand

This is what makes me find it usable, I've tried to use neovim many times, but only this one helps me dive into the world of neovim.
It's a single file, it's best for new-bee who doesn't have any neovim experience.

@dam9000 That's fantastic! With your approval I'll add a note to the README for folks who might prefer a multi-file approach so they can more easily find your project.

@feoh Sure, of course I approve and welcome if you can add a link to my multi-file fork to the README. And I'll try to do my best to keep it up to date with all the upstream changes, while making no other functional changes.

I know that maintaining oss projects is hard
so I am here to thank you all for both the single file kickstart, the modular kickstart and the starter
as someone new to neovim I find all of them very helpful and a good augmentation for my learning as I get into the weeds
appreciate y'all

This kickstart finally kickstarted my journey into neovim fully. I'd started and stopped so many times, but I'm going fully in now -- I even deleted VSCode to force myself -- and its been going pretty well.

Just need to modularize the init file now so that I don't have to keep quitting neovim every time I make a change.


review comments - security (0.1)

There is no requirement about security RoT in v0.1 spec. Recommand to add:

To support secure (verified) boot, the SoC must contain immutable boot code (e.g. ROM, OTP) as the RoT for verification.
The SoC should provide capability for immutable security parameter provisioning, such as public key for secure boot verification, and possible private key for confidential data decryption.

Thank you. This was omitted due to the requirements being covered by the RISC-V security model . The security model provides recipes for various security models. I think the security section of the Server SoC specification can be improved with a more explicit reference to the security model but avoid redundancy by repeating the requirements. I will propose an update in a PR shortly.

Thank you. This was omitted due to the requirements being covered by the RISC-V security model . The security model provides recipes for various security use cases. I think the security section of the Server SoC specification can be improved with a more explicit reference to the security model but avoid redundancy by repeating the requirements. I will propose an update in a PR shortly.

That's good to reference existing security mode spec to avoid redundancy, but it's better to explicit mention that and list which secuirty requirement should be implemented for a Server SoC, or all of that in security model.

@sfu5 thanks. I have provided cross references to the security model in SEC_005 through SEC_007 in this commit

Please reopen if there is further feedback.


Having problems when using example: dbl has no attribute Client

Expected Behavior
Example from https://discordbots.org/api/docs#pylib should work.
Current Behavior
It does not work, and says AttributeError: module 'dbl' has no attribute 'Client'.
Development Environemt

Python 3, DBLpy v0.3.2, Linux Debian 9.
Steps to Reproduce

Just use the same code you use but with the latest update.
Context
I was upgrading Discord.py to latest version, as it had many breaking changes.
Possible Solution

Just update https://discordbots.org/api/docs#pylib to be in the same version as v0.3.2 and has breaking changes announced here https://dblpy.readthedocs.io/en/latest/whats_new.html BREAKING CHANGE: Client class has been renamed to DBLClient .

@tonkku107