 Other repos (e.g. corfu, tempel) have updated, but they all have their upstream URL as the ELPA URL, while org points to the org cgit repo. The last commit is on the day before af571207c9c0b00e3de9ab92474be16280d15909 got committed, so the issue is probably there, but from the code I'm not really sure what it would be.

OK, I'll take a look - thanks for the report.

Hmmm, it seems we have two separate repositories. I think the correct one is https://github.com/emacs-straight/org, while https://github.com/emacs-straight/org-mode is coming from somewhere else. Let me see why we have two...

Ok, I guess based on the repository descriptions, https://github.com/emacs-straight/org is the ELPA version, which is tracked separately by the GNU folks, while https://github.com/emacs-straight/org-mode comes directly from upstream and is what straight.el uses by default when using the org-elpa recipe repository.
Since https://git.savannah.gnu.org/cgit/emacs/org-mode.git/commit/ has recent commits but https://github.com/emacs-straight/org-mode doesn't, it seems like something has been lost in the mirroring logic. Yet the repository description is being updated...

This is really interesting. For whatever reason, there is a bug in how certain types of updates are handled by the Git invocation run by GNU ELPA Mirror. I reproduced a similar issue when I ran locally, but when deleting the local checkout and letting it be cloned again, things worked.
When this application ran on Heroku, the entire working directory got wiped after every run. After I moved it to Railway, this no longer happens (though I didn't think through the implications of that at the time).
It would be ideal to avoid having to wipe the working directory, since then each run takes a lot longer, which is more expensive in terms of hosting costs. So let me see if I can work out the bug that is being encountered.

OK, the problem is the Git commands I was using to --mirror Git repositories were just flat out wrong. I started https://github.com/radian-software/gnu-elpa-mirror/pull/13 to fix this issue and will finish it when I have a moment. In the meantime, I manually unstuck org-mode and cleared the Railway working directories, so we should be good until then at least.


cuda error out of memory

What is the issue?
Hello Team,
Below is the attached server log; I am trying to run llama3.1 70B on
5700x, 23GB RAM and p100 16GB,
the model loads successfully, but as soon as the prompt is sent, within seconds, I receive the error:
"Error: error reading llm response: read tcp <IP_ADDRESS>:49245-><IP_ADDRESS>:49210: wsarecv: An existing connection was forcibly closed by the remote host."
I have set OLLAMA_MAX_VRAM in environment variables, but it is not in the server logs below.
lama3.1 normal size is working fine; anything larger results in the same.
2024/08/16 07:56:25 routes.go:1125: INFO server config env="map[CUDA_VISIBLE_DEVICES: GPU_DEVICE_ORDINAL: HIP_VISIBLE_DEVICES: HSA_OVERRIDE_GFX_VERSION: OLLAMA_DEBUG:false OLLAMA_FLASH_ATTENTION:false OLLAMA_HOST:http://<IP_ADDRESS>:11434 OLLAMA_INTEL_GPU:false OLLAMA_KEEP_ALIVE:5m0s OLLAMA_LLM_LIBRARY: OLLAMA_MAX_LOADED_MODELS:0 OLLAMA_MAX_QUEUE:512 OLLAMA_MODELS:C:\\Users\\Dummy\\.ollama\\models OLLAMA_NOHISTORY:false OLLAMA_NOPRUNE:false OLLAMA_NUM_PARALLEL:0 OLLAMA_ORIGINS:[http://localhost https://localhost http://localhost:* https://localhost:* http://<IP_ADDRESS> https://<IP_ADDRESS> http://<IP_ADDRESS>:* https://<IP_ADDRESS>:* http://<IP_ADDRESS> https://<IP_ADDRESS> http://<IP_ADDRESS>:* https://<IP_ADDRESS>:* app://* file://* tauri://*] OLLAMA_RUNNERS_DIR:C:\\Users\\Dummy\\AppData\\Local\\Programs\\Ollama\\ollama_runners OLLAMA_SCHED_SPREAD:false OLLAMA_TMPDIR: ROCR_VISIBLE_DEVICES:]" time=2024-08-16T07:56:25.534+10:00 level=INFO source=images.go:782 msg="total blobs: 35" time=2024-08-16T07:56:25.537+10:00 level=INFO source=images.go:790 msg="total unused blobs removed: 0" time=2024-08-16T07:56:25.539+10:00 level=INFO source=routes.go:1172 msg="Listening on <IP_ADDRESS>:11434 (version 0.3.6)" time=2024-08-16T07:56:25.540+10:00 level=INFO source=payload.go:44 msg="Dynamic LLM libraries [rocm_v6.1 cpu cpu_avx cpu_avx2 cuda_v11.3]" time=2024-08-16T07:56:25.540+10:00 level=INFO source=gpu.go:204 msg="looking for compatible GPUs" time=2024-08-16T07:56:25.692+10:00 level=INFO source=gpu.go:288 msg="detected OS VRAM overhead" id=GPU-1c56ec58-85cd-2097-8b24-bca0994cb6a5 library=cuda compute=6.0 driver=12.4 name="Tesla P100-PCIE-16GB" overhead="254.6 MiB" time=2024-08-16T07:56:25.693+10:00 level=INFO source=types.go:105 msg="inference compute" id=GPU-1c56ec58-85cd-2097-8b24-bca0994cb6a5 library=cuda compute=6.0 driver=12.4 name="Tesla P100-PCIE-16GB" total="15.9 GiB" available="15.6 GiB" [GIN] 2024/08/16 - 07:56:25 | 200 |            0s |       <IP_ADDRESS> | HEAD     "/" [GIN] 2024/08/16 - 07:56:25 | 200 |     18.1911ms |       <IP_ADDRESS> | POST     "/api/show" time=2024-08-16T07:56:26.010+10:00 level=INFO source=memory.go:309 msg="offload to cuda" layers.requested=-1 layers.model=81 layers.offload=29 layers.split="" memory.available="[15.6 GiB]" memory.required.full="39.3 GiB" memory.required.partial="15.2 GiB" memory.required.kv="640.0 MiB" memory.required.allocations="[15.2 GiB]" memory.weights.total="36.5 GiB" memory.weights.repeating="35.7 GiB" memory.weights.nonrepeating="822.0 MiB" memory.graph.full="324.0 MiB" memory.graph.partial="1.1 GiB" time=2024-08-16T07:56:26.022+10:00 level=INFO source=server.go:393 msg="starting llama server" cmd="C:\\Users\\Dummy\\AppData\\Local\\Programs\\Ollama\\ollama_runners\\cuda_v11.3\\ollama_llama_server.exe --model C:\\Users\\Dummy\\.ollama\\models\\blobs\\sha256-a677b4a4b70c45e702b1d600f7905e367733c53898b8be60e3f29272cf334574 --ctx-size 2048 --batch-size 512 --embedding --log-disable --n-gpu-layers 29 --no-mmap --parallel 1 --port 49305" time=2024-08-16T07:56:26.026+10:00 level=INFO source=sched.go:445 msg="loaded runners" count=1 time=2024-08-16T07:56:26.026+10:00 level=INFO source=server.go:593 msg="waiting for llama runner to start responding" time=2024-08-16T07:56:26.026+10:00 level=INFO source=server.go:627 msg="waiting for server to become available" status="llm server error" INFO [wmain] build info | build=3535 commit="1e6f6554" tid="20688" timestamp=1723758986 INFO [wmain] system info | n_threads=8 n_threads_batch=-1 system_info="AVX = 1 | AVX_VNNI = 0 | AVX2 = 0 | AVX512 = 0 | AVX512_VBMI = 0 | AVX512_VNNI = 0 | AVX512_BF16 = 0 | FMA = 0 | NEON = 0 | SVE = 0 | ARM_FMA = 0 | F16C = 0 | FP16_VA = 0 | WASM_SIMD = 0 | BLAS = 1 | SSE3 = 1 | SSSE3 = 1 | VSX = 0 | MATMUL_INT8 = 0 | LLAMAFILE = 1 | " tid="20688" timestamp=1723758986 total_threads=16 INFO [wmain] HTTP server listening | hostname="<IP_ADDRESS>" n_threads_http="15" port="49305" tid="20688" timestamp=1723758986 llama_model_loader: loaded meta data with 29 key-value pairs and 724 tensors from C:\Users\Dummy\.ollama\models\blobs\sha256-a677b4a4b70c45e702b1d600f7905e367733c53898b8be60e3f29272cf334574 (version GGUF V3 (latest)) llama_model_loader: Dumping metadata keys/values. Note: KV overrides do not apply in this output. llama_model_loader: - kv   0:                       general.architecture str              = llama llama_model_loader: - kv   1:                               general.type str              = model llama_model_loader: - kv   2:                               general.name str              = Meta Llama 3.1 70B Instruct llama_model_loader: - kv   3:                           general.finetune str              = Instruct llama_model_loader: - kv   4:                           general.basename str              = Meta-Llama-3.1 llama_model_loader: - kv   5:                         general.size_label str              = 70B llama_model_loader: - kv   6:                            general.license str              = llama3.1 llama_model_loader: - kv   7:                               general.tags arr[str,6]       = ["facebook", "meta", "pytorch", "llam... llama_model_loader: - kv   8:                          general.languages arr[str,8]       = ["en", "de", "fr", "it", "pt", "hi", ... llama_model_loader: - kv   9:                          llama.block_count u32              = 80 llama_model_loader: - kv  10:                       llama.context_length u32              = 131072 llama_model_loader: - kv  11:                     llama.embedding_length u32              = 8192 llama_model_loader: - kv  12:                  llama.feed_forward_length u32              = 28672 llama_model_loader: - kv  13:                 llama.attention.head_count u32              = 64 llama_model_loader: - kv  14:              llama.attention.head_count_kv u32              = 8 llama_model_loader: - kv  15:                       llama.rope.freq_base f32              =<PHONE_NUMBER>00 llama_model_loader: - kv  16:     llama.attention.layer_norm_rms_epsilon f32              = 0.000010 llama_model_loader: - kv  17:                          general.file_type u32              = 2 llama_model_loader: - kv  18:                           llama.vocab_size u32              = 128256 llama_model_loader: - kv  19:                 llama.rope.dimension_count u32              = 128 llama_model_loader: - kv  20:                       tokenizer.ggml.model str              = gpt2 llama_model_loader: - kv  21:                         tokenizer.ggml.pre str              = llama-bpe llama_model_loader: - kv  22:                      tokenizer.ggml.tokens arr[str,128256]  = ["!", "\"", "#", "$", "%", "&", "'", ... llama_model_loader: - kv  23:                  tokenizer.ggml.token_type arr[i32,128256]  = [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, ... llama_model_loader: - kv  24:                      tokenizer.ggml.merges arr[str,280147]  = ["Ġ Ġ", "Ġ ĠĠĠ", "ĠĠ ĠĠ", "... llama_model_loader: - kv  25:                tokenizer.ggml.bos_token_id u32              = 128000 llama_model_loader: - kv  26:                tokenizer.ggml.eos_token_id u32              = 128009 llama_model_loader: - kv  27:                    tokenizer.chat_template str              = {{- bos_token }}\n{%- if custom_tools ... llama_model_loader: - kv  28:               general.quantization_version u32              = 2 llama_model_loader: - type  f32:  162 tensors llama_model_loader: - type q4_0:  561 tensors llama_model_loader: - type q6_K:    1 tensors time=2024-08-16T07:56:26.287+10:00 level=INFO source=server.go:627 msg="waiting for server to become available" status="llm server loading model" llm_load_vocab: special tokens cache size = 256 llm_load_vocab: token to piece cache size = 0.7999 MB llm_load_print_meta: format           = GGUF V3 (latest) llm_load_print_meta: arch             = llama llm_load_print_meta: vocab type       = BPE llm_load_print_meta: n_vocab          = 128256 llm_load_print_meta: n_merges         = 280147 llm_load_print_meta: vocab_only       = 0 llm_load_print_meta: n_ctx_train      = 131072 llm_load_print_meta: n_embd           = 8192 llm_load_print_meta: n_layer          = 80 llm_load_print_meta: n_head           = 64 llm_load_print_meta: n_head_kv        = 8 llm_load_print_meta: n_rot            = 128 llm_load_print_meta: n_swa            = 0 llm_load_print_meta: n_embd_head_k    = 128 llm_load_print_meta: n_embd_head_v    = 128 llm_load_print_meta: n_gqa            = 8 llm_load_print_meta: n_embd_k_gqa     = 1024 llm_load_print_meta: n_embd_v_gqa     = 1024 llm_load_print_meta: f_norm_eps       = 0.0e+00 llm_load_print_meta: f_norm_rms_eps   = 1.0e-05 llm_load_print_meta: f_clamp_kqv      = 0.0e+00 llm_load_print_meta: f_max_alibi_bias = 0.0e+00 llm_load_print_meta: f_logit_scale    = 0.0e+00 llm_load_print_meta: n_ff             = 28672 llm_load_print_meta: n_expert         = 0 llm_load_print_meta: n_expert_used    = 0 llm_load_print_meta: causal attn      = 1 llm_load_print_meta: pooling type     = 0 llm_load_print_meta: rope type        = 0 llm_load_print_meta: rope scaling     = linear llm_load_print_meta: freq_base_train  = 500000.0 llm_load_print_meta: freq_scale_train = 1 llm_load_print_meta: n_ctx_orig_yarn  = 131072 llm_load_print_meta: rope_finetuned   = unknown llm_load_print_meta: ssm_d_conv       = 0 llm_load_print_meta: ssm_d_inner      = 0 llm_load_print_meta: ssm_d_state      = 0 llm_load_print_meta: ssm_dt_rank      = 0 llm_load_print_meta: model type       = 70B llm_load_print_meta: model ftype      = Q4_0 llm_load_print_meta: model params     = 70.55 B llm_load_print_meta: model size       = 37.22 GiB (4.53 BPW)  llm_load_print_meta: general.name     = Meta Llama 3.1 70B Instruct llm_load_print_meta: BOS token        = 128000 '<|begin_of_text|>' llm_load_print_meta: EOS token        = 128009 '<|eot_id|>' llm_load_print_meta: LF token         = 128 'Ä' llm_load_print_meta: EOT token        = 128009 '<|eot_id|>' llm_load_print_meta: max token length = 256 ggml_cuda_init: GGML_CUDA_FORCE_MMQ:    no ggml_cuda_init: GGML_CUDA_FORCE_CUBLAS: no ggml_cuda_init: found 1 CUDA devices:   Device 0: Tesla P100-PCIE-16GB, compute capability 6.0, VMM: no llm_load_tensors: ggml ctx size =    0.68 MiB llm_load_tensors: offloading 29 repeating layers to GPU llm_load_tensors: offloaded 29/81 layers to GPU llm_load_tensors:  CUDA_Host buffer size = 24797.81 MiB llm_load_tensors:      CUDA0 buffer size = 13312.82 MiB
OS
Windows
GPU
Nvidia
CPU
AMD
Ollama version
0.3.6

Ensure your system has enough resources. Llama 70B is very resource-intensive. Your P100 GPU has 16GB of VRAM, which might not be sufficient for such a large model. The server log indicates that the required memory is much higher than what is available:
Memory required: 39.3 GiB (full), 15.2 GiB (partial), 640.0 MiB (kv)
Memory available: 15.6 GiB

Ensure your system has enough resources. Llama 70B is very resource-intensive. Your P100 GPU has 16GB of VRAM, which might not be sufficient for such a large model. The server log indicates that the required memory is much higher than what is available:
Memory required: 39.3 GiB (full), 15.2 GiB (partial), 640.0 MiB (kv) Memory available: 15.6 GiB

Will it not load it partially? I get a similar error for  gemma2:27b
I saw some closed bugs which were resolved by using OLLAMA_MAX_VRAM

The setting of OLLAMA_MAX_VRAM should not exceed the size of the physical video memory. It is recommended to be slightly lower than the physical video memory to ensure system stability and normal operation of the model. Forcibly setting a higher OLLAMA_MAX_VRAM may cause program errors. If you need more video memory, the only solution is to upgrade to a GPU with more video memory.

Use nvidia-smi to get information about your available physical video memory

I don't think OLLAMA_MAX_VRAM is a supported variable in the current code base.  It may have been used in the past, but now it just sets the value of MaxVRAM which is not referenced anywhere else in the code base as far as I can tell.  However, the amount of VRAM used by a model can be controlled by setting the number of layers to be offloaded to the GPU with num_gpu, either in the CLI with /set parameter num_gpu xx, via the API with curl localhost:11434/api/generate -d '{"model":"model-name","options":{"num_gpu",xx}}', or by creating a new model by setting PARAMETER num_gpu xx in a Modelfile.

I don't think OLLAMA_MAX_VRAM is a supported variable in the current code base. It may have been used in the past, but now it just sets the value of MaxVRAM which is not referenced anywhere else in the code base as far as I can tell. However, the amount of VRAM used by a model can be controlled by setting the number of layers to be offloaded to the GPU with num_gpu, either in the CLI with /set parameter num_gpu xx, via the API with curl localhost:11434/api/generate -d '{"model":"model-name","options":{"num_gpu",xx}}', or by creating a new model by setting PARAMETER num_gpu xx in a Modelfile.

The model loads perfectly, but when I send a prompt, it crashes; I have seen people use heavier models with less Vram.
also could I set num_gpu in environment variables, I cannot seem to find any proper documentation on the usage of this parameter

How are you loading the model?  How do you send a prompt?

How are you loading the model? How do you send a prompt?
from cmd cli
ollama run gemma2:27b

OK, after the model is loaded, check the logs for a line that says llm_load_tensors: offloaded 29/81 layers to GPU.  The first number is the number layers offloaded for this model - each model will be different, so if you load llama3.1:70b, you need to find this number again.
Now, at the >>> prompt of the cmd cli, type
/set parameter num_gpu 20

where 20 is some number less than the one you found in the log.  ollama will reload the model with a smaller VRAM footprint, and now you can send a normal prompt to see if it works any better.  If it does, it means that ollama is over optimistic in its memory calculations and offloading too much to the GPU.  The ollama team have mentioned in some tickets recently that they are looking in to the issue.  You can also try enabling flash attention (OLLAMA_FLASH_ATTENTION=1) as that make more efficient use of VRAM, but is not supported for all models (although I think llama3.1 and gemma2 are supported).

llm_load_tensors: ggml ctx size =    0.45 MiB
llm_load_tensors: offloading 42 repeating layers to GPU
llm_load_tensors: offloaded 42/47 layers to GPU

it worked, I set it to 32

Awesome, thank you so much

See here for a way to change the default num_gpu value for a model, so that you don't need to /set parameter num_gpu xx every time you load a model.

@qazimurtazafair you mention a 5700 as well, but I don't see it discovered in the logs.  Keep in mind we can not split a single model across different vendors GPUs, so a mixed AMD + NVIDIA setup like this is only useful for loading multiple models concurrently.  Do you have the AMD drivers installed on your system?  If so, we should dig into that to understand why it's not being discovered.  OLLAMA_DEBUG=1 logs may help with that.
Looking at the initial logs you shared, it looks like you're attempting to load a model that is ~39.3G on a system that has 16G VRAM + 23G RAM (~=39G in total) so you're likely pushing into swap and thrashing, which may be contributing to the problem.  We have some checks in place to detect and prevent loading a model that is impossible on the current system, but we include swap in the calculation since some users are OK with slow performance to load larger models.
As to gemma2:27b, that's going to be a tad big to fully fit on your GPU given other overheads, but our goal is it should load the correct number of layers automatically.  I don't have an identical test system, but on a 16G GPU on Linux with no overhead, we're able to load 44/47 layers without crashing.  Could you share a log of ollama attempting to load it with the default gpu setting (and crashing) and then one with your manually reduced num_gpu setting, along with the nvidia-smi output after it loads?


using font icon

I think it will be good to using font icon to all icon

So do i! There is an issue for it here: #13


JsonWriter can write json value by raw String.

Can write json value by raw String.
Sample:
StringWriter sw = new StringWriter();
JsonWriter jw = new JsonWriter(sw);
	jw.name("data");
	jw.rawValue("[1,2,3,4,5]");

	jw.close();
	String s = sw.toString();

Isn't this pretty much exactly the same as calling value(Object)? Looks like code duplication to me. The only difference here is that it's not quoting the value?

It is a big difference: you can write JSON values yourself. I considered different naming: valueRaw, valueJson, jsonValue, json. Not sure what is best.
There is some code duplication that can be cleaned up (not only from this PR).

in the sample,   use value("[1,2,3,4,5]") , the result is  "data":"[1,2,3,4,5]", the value is a String;
but use rawValue("[1,2,3,4,5]") , the result is "data": [1,2,3,4,5], the value is a List.
We can set the json value directly by String.
the name json(String value) and json(String name, String value) is very good.


feat: store-1342 - fix duplicate network names

The documentation is here (is still being completed): https://www.notion.so/cede-labs/Networks-mapping-d017df9c658c48b9b0560ff9f8d7ec7c?pvs=4#642e335870e34b6fa415bf454dda959a

@neeeekitos can you bump the package.json?

@NeOMakinG bumped the version

@neeeekitos feel free to publish the package when needed


I think this commit bring in iOS build error

As I try to compile a ios framework, and faced the error
"metal_shared_resources.h" not exist. I went to check the previous commits
seems this commit https://github.com/google/mediapipe/commit/54d1744c8f5ee102679386b84e3e3812e352bc7a
bring the reference of these files metal_shared_resources.h & metal_shared_resources.mm
but didnt put the related file there
which cause the error
could you plz go have a check?

Hi @camillol,
Could you check this issue here.

Add a related issue: https://github.com/google/mediapipe/issues/3885
Currently only downgrade mediapipe to the version before this commit could work.

@kuaashish awesome, thx, I will help verify this later today.


JobCtx.Save() will overwrite results if used by a callback

Currently a JobCtx is available to both callbacks and handlers. Calling JobCtx.Save() twice will overwrite the previous results.

It would help to have some kind of separation at the JobCtx level to distinguish between such multiple callers.

Don't commit if the job status indicates completion?

Hmm, I'm unclear. The issue is there's a common JobCtx passed to all callbacks (success, failed, retry, etc) and also used to store results. It'll be overridden each time JobCtx.Save() is called.
This is how JobCtx looks like right now.
// JobCtx is passed onto handler functions. It allows access to a job's meta information to the handler.
type JobCtx struct {
       // backend store for results
	store Results
	// results just holds the results set by calling Save().
	results []byte
	Meta    Meta
}

I plan on adding separate fields for each result (success, failed, retry callbacks).
Something similar to below :
// JobCtx is passed onto handler functions. It allows access to a job's meta information to the handler.
type JobCtx struct {
       // backend store for results
	store Results
	// results just holds the results set by calling Save().
	results []byte
	successResults []byte
        failedResults []byte
}

It'll be overridden each time JobCtx.Save() is called.

It doesn't have to, right? When Save() is called, check the job status internally to see if it's actually mutable or throw an error otherwise (success, failed, retry)?

I mean, why should a completed or failed job be mutable? If a job is complete, it is not correct to save more results to it at an arbitrary point. Results should only be acceptable while the job is in processing.
Multiple results makes sense. Every time a Save() is called, it could be appended to a list internally and access can always be on .Results[].

Ah, I agree that a completed job should no longer be able to write results. The issue here is that there's a single JobCtx, which may be called multiple times during a lifecycle.
Consider the following example:
func simpleHandler(b []byte, ctx JobCtx) error {
  if string(b) == "fail" {
        ctx.Save([]byte("result on failure")
        return fmt.Errorf("the job has failed")
  }
  ctx.Save([]byte("result on success")

 return nil
}

If the job fails, the result saved on the previous line (result on failure) will be lost if a failure callback is registered. The same goes for the result (result on success), which will be overwritten if a success callback is registered.
Multiple results make sense, but as a client, given a job UUID, I should be able to query all the results saved -

Result saved by processing callback
Result saved by success callback
Result saved by handler

Multiple results make sense, but as a client, given a job UUID, I should be able to query all the results saved -
Result saved by processing callback
Result saved by success callback
Result saved by handler

"results" only make sense for completed jobs, semantically. For other states, it is useful metadata to describe those states. I think it's good enough to have a simple []list of payloads that are saved and retrieved. Whether someone saves results on failed or processing can be left to them. In most common usecases, only success will see results being saved.

Thanks for the detailed explanation. This makes sense to me now. The intent of results/data being saved can be left to the client and they must be aware of it while retrieving the same.

Fixed in #22


text area not being saved

Issue description:
hi i've started working with kirk but i'm having a little problem.
i've created a textarea, while editing the preview is updating normally the text i input but when i save&publish and refresh the page the saved text is not more there?
what i'm doing wrong?
thanks
Version used:
(Did you try using the develop branch from github? There's a chance your issue has already been adressed there)
Using theme_mods or options?
theme_mods
Code to reproduce the issue (config + field(s))
//text-area
Kirki::add_field('my_config_test1', array(
    'type' => 'textarea',
    'settings' => 'my_text_area1',
    'section' => 'my_section_test1',
    'label' => __('AREA DE TEXTO'),
    'default' => esc_attr__( 'ESTE É O VALOR DEFAULT', 'jorges' ),
    'priority' => 10,
    'transport' => 'postMessage',
    'js_vars'   => array(
		array(
			'element'  => '#jorges-i1h1',
			'function' => 'html',
		),
    ),
));

Can you please also post your config for my_config_test1 ?

I can't replicate this issue so I'll go ahead and close this ticket.
If you have more info on how to replicate it please feel free to reopen the issue and post an update.


FlutterInappPurchase.purchaseUpdated.listen being called multiple times on iOS

Version of flutter_inapp_purchase
3.0.1
Platforms you faced the error (IOS or Android or both?)
iOS
Expected behavior
FlutterInappPurchase.purchaseUpdated.listen to be called once on a successful purchase.
Actual behavior
FlutterInappPurchase.purchaseUpdated.listen is being called 30+ times
Tested environment (Emulator? Real Device?)
Real device
Steps to reproduce the behavior
@override
  void initState() {
    super.initState();
    asyncInitState();
}

void asyncInitState() async {
    _subscriptionItems = Platform.isIOS
        ? ['SKUOneMonth', 'SKUOneYear']
        : ['sku_one_month', 'sku_one_year'];
    await FlutterInappPurchase.instance.initConnection;
    await FlutterInappPurchase.instance.getSubscriptions(_subscriptionItems);

    _purchaseUpdatedSubscription =
        FlutterInappPurchase.purchaseUpdated.listen((productItem) async {
        print(productItem.transactionReceipt);
    });
}

void _subscribe() async {
    FlutterInappPurchase.instance
        .requestSubscription(_subscriptionItems[_currentSelection]);
}

It is getting the subscriptions when calling FlutterInappPurchase.instance.getSubscriptions and making a successful purchase when calling FlutterInappPurchase.instance         .requestSubscription(_subscriptionItems[_currentSelection]); but the  FlutterInappPurchase.purchaseUpdated.listen callback is being called 30+ times. This is only occurring on iOS.

@chaser79 Have you managed to finish the transaction after purchase?

Yes, purchase does finish. But it gets called multiple times, which can cause another issues (in my case, I get multiple API calls to my backend due to this issue).

Hello,
I was having the same problem but calling FlutterInappPurchase.instance.finishTransaction(productItem); fixed the problem for me. My listener code looks like this now.

@chaser79 Could you attach your full code for IAP, please?
I've based my code around this https://medium.com/bosc-tech-labs-private-limited/how-to-implement-subscriptions-in-app-purchase-in-flutter-7ce8906e608a + provider + having to pass in some extra data about the purchase, and apparently I did something wrong.
Thank you in advance.

@SpajicM Im not sure what you mean? Above is my subscription code.
import 'dart:async';
import 'dart:io';

import 'package:chewie/chewie.dart';
import 'package:dogtraining/helpers/my_dimensions.dart';
import 'package:dogtraining/models/user.dart';
import 'package:dogtraining/networking/network.dart';
import 'package:dogtraining/platform_widgets/platform_alerts.dart';
import 'package:dogtraining/provider/auth/user_provider.dart';
import 'package:dogtraining/widgets/buttons/app_button.dart';
import 'package:flutter/material.dart';
import 'package:flutter_inapp_purchase/flutter_inapp_purchase.dart';
import 'package:material_segmented_control/material_segmented_control.dart';
import 'package:provider/provider.dart';
import 'package:video_player/video_player.dart';

class SubscriptionScreen extends StatefulWidget {
  SubscriptionScreen({Key key}) : super(key: key);

  @override
  _SubscriptionScreenState createState() => _SubscriptionScreenState();
}

class _SubscriptionScreenState extends State<SubscriptionScreen> {
  final String termsText =
      "Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.";

  VideoPlayerController _videoPlayerController;
  ChewieController _chewieController;
  StreamSubscription _purchaseUpdatedSubscription;
  StreamSubscription _purchaseErrorSubscription;
  int _currentSelection = 0;
  List<String> _subscriptionItems;

  @override
  void initState() {
    super.initState();
    asyncInitState();
    _videoPlayerController =
        VideoPlayerController.asset('assets/videos/subscription.mp4')
          ..initialize().then((_) {
            setState(() {});
            _chewieController = ChewieController(
              videoPlayerController: _videoPlayerController,
              aspectRatio: _videoPlayerController.value.aspectRatio,
            );
          });
  }

  @override
  void dispose() async {
    super.dispose();
    _videoPlayerController.dispose();
    _chewieController.dispose();
    _purchaseUpdatedSubscription.cancel();
    _purchaseUpdatedSubscription = null;
    _purchaseErrorSubscription.cancel();
    _purchaseErrorSubscription = null;
    await FlutterInappPurchase.instance.endConnection;
  }

  void asyncInitState() async {
    _subscriptionItems = Platform.isIOS
        ? ['SKUOneMonth', 'SKUOneYear']
        : ['sku_one_month', 'sku_one_year'];
    await FlutterInappPurchase.instance.initConnection;
    await FlutterInappPurchase.instance.getSubscriptions(_subscriptionItems);

    _purchaseUpdatedSubscription =
        FlutterInappPurchase.purchaseUpdated.listen((productItem) async {
      try {
        await Network.instance.post(
          context: context,
          urlExtension: '/api/v1/user/subscription',
          body: {
            'platform': Platform.isIOS ? 'ios' : 'android',
            'receipt': productItem.transactionReceipt,
          },
          expectsResponse: false,
        );
        FlutterInappPurchase.instance.finishTransaction(productItem);
        User user = context.read<UserProvider>().user;
        user.activeSubscription = true;
        context.read<UserProvider>().setAsCurrentUser(user);
        Navigator.of(context).pop(true);
      } catch (e) {
        PlatformErrorAlert(
          context: context,
          message: e.message,
          error: e.error,
        ).show();
      }
    });

    _purchaseErrorSubscription =
        FlutterInappPurchase.purchaseError.listen((purchaseError) {
      if (purchaseError.code != 'E_USER_CANCELLED')
        PlatformErrorAlert(
          context: context,
          message: 'Purchase Error',
          error: purchaseError.message,
        ).show();
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text("Subscribe"),
      ),
      body: Column(
        children: [
          (_chewieController == null)
              ? AspectRatio(
                  aspectRatio: 16 / 9,
                  child: Container(
                    color: Colors.black,
                  ),
                )
              : AspectRatio(
                  aspectRatio: _videoPlayerController.value.aspectRatio,
                  child: Chewie(controller: _chewieController),
                ),
          Expanded(
            child: ListView(
              padding: EdgeInsets.symmetric(
                vertical: MyDimensions.doubleMargin,
                horizontal: MyDimensions.margin,
              ),
              children: [
                Container(
                  padding: EdgeInsets.all(MyDimensions.padding),
                  height: 100,
                  decoration: BoxDecoration(
                    color: Theme.of(context).primaryColor,
                    borderRadius:
                        BorderRadius.circular(MyDimensions.borderRadius),
                  ),
                  child: Row(
                    mainAxisAlignment: MainAxisAlignment.spaceBetween,
                    children: [
                      Image.asset('assets/images/logoLarge.png'),
                      SizedBox(width: MyDimensions.margin),
                      Expanded(
                        child: Text(
                          'Subscribe to The Gundog App',
                          style: Theme.of(context).textTheme.subtitle1.copyWith(
                                color: Colors.white,
                              ),
                        ),
                      ),
                    ],
                  ),
                ),
                SizedBox(height: MyDimensions.margin),
                Text('To train your perfect companion with:'),
                SizedBox(height: MyDimensions.margin),
                Text('- Champion training in your pocket'),
                SizedBox(height: MyDimensions.margin),
                Text('- One third cost of in-person training'),
                SizedBox(height: MyDimensions.margin),
                Text('- Video updates to answer your questions'),
                SizedBox(height: MyDimensions.margin),
                Text('- The perfect gundog step by step'),
                SizedBox(height: MyDimensions.margin),
                MaterialSegmentedControl(
                  selectionIndex: _currentSelection,
                  children: {
                    0: Column(
                      children: [
                        Text("1"),
                        Text("Month"),
                        Text("£24.99pm"),
                      ],
                    ),
                    1: Column(
                      children: [
                        Text("12"),
                        Text("Months"),
                        Text("£20.75pm"),
                      ],
                    ),
                  },
                  onSegmentChosen: (index) =>
                      setState(() => _currentSelection = index),
                  selectedColor: Theme.of(context).primaryColor,
                  unselectedColor: Colors.white,
                  borderRadius: MyDimensions.borderRadius,
                  horizontalPadding: EdgeInsets.zero,
                ),
                SizedBox(height: MyDimensions.halfMargin),
                Row(
                  children: [
                    Spacer(),
                    Expanded(
                      child: Container(
                        padding: EdgeInsets.symmetric(
                          vertical: MyDimensions.halfPadding / 2,
                          horizontal: MyDimensions.padding,
                        ),
                        decoration: BoxDecoration(
                          color: Theme.of(context).primaryColor,
                          borderRadius:
                              BorderRadius.circular(MyDimensions.borderRadius),
                        ),
                        child: Text(
                          "15% Discount",
                          style: Theme.of(context).textTheme.bodyText2.copyWith(
                                fontSize: 10.0,
                                color: Colors.white,
                              ),
                          textAlign: TextAlign.center,
                        ),
                      ),
                    ),
                  ],
                ),
                SizedBox(height: MyDimensions.margin),
                Center(
                  child: Text(
                    'Terms and conditions',
                    style: Theme.of(context)
                        .textTheme
                        .bodyText2
                        .copyWith(fontSize: 10.0),
                  ),
                ),
                Text(
                  termsText,
                  style: Theme.of(context)
                      .textTheme
                      .bodyText2
                      .copyWith(fontSize: 10.0),
                ),
                SizedBox(height: MyDimensions.margin),
                AppButton(text: "Continue", onPressed: _subscribe)
              ],
            ),
          ),
        ],
      ),
    );
  }

  void _subscribe() async {
    FlutterInappPurchase.instance
        .requestSubscription(_subscriptionItems[_currentSelection]);
  }
}

Thats my full subscription screen code if that helps.
Now i have go a few people testing the app the FlutterInappPurchase.purchaseUpdated.listen method is still being called multiple times on a single purchase. I thought calling FlutterInappPurchase.instance.finishTransaction(productItem); fixed the problem but it hasn't.

@chaser79 Aha, so the issue still exists? @hyochan

Yes it does seem to still exist.  Can you double-check that you did not subscribed 30+ times to the purchaseUpdated stream?

Faced with same issue, but with self implemented module (not using flutter_inapp_purchase)
This happens randomly after restart the app, updatedTransactions triggers it self as many times as the purchases were made before. All purchases were finished with SKPaymentQueue.default().finishTransaction before this
Looks like this is a bug within sandbox. Also random errors when trying to purchase product

I have also experienced this situation ，After purchase on ios, it will be called multiple times automatically

Same issue here. It apparently only happens in testflight on iOS.

Hasn't there been any updates in so long?

Having the same issue, Any update on this?

Try this. it worked for me.
void dispose() {
_purchaseUpdatedSubscription?.cancel();
_purchaseErrorSubscription?.cancel();
FlutterInappPurchase.instance.finalize();
super.dispose();
}

call finalize() before initialize() just in case.
await FlutterInappPurchase.instance.finalize();
String? initResult = await FlutterInappPurchase.instance.initialize();


feat: parallelizes ui tests

Breaking Changes
N/A
Changes

feat: updated react-wallet tests to use deeplinks allowing for parallelization

Closed by #1936


Simple tasklist using custom postgreSql not working

I'm trying to run a simple tasklist using custom postgreql in docker compose with the following configuration:

but i get issue when i add user task to process. It looks like an error like this:

I've checked the db, the data has been inputted and nothing strange. I think there is a problem with the version db but for versions postgres:13.3-alpine and postgres:12.2 I get the same issue.
Everyone is there any suggestions for this case. Thankyou.

@Belajariah thank you for reporting. :+1: I can confirm the issue. :heavy_check_mark:
The issue sounds familiar. It is probably the same as https://github.com/camunda-community-hub/zeebe-simple-monitor/issues/79. We may be able to apply the same fix as in https://github.com/camunda-community-hub/zeebe-simple-monitor/pull/159: add @Transactional in the view controller.

I'm getting the same issue as soon as there is at least one User Task created - then the simple tasklist fails (e.g. http://localhost:8081/views/all-tasks/) with error:
Caused by: org.postgresql.util.PSQLException: Large Objects may not be used in auto-commit mode.
full exception
Is there any plan to fix this issue?

Hi @saig0 ,
Caused by: org.postgresql.util.PSQLException: Large Objects may not be used in auto-commit mode.
at org.postgresql.largeobject.LargeObjectManager.createLO(LargeObjectManager.java:285) [postgresql-42.7.3.jar:42.7.3]
I'm also facing the same Issue when dealing with large objects, let me explain the scenario...
I'm working jbpm-5.5 and jbpm has it's own tables which uses those tables to store some sort of information about workflow.. when jbpm trying to insert the records into postgresql data base, It's giving me an same error..
I don't have control over those jbpm tables, it's handle on it's own
tried below solution which I got from stackoverflow but no luck
Solution:
I was able to find out a solution for this. I have changed the DB column to Bytea type in PostgreSQL and change the JBPM 4.4 implementation to use byte[] over java.sql.Blob (in org.jbpm.pvm.internal.lob.Lob class).
Version details
postgresql db version -16
postgresql driver version - 42.7.3
Any Suggestions how can I fix this , Thank you!!!


(maint) address rubocop complaints

Address rubocop complaints.

@timidri some fixes for the rubocop issues on the branch.

Feel free to merge this if it looks ok to you.  The other branch has red CI because of the rubocop issues.


Added password support for plugin limit-count-redis

NOTE: Please read the Contributing.md guidelines before submitting your patch:
https://github.com/apache/incubator-apisix/blob/master/Contributing.md#how-to-add-a-new-feature-or-change-an-existing-one
Summary
SUMMARY_HERE
Issues resolved
Fix #971
Full changelog

Support password for plugin limit-count-redis
Test 1: without redis_pass

curl -i <IP_ADDRESS>:9180/apisix/admin/routes/ -X POST -H 'Content-Type: application/json' -d '
{
    "uris":[
        "/api/admin/login"
    ],
    "hosts":[
        "blog.nsa.work"
    ],
    "methods":[
        "POST"
    ],
    "plugins":{
        "limit-count":{
            "count":2,
            "time_window":60,
            "rejected_code":503,
            "key":"remote_addr",
            "policy":"redis",
            "redis_host":"<IP_ADDRESS>",
            "redis_port":6379,
            "redis_timeout":1000
        }
    },
    "vars":[
        [
            "scheme",
            "==",
            "https"
        ]
    ],
    "upstream_id":"2",
    "desc":"https://blog.nsa.work/api/admin/login"
}'

Test 2 : with nil value redis_password

curl -i <IP_ADDRESS>:9180/apisix/admin/routes/ -X POST -H 'Content-Type: application/json' -d '
{
    "uris":[
        "/api/admin/login"
    ],
    "hosts":[
        "blog.nsa.work"
    ],
    "methods":[
        "POST"
    ],
    "plugins":{
        "limit-count":{
            "count":2,
            "time_window":60,
            "rejected_code":503,
            "key":"remote_addr",
            "policy":"redis",
            "redis_host":"<IP_ADDRESS>",
            "redis_port":6379,
            "redis_pass":"",
            "redis_timeout":1000
        }
    },
    "vars":[
        [
            "scheme",
            "==",
            "https"
        ]
    ],
    "upstream_id":"2",
    "desc":"https://blog.nsa.work/api/admin/login"
}'

Test 3 : with password not nil

curl -i <IP_ADDRESS>:9180/apisix/admin/routes/ -X POST -H 'Content-Type: application/json' -d '
{
    "uris":[
        "/api/admin/login"
    ],
    "hosts":[
        "blog.nsa.work"
    ],
    "methods":[
        "POST"
    ],
    "plugins":{
        "limit-count":{
            "count":2,
            "time_window":60,
            "rejected_code":503,
            "key":"remote_addr",
            "policy":"redis",
            "redis_host":"<IP_ADDRESS>",
            "redis_port":6379,
            "redis_pass":"password",
            "redis_timeout":1000
        }
    },
    "vars":[
        [
            "scheme",
            "==",
            "https"
        ]
    ],
    "upstream_id":"2",
    "desc":"https://blog.nsa.work/api/admin/login"
}'

logs:

apisix_1  | <IP_ADDRESS> - - [15/Dec/2019:19:24:29 +0800] blog.nsa.work "POST /api/admin/login HTTP/2.0" 400 87 1.461 "https://blog.nsa.work/admin/index.html" "UA" <IP_ADDRESS>:56381 400 1.460
apisix_1  | <IP_ADDRESS> - - [15/Dec/2019:19:24:37 +0800] blog.nsa.work "POST /api/admin/login HTTP/2.0" 400 87 0.794 "https://blog.nsa.work/admin/index.html" "UA" <IP_ADDRESS>:56381 400 0.792
apisix_1  | <IP_ADDRESS> - - [15/Dec/2019:19:24:42 +0800] blog.nsa.work "POST /api/admin/login HTTP/2.0" 503 635 0.001 "https://blog.nsa.work/admin/index.html" "UA" - - -

@totemofwolf nice work 👍
Can you add above test cases to the  t/plugin/limit-count-redis.t file? thx

@totemofwolf nice work 👍
Can you add above test cases to the  t/plugin/limit-count-redis.t file? thx

Test case has already included in t/plugin/limit-count-redis.t but not all above. I'll add them all.

@totemofwolf nice work 👍
Can you add above test cases to the  t/plugin/limit-count-redis.t file? thx

Done

@totemofwolf here is the correct test cases.
=== TEST 7: up the limit for TEST 6
--- pipelined_requests eval
["GET /hello_new", "GET /hello_new", "GET /hello_new", "GET /hello_new"]
--- error_code eval
[500, 500, 500, 500]

=== TEST 8: up the limit for TEST 6
--- request
GET /hello_new
--- error_code eval
500
--- response_body
{"1":"ERR invalid password","error_msg":"failed to limit count: "}
--- error_log
failed to limit req: ERR invalid password

@totemofwolf here is the correct test cases.
It works fine on my local machine.
+ prove t/plugin/limit-count-redis.t
t/plugin/limit-count-redis.t .. ok
All tests successful.
Files=1, Tests=36,  6 wallclock secs ( 0.03 usr  0.00 sys +  0.76 cusr  0.99 csys =  1.78 CPU)
Result: PASS

=== TEST 7: up the limit for TEST 6
--- pipelined_requests eval
["GET /hello_new", "GET /hello_new", "GET /hello_new", "GET /hello_new"]
--- error_code eval
[500, 500, 500, 500]

=== TEST 8: up the limit for TEST 6
--- request
GET /hello_new
--- error_code eval
500
--- response_body
{"1":"ERR invalid password","error_msg":"failed to limit count: "}
--- error_log
failed to limit req: ERR invalid password

👍🏻👍🏻👍🏻.
I'm on the way to make my local prove works with such .t files now ;-)

@membphis CMD prove runs ok without errors at local dev env:
but failed at travis ci..
root@188623d5ba1d:/usr/local/src/apisix# TEST_NGINX_BINARY=/usr/local/openresty/bin/openresty prove -Itest-nginx/lib -r t/plugin/limit-count-redis.t
t/plugin/limit-count-redis.t .. ok
All tests successful.
Files=1, Tests=59, 17 wallclock secs ( 0.02 usr  0.02 sys +  0.56 cusr  0.40 csys =  1.00 CPU)
Result: PASS

travis ci logs:
#   Failed test 'TEST 6: set route, with redis host, port and right password - response_body - response is expected (repeated req 0, req 0)'
767#   at /home/travis/build/apache/incubator-apisix/test-nginx/lib/Test/Nginx/Socket.pm line 1589.
768#          got: 'failed to set: @user_script: 3: This Redis command is not allowed from scripts
769# '
770#     expected: 'passed
771

@membphis
Redis-server version on Travis CI is 5.0.4, my local dev Debian:stretch-slim Redis-server version is: 3.2.6, their diff shows:
/tmp colordiff redis-3.2.6.conf redis-5.0.4.conf
12a13
> always-show-logo yes
21,22c22,23
< slave-serve-stale-data yes
< slave-read-only yes
---
> replica-serve-stale-data yes
> replica-read-only yes
26c27,31
< slave-priority 100
---
> replica-priority 100
> lazyfree-lazy-eviction no
> lazyfree-lazy-expire no
> lazyfree-lazy-server-del no
> replica-lazy-flush no
33a39
> aof-use-rdb-preamble yes
46a53,54
> stream-node-max-bytes 4096
> stream-node-max-entries 100
49c57
< client-output-buffer-limit slave 256mb 64mb 60
---
> client-output-buffer-limit replica 256mb 64mb 60
51a60
> dynamic-hz yes
52a62
> rdb-save-incremental-fsync yes

I did compile and re-run redis-5.0.4 from source, it reappears:
root@188623d5ba1d:/usr/local/src/apisix# redis-server -v
Redis server v=5.0.4 sha=00000000:0 malloc=jemalloc-5.1.0 bits=64 build=7b3250fd2ca932bf

root@188623d5ba1d:/usr/local/src/apisix# TEST_NGINX_BINARY=/usr/local/openresty/bin/openresty prove -Itest-nginx/lib -r t/plugin/limit-count-redis.t
t/plugin/limit-count-redis.t .. 28/?
#   Failed test 'TEST 6: set route, with redis host, port and right password - response_body - response is expected (repeated req 0, req 0)'
#   at /usr/local/src/apisix/test-nginx/lib/Test/Nginx/Socket.pm line 1589.
#          got: 'failed to set: @user_script: 4: This Redis command is not allowed from scripts
# '
#     expected: 'passed
# '

install an older Redis server is fine for testing

@totemofwolf There is something wrong with your git operation. If you have trouble fixing it, consider resubmitting a PR.

@totemofwolf There is something wrong with your git operation. If you have trouble fixing it, consider resubmitting a PR.


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


[feat] It is recommended to add the configuration item whether to close the program after closing all Windows

Describe the problem
The program is closed after closing all Windows
Describe the solution you'd like
It is recommended to add the configuration item whether to close the program after closing all Windows
Alternatives considered
No response
Additional context
No response

you can do something like this
    tauri::Builder::default()
        .build(tauri::generate_context!())
        .expect("error while running tauri application")
        .run(|app, event| {
            if let tauri::RunEvent::ExitRequested { api, code, .. } = event {
                if code.is_none() {
                    api.prevent_exit();
                }
            }
        });

thanks


K3s - High Availability arrangement

Closing in favor of: https://github.com/bryborge/cosmos/pull/44


SwipeToDismiss, the swipe down distance is too long.

Currently, when swiping/dragging from top to bottom, it is ok to dismiss the controller.
However, when I come across from AppleMusic, I found the distance needed before it can dismiss itself is a bit too long as it affects the UX.
Could you shorten or tune a bit? Or give a option to custom it?

Good day!
Please, update to version 1.4.2. I am added property translateForDismiss. Default is 240, but you can customise this translation.
Default translation 240 is equal to app Apple Music. I am compared.


Generated docs use assets.readthedocs.org instead of the local css and js files

Details
Hi, we are trying to build a self-hosted readthedocs server. We decided to use a docker container based on the following project:
https://github.com/floross/docker-readthedocs
based on rtfd release 2.5.3.
The documentation builds fine but the CSS and JS links appear to point to assets.readthedocs.org" rather than the local static url. Here are the contents of the index.html:
<link rel="stylesheet" href="https://assets.readthedocs.org/static/css/readthedocs-doc-embed.css" type="text/css" />
<script type="text/javascript" src="https://assets.readthedocs.org/static/javascript/readthedocs-analytics.js"></script>
        <script type="text/javascript" src="https://assets.readthedocs.org/static/javascript/readthedocs-doc-embed.js"></script>

This is not ok since the server is behind the company firewall.
I tracked this down to the following change:
https://github.com/rtfd/readthedocs-sphinx-ext/pull/47/commits/23731ab5669b0af0a0efc0ad3618f06c9e10e1cb
Seems like it used to use the MEDIA_URL before and now it uses STATIC_URL. The folder that STATIC_URL points to does not have the required css files but the one that MEDIA_URL points to has them.
We are currently limited to the 2.5.3 release since that later versions do not work with the docker setup currently.
Any help would be really appreciated.
Thanks
-Selim

If you can't take later versions of RTD than v2.5.3 my recommendation would be to drop down the version of readthedocs-sphinx-ext you're using.

Ok, after I changed readthedocs/doc_builder/python_environments.py and forced readthedocs-sphinx-ext to load version 0.5.3 now it tries to load them from media but it doesn't find them:
index.html:55 GET http://pe-readthedocs-sf-03v/media/javascript/readthedocs-analytics.js net::ERR_ABORTED 404 (Not Found)
index.html:45 GET http://pe-readthedocs-sf-03v/media/css/readthedocs-doc-embed.css net::ERR_ABORTED 404 (Not Found)
index.html:304 GET http://pe-readthedocs-sf-03v/media/javascript/underscore.js net::ERR_ABORTED 404 (Not Found)
index.html:303 GET http://pe-readthedocs-sf-03v/media/javascript/jquery/jquery-migrate-1.2.1.min.js net::ERR_ABORTED 404 (Not Found)
index.html:302 GET http://pe-readthedocs-sf-03v/media/javascript/jquery/jquery-2.0.3.min.js net::ERR_ABORTED 404 (Not Found)
index.html:306 GET http://pe-readthedocs-sf-03v/media/javascript/readthedocs-doc-embed.js net::ERR_ABORTED 404 (Not Found)
index.html:305 GET http://pe-readthedocs-sf-03v/media/javascript/doctools.js net::ERR_ABORTED 404 (Not Found)
index.html:45 GET http://pe-readthedocs-sf-03v/media/css/readthedocs-doc-embed.css net::ERR_ABORTED 404 (Not Found)
index.html:55 GET http://pe-readthedocs-sf-03v/media/javascript/readthedocs-analytics.js net::ERR_ABORTED 404 (Not Found)
index.html:302 GET http://pe-readthedocs-sf-03v/media/javascript/jquery/jquery-2.0.3.min.js net::ERR_ABORTED 404 (Not Found)
index.html:303 GET http://pe-readthedocs-sf-03v/media/javascript/jquery/jquery-migrate-1.2.1.min.js net::ERR_ABORTED 404 (Not Found)
index.html:304 GET http://pe-readthedocs-sf-03v/media/javascript/underscore.js net::ERR_ABORTED 404 (Not Found)
index.html:305 GET http://pe-readthedocs-sf-03v/media/javascript/doctools.js net::ERR_ABORTED 404 (Not Found)
index.html:306 GET http://pe-readthedocs-sf-03v/media/javascript/readthedocs-doc-embed.js net::ERR_ABORTED 404 (Not Found)
index.html:314 Uncaught ReferenceError: jQuery is not defined
    at index.html:314

MEDIA_URL is set to /media and maps to /app/media
STATIC_URL is set to /static and maps to /app/media/static
Is there a command like collectstatic that will copy the needed files into the media folder?

Assuming you built your static assets with npm run build or similar, you probably need to configure a redirect like the one here. We should probably make this process easier for people looking to do their own setups. I'd be open to help on that.

Not sure by what you mean by "npm run build". I am following the procedure outlined in the docker-readthedocs github repo. The rtd-provision.sh script provided here takes care of setting up the server when the docker container starts up for the first time: https://github.com/floross/docker-readthedocs/blob/master/readthedocs/app/bin/rtd-provision.sh
Additional help is always welcome :-)

https://github.com/rtfd/readthedocs-docker-images is just docker images for the build servers (where the docs are built). Somewhere, you need a Read the Docs instance which is a front-end web instance.

What the docker-readthedocs repo is trying to do is dockerize the web instance which also serves as an environment to build the docs. There are no additional build servers. The other images are for caching (redis) and for the database (postgres) and elasticsearch.
For us it is very convenient to deploy the standalone readthedocs server as a docker container so that we can isolate it and also make sure it is not used maliciously since the readthedocs server runs as the root user right now.
The docker-readthedocs repo is a good start but looks like the original author has abandoned it since it hasn't been updated for months and is stuck at version 2.5.0.

Hi David, I just wanted to mention that once I downgraded to 0.5.3 release of readthedocs-sphinx-ext I can now access the documentation properly. I had a mistake in my docker volume bindings where I was including the "media" folder as a binding since I thought that needed to be persisted outside the container but that was causing other issues where it wasn't populating the correct files inside the media folder within the container.
One improvement that I'd like to have is to be able to specify the package versions outside the readthedocs/doc_builder/python_environments.py code rather than hard coding them. Currently I have to resort to creating a patch file and modifying the code that way which is hacky.
Thanks.


Integrate llvm-project at 88f07a31

There is a GPU test that is failing:
build/tools/iree-compile /usr/local/google/home/springerm/iree/tests/transform_dialect/cuda/reduction_v3.mlir --iree-hal-target-backends=cuda      --iree-codegen-llvmgpu-enable-transform-dialect-jit=false      --iree-codegen-llvmgpu-use-transform-dialect=/usr/local/google/home/springerm/iree/tests/transform_dialect/cuda/reduction_v3_codegen_spec.mlir -mlir-print-ir-after-all

I'm not sure how to fix this.
/usr/local/google/home/springerm/iree/tests/transform_dialect/cuda/reduction_v3.mlir:11:8: error: failed to materialize conversion for result #0 of operation 'arith.constant' that remained live after conversion
  %2 = linalg.generic {
       ^
/usr/local/google/home/springerm/iree/tests/transform_dialect/cuda/reduction_v3.mlir:4:1: note: called from
func.func @reduce(%arg : !in_tensor_t) -> (!out_tensor_t) {
^
/usr/local/google/home/springerm/iree/tests/transform_dialect/cuda/reduction_v3.mlir:11:8: note: see current operation: %5 = "arith.constant"() <{value = 0 : index}> : () -> index
  %2 = linalg.generic {
       ^
/usr/local/google/home/springerm/iree/tests/transform_dialect/cuda/reduction_v3.mlir:4:1: note: see existing live user here: %75 = "hal.interface.binding.subspan"(%5, %23, %27) {alignment = 64 : index, binding = 0 : index, descriptor_flags =
1 : i32, descriptor_type = #hal.descriptor_type<storage_buffer>, operand_segment_sizes = array<i32: 1, 2>, set = 0 : index} : (index, index, index) -> memref<?x?xf32, #hal.descriptor_type<storage_buffer>>
func.func @reduce(%arg : !in_tensor_t) -> (!out_tensor_t) {
^
/usr/local/google/home/springerm/iree/tests/transform_dialect/cuda/reduction_v3.mlir:0:0: error: conversion to vm.module failed

// -----// IR Dump After mlir::iree_compiler::IREE::VM::ConversionPass Failed (iree-vm-conversion) //----- //

There is a GPU test that is failing:

I deleted this test. It is obsolete.


ast: add set default role

What problem does this PR solve?
Support SET DEFAULT ROLE to set default active roles for user.
What is changed and how it works?
Add SetDefaultRoleStmt for ast which contain information for executor to do next step.
Check List
Tests

Unit test

Code changes

Has exported function/method change

Side effects

Increased code complexity

Please address the comment, @imtbkcat .

@kennytm this pr need an approve 😊

Please resolve the merge conflict 🙂

@kennytm conflict has been reslove, but approve was dismissed. Please approve again and merge this pr.


The python is wrong in the introduction

The introduction says

This library was motivated by the name modifiers in the "import" or "include" statements present in all practical programming languages:

import math # Python: the sqrt function is available as `sqrt`.

If you want the behavior of bringing sqrt into scope, it should be
from math import *

@olynch Thank you! Closed by f5f6a32eea438891c08a018a827f606c66b5a7c3


Add English songs to a song book named "English"

We already have the following song books:

Jebathoatta Jeyageethanggal
Keerthanaigal
FMPB

Since OpenLP doesn't let us define one song in more than one song book, we are not going to provide this feature. We'll use "Topics" instead.


DocsArchive-<IP_ADDRESS>Auto archive content

Please don't merge this PR until target archive repo PR https://github.com/OPS-E2E-PPE/docs-archive-test-target_ef004d12-a755-4e42-a7f1-3605dcc41d14/pull/1 is merged into live branch.
Auto archive content to https://github.com/VSC-Service-Account/docs-archive-test-target_ef004d12-a755-4e42-a7f1-3605dcc41d14.git

Docs Build status updates of commit ff74a87:
:clock10: Pending: waiting for processors (22 builds ahead of you)
:warning: Docs Build is busy, currently there are 22 builds ahead of this one, for more information you can view the Build queue graph on the Docs Portal.

Docs Build status updates of commit ff74a87:
:x: Validation status: errors
Please follow instructions here which may help to resolve issue.

File
Status
Preview URL
Details

:x:Error

Details

[Error-ServiceAccountCannotAccessRepository] Your repository https://github.com/VSC-Service-Account/docs-archive-test-source has enabled Docs Build service account. It seems that at least one of the accounts, e2ebd4, does not have Read permission to the repo. Please ask your repo admin to grant correct permission to service accounts (refer to this document: https://review.docs.microsoft.com/en-us/engineering/projects/ops/engdocs/how-to-grant-service-account-permission-in-your-repository?branch=master#ops-e2e-ppe) and then retry the build. Don't know who to contact? Refer https://repos.opensource.microsoft.com/VSC-Service-Account/repos/docs-archive-test-source/permissions/ to get admin list of the repo if the repo is in one of the organizations Microsoft owns.

For more details, please refer to the build report.
If you see build warnings/errors with permission issues, it might be due to single sign-on (SSO) enabled on Microsoft's GitHub organizations. Please follow instructions here to re-authorize your GitHub account to Docs Build.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
Note: Your PR may contain errors or warnings unrelated to the files you changed. This happens when external dependencies like GitHub alias, Microsoft alias, cross repo links are updated. Please use these instructions to resolve them.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Search.exclude not excluding.

VSCode Version: 1.30.0
OS Version: macOS Mojave 10.14.1

Steps to Reproduce:

Search for something that would be in .git, e.g. a single character or a simple word.
Search will show results of matches inside .git even though it is excluded via settings. Only if specified in the files to exclude box it will actually be excluded.

Does this issue occur when all extensions are disabled?: Yes

I don't know how I solved it. But somehow it is working now and I am not sure what I did to solve the issue....


Reset password email

The reset password email I receive is not panelViews::resetPassword ( therefore does not have the link starting by /panel/password/reset )
There is the config Config::set('auth.passwords.panel',  ['provider' => 'panel','email'      => 'panelViews::resetPassword','table' => 'password_resets','expire' => 60]); but I am not sure email is working.
Does that work for you?
1.5.3

By the way I had to extends Admin Model to add Notifiable traits.

Found solution,
Override Admin Model then override CanResetPasswordContract and ResetPassword toMail function ->action('Reset Password', url('panel/password/reset', $this->token))
namespace App;

use Illuminate\Notifications\Notifiable;
use App\Auth\AdminCanResetPassword as CanResetPasswordContract;

class Admin extends \Serverfireteam\Panel\Admin
{
    use Notifiable;
    use CanResetPasswordContract;
}

I override PanelServiceProvider to use the new Admin Model
namespace App\Providers;

class PanelServiceProvider extends \Serverfireteam\Panel\PanelServiceProvider
{
    public function boot()
    {
        parent::boot();

        \Config::set('auth.providers.panel',  ['driver'   => 'eloquent','model'   => \App\Admin::class]);

    }
}

Let me know if that's good fix (if any) i'll try to create a PR.

@arsenik thank you for the fast fix, Please send a pull request. Keep the good work


ScrollToColumnPosition method not working correctly?

When the TableView is remade with newer data and if the column header and cells are not at the 0 position than the header column scrolls to 0 while the width of the cells shrinks and stay at the scrolled position (the cells gets scrambled), the scrollCellHorizontally method only works if the column position is at 0 at any other position cellRowRecyclerView returns a null because of this only the first cell row can get scrolled the rest can't, please look into this.
BTW thank you for making this library, it has helped me alot.

Hi @waqkz,
Sorry for my late response.
I just tested your steps but I didn't get the case. Please share some video, or project that I check easily.


Skip serialization for bool fields if the value matches the default value

A Package with only name and version set should only serialize these two fields, but currently it also serializes the additional auto... fields independent from their values. This PR changes the logic to only serialize these fields if they do not match the default value (true in this case).
An alternative is using Option<bool> for these fields, but that would be a breaking change, so I was a little hesitant about it.
It looks like cargo-toml is using similar logic: https://docs.rs/cargo_toml/0.16.0/src/cargo_toml/cargo_toml.rs.html#1262
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

This works I'd say 👍🏻


Break aiohttp out into its own package

https://github.com/getsentry/raven-python/issues?utf8=✓&q=is%3Aissue+aiohttp
^^ this points out the obvious problem that will forever exist otherwise

To point it out, there are 2 syntax issues. The variadic * which is what's visible in the SyntaxError. But even if we remove that (since we don't need this for python 3), we next hit yield from which only exists in python 3. :(

https://github.com/getsentry/raven-aiohttp

304faee8b1a986deceb7d64084c4df5df45a51e8 removes aiohttp from core

This will be fixed in 5.4.0

Wow.  That might be the fastest I've ever seen a bug get fixed!  I applaud your speed and diligence.  You've definitely earned a fan here today.

I hate to re-open this, but it looks like there's a problem with the wheel.  I'm still seeing the error when I install raven 5.4.0 with pip.
From https://pypi.python.org/pypi/raven/5.4.0, the wheel's URL is https://pypi.python.org/packages/py2.py3/r/raven/raven-5.4.0-py2.py3-none-any.whl#md5=c356efa854cc1e7ac4c06e886d309aad.  I downloaded that, renamed it to .zip, unpacked it, and raven/transport/aiohttp.py is still there.

Hmm, wtf. Lemme see what's happening, and if I messed up, I'll cut a 5.4.1 to fix it.

And if pypi wasn't down right now... :(

Hmm, Yeah, so when creating the wheel locally... I get the aiohttp.py, but it doesn't exist in a normal sdist build, and isn't in my source tree.
I'll figure this out and cut a new version soon.

@kengruven Alright, I pushed a 5.4.1, and manually verified it before uploading the packages. No aiohttp.py in these. Sorry about that and thanks for letting me know!


GEODE-6730: optimize check for sender id differences

Instead of every region write operation scanning the profiles and doing set comparisions to detect if any of the gateway or async event queue ids on a region are configured differently, now this check is done whenever the profiles or our local sender ids change. The region write operations now just check two volatiles to see if they are non-null.
Thank you for submitting a contribution to Apache Geode.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

[ ] Is there a JIRA ticket associated with this PR? Is it referenced in the commit message?

[ ] Has your PR been rebased against the latest commit within the target branch (typically develop)?

[ ] Is your initial contribution a single, squashed commit?

[ ] Does gradlew build run cleanly?

[ ] Have you written or updated unit tests to verify your changes?

[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?

Note:
Please ensure that once the PR is submitted, check Concourse for build issues and
submit an update to your PR as soon as possible. If you need help, please send an
email to<EMAIL_ADDRESS>

I like the performance improvement, and it looks like you are trying to get this check working without changing behavior, which is a good start.
I do wonder if we need to rethink how (or if) we should be validating this during a write operation. It seems like throwing this exception in the middle of the write operation (after cache update but before notifying any gateways) will result in data inconsistencies or at least inconsistent deliveries of events to gateways during the time window that someone is adding a new gateway. Is that even worse than not checking at all?

My first thought was the validation should be done at the time a new member joins or when a gateway or async event queue is added or removed. But the problem with the latter is that it is not a distributed operation so the user must add or remove it to multiple members manually. We could have the current check done by the write ops wait for a while when a difference is detected in hopes that the user is working on making it consistent. I asked @boglesby to take a look at this. Perhaps we need another ticket that does focus on performance but on how and when sender id consistency should be checked.

I think we talked about removing that check back when we were doing the lucene work. Destroying a lucene index removes an AEQ id from the region, so a put was failing in the checkSameSenderIdsAvailableOnAllNodes call in notifyGatewaySender. We ended up adding the visibleAsyncEventQueueIds set and only checking that. Lucene AEQ ids don't get added to that set.
This issue is definitely in there for normal AEQ ids, though. One saving grace is that generally customers don't add AEQs to a region on the fly. They are there from the beginning.
Having that check on every put operation seems like overkill. I think it only has to be checked when a new member joins and when a new GatewaySender or AEQ is added or removed not using gfsh.
When a new member joins with different AEQ ids, this exception is thrown:
[error 2019/05/03 16:30:47.673 PDT  tid=0x1] java.lang.IllegalStateException: Cannot create Region /data with [ db2, db] async event ids because another cache has the same region defined with [db] async event ids
Exception in thread "main" java.lang.IllegalStateException: Cannot create Region /data with [ db2, db] async event ids because another cache has the same region defined with [db] async event ids
	at org.apache.geode.internal.cache.CreateRegionProcessor$CreateRegionMessage.handleCacheDistributionAdvisee(CreateRegionProcessor.java:466)
	at org.apache.geode.internal.cache.CreateRegionProcessor$CreateRegionMessage.process(CreateRegionProcessor.java:369)

So, that case is already covered.
Currently when an existing member adds an AEQ id that isn't defined in another member, no exception is thrown. The exception happens when a put occurs like:
Caused by: org.apache.geode.internal.cache.wan.GatewaySenderConfigurationException: Region data has [db] AsyncEvent queue IDs. Another cache has same region with [db2, db] AsyncEvent queue IDs. For region across all members, AsyncEvent queue IDs should be same.
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.PartitionedRegion.checkSameSenderIdsAvailableOnAllNodes(PartitionedRegion.java:1295)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.LocalRegion.notifyGatewaySender(LocalRegion.java:6217)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.BucketRegion.notifyGatewaySender(BucketRegion.java:716)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.LocalRegion.basicPutPart2(LocalRegion.java:5863)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.BucketRegion.basicPutPart2(BucketRegion.java:701)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.map.RegionMapPut.doBeforeCompletionActions(RegionMapPut.java:282)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.AbstractRegionMap.basicPut(AbstractRegionMap.java:2044)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.BucketRegion.virtualPut(BucketRegion.java:527)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.LocalRegionDataView.putEntry(LocalRegionDataView.java:162)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.LocalRegion.basicUpdate(LocalRegion.java:5672)
	at Remote Member '<IP_ADDRESS>(25386)<v1>:41001' in org.apache.geode.internal.cache.AbstractUpdateOperation.doPutOrCreate(AbstractUpdateOperation.java:150)
	at org.apache.geode.internal.cache.BucketRegion.basicPutPart2(BucketRegion.java:691)
	at org.apache.geode.internal.cache.map.RegionMapPut.doBeforeCompletionActions(RegionMapPut.java:282)
	at org.apache.geode.internal.cache.tier.sockets.command.Put65.cmdExecute(Put65.java:392)

In that case, the region has the entry, but it wasn't sent to the AEQ.

After discussions with Dan and Barry, we decided that they best way to optimize this check is to not do the check. Currently the action taken by the check causes data inconsistency. So I'm going to close this pull request and submit another one that removes the check.


Deconstructive type assignation

Suggestion
Add deconstructive assignation for types like it is done for variables (objects)

🔍 Search Terms

type, deconstructive. assign, variable, equals, namespaces
✅ Viability Checklist

My suggestion meets these guidelines:

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

⭐ Suggestion

It would be cool to have ability to deconstruct type namespaces like we already able to do with regular variables or more specially with objects.
📃 Motivating Example

This feature will shorten code without loosing readability. When you have complicated modules structure, when you reexporting things to better group them, it rapidly become annoying to write something like someModule.ohOneMoreModule.thatTypeINeed which, here is a coincidence, is heavily used. Thus you'd like to write only the name of type you are using and not the whole path to it, while preserving other rarely used things under long cover.
As of now, you can alias type, but if the type contain complex logic, generics etc. it will be quite hard and increases the risk of error
💻 Use Cases

// user.ts
import { UserSendable } from "userSendable.ts"
import { UserData } from "userData.ts"

type Sendable = UserSendable
type Data = UserData

export namespace User {
  export Sendable ,
  export Data,
}

// userService.ts
import { User } from "user.ts"

export User
export UserService

// db.ts

import { User } from "userService.ts"

// suppose that UserSendable is heavily used while UserData is not, but required in few places
// so each time i'd like to use UserSendable i should write
const foo: User.Sendable = ...

// looks uggly, is not it? note, every time... every
// now consider this

type { Sendable } = User

const bar: Sendable = ...

The above example is pretty simple and does not really show the problem. The PROBLEM bubbles up when generics come int game.
If instead of simple Sendable there were something like:
// it is only declaration. Imagine this is inside namesapce and you need to alias it
type ConstructableSubclass<
  T extends abstract new (...args: any[]) => unknown,
  Constructor extends new (...args: any[]) => InstanceType<T> = new (
    raw: string,
    start: number
  ) => InstanceType<T>
> = Constructor & Omit<T, never>;

you will need to write again all defaults and restrictions for generics to manage the alias work.
But with Destructive Type Assignation you can simply do:
type { ConstructableSubclass } = UtilityTypes

And boom! No place for mistackes left.
P.S. Thanks for reading this. Pleas, leave a comment so I can find out what i can improve in this suggestion.

Duplicate of #13135.

Duplicate of #13135.

yeah, i missed this already open issue due to miss-spelling in deconstructive word. Generally, this issue and #13135 already have solution as mentioned above. So they both can be closed


Access values without 'v' prefix

I started integrating this only to realize that all the outputs include the 'v' prefix (or whatever is configured), and there's no way to turn that off. I'm running actions on both windows and linux runners, so I was hoping to avoid messy hacks.
Ideally, I'd like to be able to get the following formats out easily. It seems unexpected to add back in the configured prefix - the action user can do that easily but can't remove it quite as easily. Maybe let us have that as a configuration?

version 1.2.3-preview1
major 1
minor 2
patch 3
prerelease preview1

version 1.2.3-preview1

If the version does not have a prefix, can you solve this by setting inputs.prefix to ''?
Or, if the version has a prefix, but you want to remove it in the output, We may consider adding outputs.
e.g.,

full_without_prefix
major_without_prefix
major_prerelease_without_prefix

Even with prefixes, minor, patch, and prerelease are not supported, are there any cases where these are needed?

The version has a prefix but I want to remove it.
Minor matters, for example with v0.9.3, the major version is actually the
minor, for compat reasons. Like .NET has AssemblyVersion that should only
change for breaking changes
On Mon, Aug 8, 2022, 2:30 PM Koji Hasegawa @.***> wrote:

version 1.2.3-preview1
If the version does not have a prefix, can you solve this by setting
inputs.prefix to ''?
Or, if the version has a prefix, but you want to remove it in the output,
We may consider adding outputs.
e.g.,

full_without_prefix
major_without_prefix
major_prerelease_without_prefix

Even with prefixes, minor, patch, and prerelease are not supported, are
there any cases where these are needed?
—
Reply to this email directly, view it on GitHub
https://github.com/nowsprinting/check-version-format-action/issues/215#issuecomment-1208579848,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAA2LHYHZAXTWR42OLD6SO3VYFU6DANCNFSM553MJRVA
.
You are receiving this because you authored the thread.Message ID:
@.***
com>

Thank you for your response.
ok, I add outputs follows:
with prefix:

minor
patch
prerelease

without prefix:

full_without_prefix
major_without_prefix
major_prerelease_without_prefix

But,

.NET has AssemblyVersion

Sorry. .NET support is impossible now, because this action uses semver.

@lilith san, plz use v3.2!


Fix typo.

hi Robert,
thanks for pr. are you going to work on a R wrapper of the parameter server? if yes, there are two suggestions,

https://github.com/dmlc/ps-lite is the new version, which has a simpler push/pull interface
we are working on an even simpler version for mxnet. see https://github.com/dmlc/mxnet/blob/ps/include/mxnet/kvstore.h
and the python interface https://github.com/dmlc/mxnet/blob/ps/python/mxnet/kvstore.py and test case https://github.com/dmlc/mxnet/blob/ps/tests/python/test_kvstore.py we hope to have a R wrapper too

thanks
mu

Thanks! I have plans to but it may be a few months before I get to it. If you have one before then be sure to let me know.
Best,
-RK

awesome! the R wrapper is on our road map. your contribution will be very much appreciated. please ping me if you have free time then.
thanks!
mu


Zeebe gRPC client.waitForReady always fails

[Identified with a fix here]
In GrpcClient.ts, this call:
this.client.waitForReady(10000, (error) =>
	error
		? this.emit(MiddlewareSignals.Event.Error, error)
		: this.emit(MiddlewareSignals.Event.Ready)
)

always throws an error, because the first parameter needs to be an absolute time, not an offset.
So, it should be:
this.client.waitForReady(new Date(Date.now() + 10000), (error) =>
	error
		? this.emit(MiddlewareSignals.Event.Error, error)
		: this.emit(MiddlewareSignals.Event.Ready)
)

This fix changes the behaviour of the SDK in the following way:

Before
After

Does not set connected: true if there is a broker and eagerConnection: false
Sets connected: true if there is a broker and eagerConnection: false

Sets connected: false if there is no broker and no setting of eagerConnection
Sets connected: undefined if there is no broker and no setting of eagerConnection


Release notes for Mendix Operator version 1.6.1

Hi @MarkvanMents, can you please review the Release Notes for the Mendix Operator?
This is a small patch release and only includes changes to the Operator, without any other components.
If possible, we'd like to release it today - everything is ready for release on our side.

@MarkvanMents, thank you for the quick review! Yes, can you please publish the changes now?


Fixing the index segment size check when writing PersistentIndex

Fixes #790 and Fixes #501
Also fixes a lot of duplicate put record handling in the StoreCopier, DiskReformatter and ConsistencyCheckerTool

Could you describe what is getting fixed here?

Codecov Report

Merging #776 into master will decrease coverage by 0.16%.
The diff coverage is 66.66%.

@@             Coverage Diff              @@
##             master     #776      +/-   ##
============================================
- Coverage     66.23%   66.07%   -0.17%
+ Complexity     3919     3910       -9
============================================
  Files           339      339
  Lines         25779    25780       +1
  Branches       3221     3221
============================================
- Hits          17076    17035      -41
- Misses         7810     7839      +29
- Partials        893      906      +13

Impacted Files
Coverage Δ
Complexity Δ

...ls/src/main/java/com.github.ambry.utils/Utils.java
65.4% <0%> (ø)
69 <0> (ø)
:arrow_down:

...n/java/com.github.ambry.store/PersistentIndex.java
90.98% <100%> (+0.01%)
174 <0> (ø)
:arrow_down:

.../main/java/com.github.ambry/store/StoreCopier.java
63.21% <100%> (ø)
9 <0> (ø)
:arrow_down:

...c/main/java/com.github.ambry.network/Selector.java
78.48% <0%> (-3.59%)
44% <0%> (-1%)

...github.ambry.rest/AsyncRequestResponseHandler.java
88.52% <0%> (-2.3%)
23% <0%> (ø)

...b.ambry.network/BlockingChannelConnectionPool.java
64.03% <0%> (-2.2%)
8% <0%> (ø)

...in/java/com.github.ambry.store/BlobStoreStats.java
84.68% <0%> (-1.68%)
92% <0%> (-2%)

.../com.github.ambry.router/GetBlobInfoOperation.java
79.86% <0%> (-1.39%)
30% <0%> (-1%)

...ava/com.github.ambry.store/BlobStoreCompactor.java
92.56% <0%> (-1.13%)
117% <0%> (-3%)

.../main/java/com.github.ambry.store/HardDeleter.java
81.93% <0%> (-0.97%)
42% <0%> (-1%)

... and 3 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 799f01c...2765bc6. Read the comment docs.

@pnarayanan fixed merge conflicts - good  to review

@pnarayanan Reminder

@pnarayanan comments addressed

@pnarayanan Comments addressed - PTAL


T018 / website: NGLview 3D visualization not shown

On our website, the T018 3D visualizations with NGLview are not shown.
Compare
https://projects.volkamerlab.org/teachopencadd/talktorials/T018_automated_cadd_pipeline.html#Processing-the-input-protein-data
to 3D view in
https://projects.volkamerlab.org/teachopencadd/talktorials/T012_query_klifs.html#4.-Show-the-structure-with-nglview

@dominiquesydow they also do not show in the talktorial itself: https://nbviewer.org/github/volkamerlab/teachopencadd/blob/master/teachopencadd/talktorials/T018_automated_cadd_pipeline/talktorial.ipynb
Can you double check if they were shown on your local system before you pushed the notebook (I sometimes have trouble with nglview if i executed a notebook too many times ...).

I am on it now. I think on the new laptop I have not had "Save widget state automatically" ticked, yet.
The 3D viz was there before I pushed but I think the state was not saved. Maybe --- hopefully --- this is all :)


[5.7] Changed phpDoc from \Illuminate\Contracts\Foundation\Application to \Illuminate\Foundation\Application in ServiceProvider.

Changed phpDoc from \Illuminate\Contracts\Foundation\Application to \Illuminate\Foundation\Application in ServiceProvider, since in class which extend this class we have used methods which not present in contract but class has method.
For example:
in Notifications/NotificationServiceProvider.php we have used resourcePath method
in Mail/MailServiceProvider.php we also have used resourcePath method

Would it make more sense to add the missing methods to the contract?

We could not add new method to contract to v5. 7
Нд, 30 вер. 2018 11:01 користувач Simon Svensson<EMAIL_ADDRESS>пише:

Would it make more sense to add the missing methods to the contract?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/laravel/framework/pull/25830#issuecomment-425702660,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AMGNObsm4hl4EIZZOkPOeIKBxoTZqbGPks5ugHo8gaJpZM4XAsB4
.

Are you thinking of breaking changes? The __construct method is inherited to almost every existing service provider released (except if they declare their own __construct), Your changes here means that I can no longer send in my own application that proxies the calls to register() with calls to the IoC container I actually use, as an example. So these changes already have some issues with backward compatibility.
You will find that there are several cases where methods are missing in interfaces, and developers have to treat these existing interfaces as outdated, and consider what Laravel actually does, when building things. If all implementations must already have the missing method to work, then adding the method to the interface will cause no issues.
I think the correct solution is to add the missing methods to the interfaces, or the interfaces will never be complete, Go in the other direction, and depending on implementations instead of contracts, feels like stepping backwards. I also think that both alternatives should target 5.8.