Fix mysql connection pooling

So I ran into an issue where 500+ hosts seems to make Kolide Fleet's web interface unusable (based on the quickstart Heroku script).
Based on my own lazy question and the help of folks like @marpaia & @groob I was pointed at issue https://github.com/kolide/fleet/issues/1513 indicating the need to cap open and idle MySQL connections.
This is a start, but I'm working on it. Help or thoughts are welcome, but this is a current blocker for me.

@zwass Yep, I knew someone would point me at the stuff you'd need done. It's a WIP but I'm trying to get it done quickly. I'll give those links a look and add that.

Oh and there's one more place where you'll need to reference the config: https://github.com/kolide/fleet/blob/master/server/config/config.go#L193

@zwass Let me know if I wired that up correctly.

@zwass Alright I think I got through most of it, I'm trying to pick apart your testing framework to figure out what I need to change. I ended up just setting the default values in config.go to match what the testing suite seems to want:
man.addConfigInt("mysql.max_open_conns", 9, "MySQL maximum open connection handles.")
man.addConfigInt("mysql.max_idle_conns", 10, "MySQL maximum idle connection handles.")

I'm not sure we want these defaults to stick, but I was just going after that sweet sweet ✅ and couldn't figure out where that test suite value was coming from.
What else can I do to push this through?

Ah @sroberts the test actually caught a bug here (I am noting test failures from https://circleci.com/gh/sroberts/fleet/9)! There was an error roundtripping the config through YAML (I know this test is hard to read, but on the plus side it caught our issue here even though we didn't explicitly include these new flags). You need to add the appropriate yaml tags to the struct at https://github.com/kolide/fleet/pull/1672/files#diff-c5ba45b5e0ef818c73c30250bab82c42R28. It should look like
	MaxOpenConns  int `yaml:"max_open_conns"`
	MaxIdleConns  int `yaml:"max_idle_conns"`

Please add this, then return the default values to the defaults we prefer and see if the test passes.  At that point I think we should be good to merge.

@zwass I think that did it!

@zwass Not keeping up with your build system will this be included in new Quickstart repos now or is there a build process for that first?

@sroberts The quickstart scripts will pull the latest stable release, so this will be included when we next cut a release.


x/crypto/ssh: SSH_MSG_USERAUTH_PK_OK handling differs from OpenSSH

Go version
go version go1.20.5 darwin/arm64
What operating system and processor architecture are you using (go env)?

I was encountering the same error in https://github.com/golang/go/issues/54027 for connecting to a remote server outside of my control. In this scenario, the remote server does not follow the RFC in creating SSH_MSG_USERAUTH_PK_OK packets.
The RFC specifies that SSH_MSG_USERAUTH_REQUEST packets include string    public key algorithm name and the server would respond with a SSH_MSG_USERAUTH_PK_OK that includes string    public key algorithm name from the request.
In this case, I would see our SSH_MSG_USERAUTH_REQUEST include an algorithm like rsa-sha2-256, but the SSH_MSG_USERAUTH_PK_OK response would always contain ssh-rsa for all RSA algorithms provided.
What did you expect to see?
Go SSH handshakes have the same outcome as OpenSSH handshakes for the same parameters.
What did you see instead?
OpenSSH handshakes succeed with the remote SSH server while Go SSH handshakes do not.
The Go handshake fails because the handling here checks that the outbound algorithm string matches the one in the response. In our case, the remote server is not following the RFC and sending back the type rather than the algorithm string that was sent to it. So Go's implementation considers this a failed auth and returns an error to the application.
Yet, OpenSSH via ssh on the command line succeeds for this server. The OpenSSH implementation for handling SSH_MSG_USERAUTH_PK_OK doesn't check the exact string matches, rather, it converts the algorithm names into the key types and compares on that (code for the check, code for the struct).
I admit, OpenSSH's handling here differs from the RFC, but it does result in a successful connection while Go's implementation does not. I also tried commenting out Go's logic around key validation that invokes these packets and the connection succeeded, so the broken invariant doesn't actually impact the connection overall.
I will put up a pull request to modify Go's implementation of SSH_MSG_USERAUTH_PK_OK checks to match OpenSSH's.

Thanks for the report. You mention that you are using Go 1.20 -- I assume the same problem exists in 1.21 and on tip?
@drakkan @golang/security per owners.

Hello @stephenm-stripe, thanks for the detailed info. So this is yet another egde case for RSA keys.
Can you please confirm that the following patch works with your server? (also for certificates)
0001-ssh-relax-algo-check-in-SSH_MSG_USERAUTH_PK_OK.zip

@thanm I haven't tested it on 1.21 or tip, but since this is in x/crypto, I don't think those will influence the outcome unless I misunderstand?
@drakkan Thanks for the patch. I have tested it against the non-compliant server and confirm it works.

Thanks for confirming. Can you please modify your CL like my proof of concept? I think it is more readable to have separate conditions for each case

Thanks for confirming. Can you please modify your CL like my proof of concept? I think it is more readable to have separate conditions for each case

Yes. I meant to update the existing one, but have created https://go-review.googlesource.com/c/crypto/+/553035 instead.

I'd like to push back a little on this.
The rsa-sha2-256 / ssh-rsa transition is already extremely complex, and quirk compatibility edge cases add complexity that might invalidate safety assumptions at a distance. They are also a maintenance burned going forward.
We do add quirk workarounds when they are necessary for ecosystem reasons (i.e. if five OpenSSH versions in a row exhibited a broken behavior), but only after there was an attempt to fix the issue on the peer's side, and only if the broken peer is popular.

a remote server outside of my control

Can you share more about what implementation has this issue? Is there a fix? How common is it?

Replying from my personal account (as mentioned in this comment).

a remote server outside of my control

Can you share more about what implementation has this issue? Is there a fix? How common is it?

I don't have details on the implementation, other than it was a third-party enterprise software suite for Windows. There is no known fix. We did inform the server owners of this limitation of the vendor software they are using, but they seemed unlikely to pursue alternative solutions given that we were their only client experiencing SSH issues (I suspect we were the only ones using Go to connect). On our side, of the many servers we connected to for SFTP purposes, this was the only remote server that had this issue.


How to make a prediction of heatmap (matrix) when y can only be dimension 1?

How to make a prediction of heatmap (matrix) when y can only be dimension 1?
I intend to predict the pixel location of the body pose, where each pixel is a probability of the pose. Hence, I should have a matrix of the same size as the input image. However, I am encountering the following error when y is a matrix: ValueError: Label must be 1D or 2D (with 2nd dimension being 1)

use softmax with multi_output=True

i am not passing the output of the last layer through softmax. In fact, the last layer is just a convolution layer and the size of the output is 64x64

in fact i need my label to be of dimension (batch_size, number_of_heat_maps=16, dimension_y=64, dimension_x=64). For each image, it has to predict 16 heatmaps of size 64x64.

This issue is closed due to lack of activity in the last 90 days. Feel free to reopen if this is still an active issue. Thanks!


Loading latencyflex_layer.dll failed with error code: 1114

I'm trying to use latencyflex with Apex and get this error:
DXVK_NVAPI_ALLOW_OTHER_DRIVERS is set, reporting also GPUs with non-NVIDIA proprietary driver
NvAPI Device: NVIDIA GeForce RTX 3090 (545.29.6)
NvAPI Output: \\.\DISPLAY1
DXVK_NVAPI_DRIVER_VERSION is set to '49729', reporting driver version 497.29
11903.288:0178:017c:trace:loaddll:build_module Loaded L"C:\\windows\\system32\\latencyflex_layer.dll" at<PHONE_NUMBER>280000: builtin
11903.288:0178:017c:trace:loaddll:free_modref Unloaded module L"C:\\windows\\system32\\latencyflex_layer.dll" : builtin
Loading latencyflex_layer.dll failed with error code: 1114
NvAPI_Initialize: OK
NvAPI_QueryInterface (0x33c7358c): Unknown function ID
NvAPI_QueryInterface (0x593e8644): Unknown function ID
NvAPI_D3D_SetSleepMode: No implementation
11903.339:0178:017c:trace:unwind:RtlCaptureStackBackTrace (1, 5,<PHONE_NUMBER>7C9AF0,<PHONE_NUMBER>000000)

Another error that seemed notable was:
12524.935:0064:0090:warn:seh:handle_syscall_fault backtrace: --- Exception 0xc0000005 at 0x7f4857105e5e: /home/pod/.local/share/Steam/compatibilitytools.d/GE-Proton8-27/files/lib64/wine/x86_64-unix/winebus.so + 0x4e5e.
12524.935:0064:0090:trace:unwind:dwarf_virtual_unwind function 7f4857105e5e base 0x7f4857105b00 cie 0x7f4857114ca0 len 14 id 0 version 1 aug 'zR' code_align 1 data_align -8 retaddr %rip

Here are the files I've copied:
~/.local/share/Steam/compatibilitytools.d/GE-Proton8-27 $ fd latencyflex
files/lib64/wine/x86_64-unix/latencyflex_layer.so
files/lib64/wine/x86_64-windows/latencyflex_layer.dll
files/lib64/wine/x86_64-windows/latencyflex_wine.dll
files/share/default_pfx/drive_c/windows/system32/latencyflex_layer.dll
files/share/default_pfx/drive_c/windows/system32/latencyflex_wine.dll

I'm using latencyflex from NixOS, and it looks like the repo in the repo I use it's on revision 3bc9636f94a3220ce55edb642077349e396a7d6a.
I also tried the advice to modify toolmanifest.vdf to disable the steam container runtime here, but that didn't seem to work.
steam-log-apex.log

Here are the places I copied all files to:
cp -v ~/Downloads/latencyflex-v0.1.1/wine/usr/lib/wine/x86_64-unix/latencyflex_layer.so  ~/.local/share/Steam/compatibilitytools.d/GE-Proton8-27/files/lib64/wine/x86_64-unix/latencyflex_layer.so

cp -v ~/Downloads/latencyflex-v0.1.1/wine/usr/lib/wine/x86_64-windows/latencyflex_layer.dll ~/.local/share/Steam/compatibilitytools.d/GE-Proton8-27/files/lib64/wine/x86_64-windows/
cp -v ~/Downloads/latencyflex-v0.1.1/wine/usr/lib/wine/x86_64-windows/latencyflex_wine.dll ~/.local/share/Steam/compatibilitytools.d/GE-Proton8-27/files/lib64/wine/x86_64-windows/

cp -v ~/Downloads/latencyflex-v0.1.1/wine/usr/lib/wine/x86_64-windows/latencyflex_layer.dll ~/.local/share/Steam/compatibilitytools.d/GE-Proton8-27/files/share/default_pfx/drive_c/windows/system32/
cp -v ~/Downloads/latencyflex-v0.1.1/wine/usr/lib/wine/x86_64-windows/latencyflex_wine.dll  ~/.local/share/Steam/compatibilitytools.d/GE-Proton8-27/files/share/default_pfx/drive_c/windows/system32/

# nvapi64.dll already existed, so backing it up before copy
mv ~/.local/share/Steam/compatibilitytools.d/GE-Proton8-27/files/lib64/wine/nvapi/nvapi64.dll ~/.local/share/Steam/compatibilitytools.d/GE-Proton8-27/files/lib64/wine/nvapi/nvapi64.dll.bak
cp -v ~/Downloads/x64/nvapi64.dll ~/.local/share/Steam/compatibilitytools.d/GE-Proton8-27/files/lib64/wine/nvapi/

Things seem to be working fine now, closing.


fix(server): use correct encoding

🔗 Linked issue
None (experienced while demoing for a video)
❓ Type of change

[ ] 📖 Documentation (updates to the documentation, readme, or JSdoc annotations)
[x] 🐞 Bug fix (a non-breaking change that fixes an issue)
[ ] 👌 Enhancement (improving an existing functionality like performance)
[ ] ✨ New feature (a non-breaking change that adds functionality)
[ ] 🧹 Chore (updates to the build process or auxiliary tools and libraries)
[ ] ⚠ Breaking change (fix or feature that would cause existing functionality to change)

📚 Description

Right now, all binary files saved through the unstorage http server are not encoded correctly, as the default encoding is "utf-8",
even for these files. This PR fixes the behavior by not applyng any encoding when the file is marked as raw, otherwise using the default utf8 encoding.
📝 Checklist

[ ] I have linked an issue or discussion.
[ ] I have updated the documentation accordingly.

Please consider making a minimal reproduction or add failing test (that fails without current changes)

@pi0 Done! Added a fs-driver-based test to showcase the problem. 👍🏻

@pi0 Any chance to see this as part of a patch version soonish?


updates extension headers for the latest XML file

Adds separate device handle lists for external memory and semaphores
Adds bits for cl_khr_initialize_memory
Adds enums for cl_arm_scheduling_controls

These header changes will require CTS changes because the device handle list changes are not backward compatible - see https://github.com/KhronosGroup/OpenCL-CTS/issues/1807.  If needed, I can separate the device handle list changes to their own PR.

Merging as discussed in the November 14th teleconference.


Support for Visual Studio Online

Currently, when you try to install Settings Sync you get this error message:

It would be awesome if this feature became available for VSO (Visual Studio Online) as you frequently have to switch between workspaces, which means a lot of extension installations.

And GitHub Codespaces which I think will be in wider use.
Are there any updates on this?

I somewhat doubt this feature will be added any time soon given the lack of commits and the fact that Visual Studio Code now has its own settings synchronisation system. https://github.com/shanalikhan/code-settings-sync/issues/1188#issuecomment-616296912

I somewhat doubt this feature will be added any time soon given the lack of commits and the fact that Visual Studio Code now has its own settings synchronisation system.

While VSCode does have its own sync system, its not a perfect soulution. Me for example, I use VSCodium, which likely won't add the sync feature of normal VSCode because of the amount of tracking that would likely be done. This extension also allows others to see my config easier than using the new syncing.
Therefore i would really love if the extension supported GitHub Codespaces (previously VSCode Online).
/cc @shanalikhan

I'm open for PR. Feel free to contribute.

Seems the setting that controls it is extensionKind in https://github.com/shanalikhan/code-settings-sync/blob/master/package.json. Is there any reason it is set to ["ui"] instead of ["workspace", "ui"]?
I'll do some testing and see if it works with different settings

@ent3r the problem is that you can have different settings in workspaces and therefore user settings will conflict with workspace settings.
For example, if you are using Remote Development, you will lose all your extensions in the backup.
Additional info: https://github.com/shanalikhan/code-settings-sync/issues/870

So from what I just read it would have to be configured separately if it's a workspace setting, is that correct? I think it'd be worth it, considering (and correct me if im wrong) Github Codespaces uses the same workspace but different folders.
So the change that would be needed would be to just add "workspace" to the end of the array then?

@ent3r sadly, but no. Just extending extensionKind with "workspace" will mess up the settings for those using the Remote Development feature(at least). So there should be another solution
One more link from previously noted issue https://github.com/shanalikhan/code-settings-sync/issues/913

So there is no way to fix it then? Is there no way to get it to work on remotes or github codespaces?

Hm, doc says:

"extensionKind": ["ui", "workspace"] — Indicates the extension prefers to run as a UI extension, but does not have any hard requirements on local assets, devices, or capabilities. When using VS Code, the extension will run in VS Code's local extension host if it exists locally, otherwise will run in VS Code's workspace extension host if it exists there.

So it might work, but needs to be tested with Remote Development.
Also, according to the doc, you can check if it will work in Codespaces by changing remote.extensionKind in the settings:
{
  "remote.extensionKind": {
    "ms-azuretools.vscode-cosmosdb": ["ui"],
    "msjsdiag.debugger-for-chrome": ["workspace"]
  }
}

So i tried that, which did work!
...except it stopped installing once it reached "better comments", for the same reason as this extension.

So if extensionKind was set to ["ui", "workspace"] and we added an if/else (try/catch?) when installing i think it'd be possible to make this work.


Makefile syntax support

Make is a great tool even for modern development.
There's a bunch of projects depending on CodeMirror, which I'd like to have Makefile syntax highlight support.
I know that there's a closed issue for this, but please keep this one open, because I posted reward for it on bountysource.com

No PR to add a new mode is going to be merged in this repository, so a Makefile mode would have to live in its own package, and I don't think this is the appropriate place for this issue, bountysource or not.

@inem , check the update on BountySource.


Exception Analysis: Improve handling of generic raise.

Here add example of generic raise.

Currently this:
let genericRaiseIsNotSupported = exn => raise(exn);

reports:
  genericRaiseIsNotSupported might raise TODO_from_raise (Exn.re:164:40) and is not annotated with @raises TODO_from_raise

CC @sgrove

So now this is supported:
[@raises genericException]
let genericRaiseIsNotSupported = exn => raise(exn);


TypeScript Support

Looks good to me, @fohletex what do you think?

Just for your information, @kuasha420 – we're currently performing some updates on internal code during which we will integrate and test your changes as well, so that's why it takes a bit longer to evaluate this PR. We hope to be able to merge it soon.

@slhck No problems at all.

Looks okay - we should add an example app in order to improve the merge-speed of such requests. Thank you @kuasha420 for your inputs!

Published in v2.0.0


Use python -m pip install in all examples

Contributions

[X] I have read the contribution docs, and understand what's expected of me.

Link to the page on docs.getdbt.com requiring updates
Any page that includes pip install. (Dozens and dozens of pages!)
Use something like the following to find them:
git grep "pip install" website/docs/

What part(s) of the page would you like to see updated?
Just like the examples in the pip documentation, replace all instances of pip install with python -m pip install
Additional information
The rationale is explained well by others:

https://snarky.ca/why-you-should-use-python-m-pip/
https://adamj.eu/tech/2020/02/25/use-python-m-pip-everywhere/

TLDR

Python and pip might point to different versions of Python, and the recommended syntax allow you to be very purposeful and explicit in what Python interpreter you want to be used/affected. Otherwise a 5 hour fight with issues is possible.

This is considered a universal best practice because it works regardless of the situation whereas without python -m it may or may not work as intended. Always using the best practice helps teach other people about it.

Thanks for opening this @dbeatty10! I marked it high priority as we are not supporting a best practice in the docs.

Closed in https://github.com/dbt-labs/docs.getdbt.com/pull/4498


[BUG] building agent  can't find the file  [src/flow_generator/protocol_logs/rpc/brpc.proto.rs]

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

DeepFlow Component
Agent
What you expected to happen
使用 docker 编译 agent的时候出现报错无法找到文件
Caused by:
  process didn't exit successfully: `/deepflow/agent/target/debug/build/deepflow-agent-38c8038ea4af6954/build-script-build` (exit status: 101)
  --- stdout
  cargo:rustc-env=AGENT_NAME=deepflow-agent-ce
  cargo:rustc-env=BRANCH=beagle-dev

  cargo:rustc-env=COMPILE_TIME=2024-06-05 06:32:57
  cargo:rustc-env=COMMIT_ID=f4c8fd627811c43a7fbc9a2d4514db1038131f99

  cargo:rustc-env=REV_COUNT=10447

  cargo:rustc-env=RUSTC_VERSION=rustc 1.77.1 (7cf61ebde 2024-03-27)

  cargo:rerun-if-changed=./src/plugin/WasmPluginApi.proto
  cargo:rerun-if-changed=./src/plugin
  cargo:rerun-if-changed=src/flow_generator/protocol_logs/mq/PulsarApi.proto
  cargo:rerun-if-changed=src/flow_generator/protocol_logs/mq
  cargo:rerun-if-changed=src/flow_generator/protocol_logs/rpc/brpc/baidu_rpc_meta.proto
  cargo:rerun-if-changed=src/flow_generator/protocol_logs/rpc

  --- stderr
  make[1]: *** No rule to make target `clean'.  Stop.
  make: *** [clean] Error 2

  thread 'main' panicked at build.rs:94:9:
  compile libtrace.a error!
  note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
  Error: file `src/flow_generator/protocol_logs/rpc/brpc.proto.rs` does not exist
warning: build failed, waiting for other jobs to finish...

检查发现缺失改路径下文件 src/flow_generator/protocol_logs/rpc/brpc.proto.rs
查看了其他分支与版本发现一样没有该文件
能否提供一下此文件？或者去除 build.rs下的校验？
How to reproduce
使用 docker 编译
最简单的方法是使用我们构建好的编译环境：
git clone --recursive https://github.com/deepflowio/deepflow.git
cd deepflow
docker run --privileged --rm -it -v \
    $(pwd):/deepflow -v ~/.cargo:/usr/local/cargo hub.deepflow.yunshan.net/public/rust-build bash -c \
    "cd /deepflow/agent && cargo build"

# binary file directory: ./agent/target/debug/deepflow-agent

DeepFlow version
No response
DeepFlow agent list
No response
Kubernetes CNI
No response
Operation-System/Kernel version
No response
Anything else
No response
Are you willing to submit a PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Hello, could you please refer to the section on compilation in this article: https://mp.weixin.qq.com/s/-jWYq2rTRaTueuN0sAb3lA? If the issue persists, kindly provide a detailed account of the steps you followed.

需要  git submodule init  ;  git submodule update; git pull --recurse-submodules


Custom welcome message is not used?

There is a custom welcome message set for the Elisabeth Begijnhof app using app translations. However, the default welcome message is sent.

Issue migrated to our-city-app/mobicage-backend#93


STOR-1127: Set the CSI StorageClass as the default one on new installations

This depends on the kube 1.26 rebase: https://github.com/openshift/kubernetes/pull/1432

/hold
for https://github.com/openshift/kubernetes/pull/1432

/close
In Azure the default SC should be Azure Disk.


add Komodo sec-representants

Thanks! Rather than a personal email address, can you provide an organization-wide alias like security@? People may change jobs and prevent any emails from getting through.


Update Readme

Created with https://github.com/dkhamsing/frankenstein

Thanks for the suggestions, @ReadmeCritic!

:wink


[C++][Parquet] PP] Add API to return metadata size and Skip reading values

There is no API to return the size of the metadata.
SQL allows to skip rows via the "offset" clause. Adding a method to skip reading values in parquet-cpp will be helpful.

Reporter: Deepak Majeti / @majetideepak
Assignee: Deepak Majeti](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=mdeepak) / @majetideepak
Note: This issue was originally created as PARQUET-731. Please see the migration documentation for further details.

Wes McKinney / @wesm:
Issue resolved by pull request 169
https://github.com/apache/parquet-cpp/pull/169


Use MutableMap as implementation of IntMap

The purpose of IntMap (added in androidx) was to avoid Integer boxing when using MutableMap. They've provided the implementation in desktopMain (androidMain uses android-only SparseArray).
We took that implementation to jsNativeMain source set too.
But we faced a crash in some samples when running in iOS ( For reproducer, see dima.avdeev/reproduce-lazy-column-crash branch - it contains this PR's commit though, so it should work now).
While it was possible to fix the provided implementation for that specific crash, we don't have any tests for it, so I think it's better to rely on kotlin's MutableMap (it boxes Integer though, which contradicts the purpose of IntMap, but quick fix and corectness is more important  for us right now)
TODO: Consider refactoring to avoid Integer boxing
NOTE:
this PR changes the implementation for desktop too. We didn't see any issues with it, but iOS was not easy to find a reproducer too, so the previous implementation can probably cause an issue on desktop too in certain cases.

Just for more context:
The issue was reported for desktop: https://github.com/JetBrains/compose-multiplatform/issues/2946
This PR fixes that issue.

@eymar I found out that the problem is actually just missing a (), which causes the calculation of mid to get wrong results.
This problem can be solved by simply modifying:
https://github.com/JetBrains/compose-multiplatform-core/blob/944987953219d7c5302153110c5623129352c32c/compose/runtime/runtime/src/desktopMain/kotlin/androidx/compose/runtime/collection/ActualIntMap.desktop.kt#L110
- val mid = max + min / 2
+ val mid = (max + min) / 2

Here is my test case:
fun main() {
    // test IntMap
    val map = IntMap<String>()
    map[8] = "one"
    map[2] = "two"
    map[33] = "three"
    map[4] = "four"
    map[40] = "five"
    map[5] = "six"

    assert(map.size == 6)
    assert(map[8] == "one")
    assert(map[2] == "two")
    assert(map[33] == "three")
    assert(map[4] == "four")

    // remove
    map.remove(33)
    assert(map.size == 5)
    assert(map[33] == null)

    // update
    map[4] = "four updated"
    assert(map[4] == "four updated")

    // test binarySearch
    val arr = intArrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
    for (i in 1..10) {
        assert(arr.binarySearch(10, i) == i - 1)
    }
    println("pass")
}

@ShirasawaSama Thanks! You are right.
There  was at least one more thing that caused a crash on iOS.
So for now we don't rush with fixing it to avoid boxing/unboxing. We better avoid extra risks at the current moment and improve later after we add all necessary tests.

@eymar Oh sorry, I forgot to enable -ea, even if I modify this line of code, my above test case still fails to run. Maybe I'll provide a correct IntMap implementation later when I have time.

Here's a correct IntMap implementation:
 View Code
```kotlin
internal class IntMap {
    private val DELETED = Any()
    private var keys = IntArray(10)
    private var _size = 0
    private var values = Array(10) { null }
/**
 * True if this map contains key
 */
operator fun contains(key: Int): Boolean {
    return keys.binarySearch(key, toIndex = _size) >= 0 && values[_size] !== DELETED
}

/**
 * Get [key] or null
 */
operator fun get(key: Int): E? {
    val index = keys.binarySearch(key, toIndex = _size)
    return if (index >= 0 && values[index] !== DELETED) {
        @Suppress("UNCHECKED_CAST")
        values[index] as E
    } else {
        null
    }
}

/**
 * Get [key] or [valueIfNotFound]
 */
fun get(key: Int, valueIfAbsent: E): E {
    val index = keys.binarySearch(key, toIndex = _size)
    return if (index >= 0 && values[index] !== DELETED) {
        @Suppress("UNCHECKED_CAST")
        values[index] as E
    } else {
        valueIfAbsent
    }
}

/**
 * Set [key] to [value]
 */
operator fun set(key: Int, value: E) {
    var index = keys.binarySearch(key, toIndex = _size)
    if (index >= 0) {
        values[index] = value
    } else {
        index = index.inv()
        keys = keys.insert(_size, index, key)
        values = values.insert(_size, index, value)
        _size++
    }
}

/**
 * Remove key, if it exists
 *
 * Otherwise no op
 */
fun remove(key: Int) {
    // note this never GCs
    val index = keys.binarySearch(key, toIndex = _size)
    if (index >= 0) {
        values[index] = DELETED
        _size--
    }
}

/**
 * Clear this map
 */
fun clear() {
    _size = 0
    keys = IntArray(10)
    values = Array(10) { null }
}

/**
 * Current count of (key, value) pairs
 */
val size: Int
    get() = _size

}
private fun IntArray.insert(currentSize: Int, index: Int, value: Int): IntArray {
if (currentSize + 1 <= size) {
if (index < currentSize) {
System.arraycopy(this, index, this, index + 1, currentSize - index)
}
this[index] = value
return this
}
val result = IntArray(size * 2)
System.arraycopy(this, 0, result, 0, index)
result[index] = value
System.arraycopy(this, index, result, index + 1, size - index)
return result

}
private fun Array<Any?>.insert(currentSize: Int, index: Int, value: Any?): Array<Any?> {
if (currentSize + 1 <= size) {
if (index < currentSize) {
System.arraycopy(this, index, this, index + 1, currentSize - index)
}
this[index] = value
return this
}
val result = Array<Any?>(size * 2) { null }
System.arraycopy(this, 0, result, 0, index)
result[index] = value
System.arraycopy(this, index, result, index + 1, size - index)
return result

}
fun main() {
// test IntMap
val map = IntMap()
map[8] = "one"
map[2] = "two"
map[33] = "three"
map[4] = "four"
map[40] = "five"
map[5] = "six"
assert(map.size == 6)
assert(map[8] == "one")
assert(map[2] == "two")
assert(map[33] == "three")
assert(map[4] == "four")

// remove
map.remove(33)
assert(map.size == 5)
assert(map[33] == null)

// update
map[4] = "four updated"
assert(map[4] == "four updated")

// test insert
val arr2 = intArrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val arr3 = arr2.insert(10, 5, 11)
assert(arr3[5] == 11)
assert(arr3[6] == 6)
assert(arr3[7] == 7)
assert(arr3[8] == 8)

// test insert
val arr4 = intArrayOf(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
val arr5 = arr4.insert(10, 0, 11)
assert(arr5[0] == 11)
assert(arr5[1] == 1)
assert(arr5[2] == 2)
println("pass")

}
</details>


Added E-Commerce Website Testcases

Added E-Commerce Website Testcases related to Seller's Account Section of Website

@Himanshi0512 Thanks for contributing. Your PR is accepted for the Hacktoberfest. Please fill this form to become eligible for LoginRadius cool swags. :)


Half logged out state when grounding Meteor.users

Hi!
This problem is a bit elusive, so I'll try to bring enough information so we could perhaps figure it out:
In my app all users sign in using accounts-facebook.
It's vital for my app to keep working and have the user's data when offline, so I'm grounding Meteor.users:
if (Meteor.isClient) {
	Meteor.startup(() => {
		Ground.Collection(Meteor.users);
	});
}

Sometimes, however, when connected to the server, I see that while everything seems to be working ok - the user "seems" to be logged out (i.e.,  gives a "sign in with facebook" button). I can't quite figure out exactly what causes this and when this happens - but I think it's usually after the user disconnects from the server and reconnects.
If I exit the app and reenters it just becomes connected and signed in again (all becomes OK).
I also have some callback registered on "Hooks.onLoggedOut" which never gets called - so the system doesn't know that the user has logged out (because he really didn't log out).
It's really hard to debug since I can't reproduce this problem manually. It just sometimes happens.
My guess is that it has to do with some conflict in the grounded Meteor.users. Does that sound reasonable? Any idea how I can go about trying to handle this?
Thanks! Please tell me if you need more info...

Same error here too.
I have the normal username password login, On my Android / IOS apps if the apps were terminated when user is logged in and reopened the logged in status is gone. The user is not there anymore.
But if I terminate the app again and reopen it, I see the user is logged in. this is weird.
@raix

If it helps the discussion, I ended implementing my own fix, saving the user's information locally and not grounding Meteor.users anymore.
It wasn't easy (since I need to take care of all the synching between Meteor.user() and my own locally saved data manually), but it did fix the issue. I don't see this problem anymore.

Care to share some code please ?

I'd love to, but it's not a simple workaround that I can find a specific piece of code that "did the trick" and paste it here.
Basically, I created a local persistent session variable "localUser" and used a Tracker.autorun to make it synced with Meteor.user(). To address the specific needs of my app, I then also had to add some cases where I want this sync not to happen (e.g., when the user is disconnected from the internet), remember a logout action if it happened when the user was offline, etc. It's really very specific and it's made of code going around many different places in my client codebase.
Sorry :/

Have you tried 2.0.0-rc.3 (mind the new patterns)


[Issue 7347] Set default value for offload-deletion-lag

Fixes #7347
Motivation
The default value of the offload-deletion-lag is null, this will cause an NPE problem.
Modifications
Set the default value of the offload-deletion-lag to -1.
Verifying this change
Add unit test for method ManagedLedgerImpl.isOffloadedNeedsDelete.
Does this pull request potentially affect one of the following parts:
If yes was chosen, please highlight the changes

Dependencies (does it add or upgrade a dependency): (no)
The public API: (no)
The schema: (no)
The default values of configurations: (yes)
The wire protocol: (no)
The rest endpoints: (no)
The admin cli options: (no)
Anything that affects deployment: (no)

Documentation

Does this pull request introduce a new feature? (no)

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

JavaInstanceTest

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

/pulsarbot run-failure-checks

I'm trying to work around this until 2.6.1 is released.  Not sure what to do.

The default value of the offload-deletion-lag is null, this will cause an NPE problem

From the docs I thought the default value would be 14400000

Will explicitly setting a value for this setting help?


[BUG]  HostParamValidator vailt util is failed for https://www.baidu.com

Is there an existing issue for this?

[X] I have searched the existing issues

Current Behavior

After debugging, it turns out that the domain with https is not being replaced.

Expected Behavior
test is successful.
Steps To Reproduce
no
Environment
HertzBeat version(s):

Debug logs
no
Anything else?
no

it solved, so closed.


Crashed at   notificationDesign = [NSJSONSerialization JSONObjectWithData:[NSData dataWithContentsOfFile:path] options:kNilOptions error:nil];

Hi, I used this, but it crashed at TSMessageView.m, line 61.
notificationDesign = [NSJSONSerialization JSONObjectWithData:[NSData dataWithContentsOfFile:path] options:kNilOptions error:nil];
-- [NSData dataWithContentsOfFile:path]   -----> 0x0000000..

Version 0.9.3， iPhone 6s plus， iOS 9.3.2

same issue here

Same here. Still not solution? :(

Copy the jaon fil from pod into your project bundle

same issue here

@techabserve I don't have time to check which commit exactly it was, but the current state of master has this problem fixed, so instead of default pod 'TSMessages', '0.9.12' you can change it to: pod 'TSMessages', :git => 'https://github.com/KrauseFx/TSMessages.git' and it'll install 0.9.13 (which was never released) and it works just fine 🤗


Add real content

hooray

done

Hi, @beelia! This is great your are going through the tutorial. It looks like you need to make sure you open the pull request in your fork, rather than in this repository.

Looks like you have done this. Congrats!
https://github.com/beelia/write-the-docs-tutorial/pull/2
Closing this here because there should not be an index file in this main repository, only forked branches.


some Monad[M] can be FlatMap[M] in Enumerator

(maybe elsewhere).
For instance: https://github.com/travisbrown/iteratee/blob/master/core/src/main/scala/io/iteratee/Enumerator.scala#L75
some WriterT instances are only FlatMap (for instance if the type we are writing to is only a Semigroup). Also Map[K, ?] has a FlatMap but no Monad. May be a stretch, but it could be cool to imagine a bunch of parallel operations in a FlatMap[Map[K, ?]] that are the same up to a key. That might be a model of map/reduce?

Fixed in #118.


header overflow if the table is inside a container

I like what you have done for making a fixed header html table. But since you are using 'position: fixed', there is this drawback of headers overflowing the container boundary, if the table is inside a containing div which has a given width/height and handles overflow using scrollbars.
I have modified your fiddle to show this here:
http://jsfiddle.net/cGF4W/
Try scrolling using the outside scrollbar & you'll see headers overflowing the boundary.
I think you can get rid of this using 'position:absolute' but then the scrolling logic goes for a toss.
I think the scenario of having tables within a container is very generic and when handled, will make this plugin very versatile.
Thanks.

Thanks for the feedback. I actually designed the plugin to avoid having to nest my long tables inside fixed size containers, but I get your point.
I'll put it on my list of things that should be handled when I get the time to look at the plugin again.
Cheers
Jonas

Jonas,
+1 on MrHunt's suggestion.
Merg

I suggest to change scrollLeft = base.$scrollableArea.scrollLeft(), to scrollLeft = base.isWindowScrolling ? base.$scrollableArea.scrollLeft() : 0,
https://github.com/jmosbech/StickyTableHeaders/blob/master/js/jquery.stickytableheaders.js#L130

Hacky fix that doesn't require modifying the plugin:
$('table').each(function (i, e) {
    var table = $(e);
    var container = table.parents('.table-responsive').first();
    var floating = false;

    table.stickyTableHeaders();

    if (container.length > 0) {
        var header = table.find('.tableFloatingHeaderOriginal');
        header.css('overflow-x', 'hidden');

        var headerOriginalDisplay = header.css('display');
        var headerOriginalLeft = header.css('left');

        // Fix the header after a small delay in order to not interfere with the plugin
        var timer;
        function fixHeader(condition) {
            if (floating === true && condition === true) {
                clearTimeout(timer);
                header.hide();
                timer = setTimeout(function () {
                    header.fadeIn().css('display', headerOriginalDisplay);
                    header.width(container.width());
                    header.css('left', container.scrollLeft() + headerOriginalLeft);
                    header.scrollLeft(container.scrollLeft());
                }, 100);
            }
        }

        $(window).resize(function () { fixHeader(true); });
        $(window).scroll(function () { fixHeader(hasHorizontalScrollBar(container)); });
        container.scroll(function () { header.scrollLeft(container.scrollLeft()); });

        table.on('enabledStickiness.stickyTableHeaders', function () {
            floating = true;
            fixHeader(true);
        });

        table.on('disabledStickiness.stickyTableHeaders', function () {
            floating = false;
            clearTimeout(timer);
            header.css('display', headerOriginalDisplay);
        });
    }
});

What about this issue? This is fixed? I'm having the same problem with horizontal scroll bars.

Hey guys, I made some changes in the solution provided by jpeck (and applied the fix passed by cdfre here ) and It worked here in my case.
Here is the new solution (stressed with data)
http://jsfiddle.net/2oeuvzLz/
I basically substituted all the ".width()" to ".outerWidth()" and It worked fine.

@gabazureus there is a problem when resize browser the header does not resize clips...

@gabazureus
I used your source code in http://jsfiddle.net/2oeuvzLz/
it works well when no browser is not resized.
could you advice how to resize header when browser is resized

Add the below CSS to your table to fix the table header overflow of a container when scrolling to the left and right sides.
clip-path: inset(0 0 0 0);

Like the example below. In my case, I use Bootstrap and StickyTableHeaders.

  Navbar

            ....

            ...


Modified README to add  API and added scroll ability to text.

README.md modified for images API inclusion
Fix #120

Other than the above comment, looks good :)

@ajabri Comments have been addressed.

Thanks @shubhamjain0594 !


update error rate for GM/SM otel services

Relevant information
Describe what you have done and any details that you think are relevant or that you might want to discuss with us.
Checklist

[ ] I've read the guidelines and understand the acceptance criteria.
[ ] The value of the attribute marked as identifier will be unique and valid.
[ ] I've confirmed that my entity type wasn't already defined. If it is I'm providing an
explanation above.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Cian Buckley seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.

mmm there is something up with that bot - it's not a metric query like it thinks


Dev/querying

Codecov Report

Merging #1 (81c1b07) into master (6c2d4b1) will decrease coverage by 1.89%.
The diff coverage is 71.32%.

@@            Coverage Diff             @@
##           master       #1      +/-   ##
==========================================
- Coverage   79.10%   77.21%   -1.90%
==========================================
  Files          10       11       +1
  Lines         584      654      +70
==========================================
+ Hits          462      505      +43
- Misses        122      149      +27

Impacted Files
Coverage Δ

redbird/utils/case.py
26.92% <26.92%> (ø)

redbird/repos/mongo.py
36.84% <41.66%> (-1.09%)
:arrow_down:

redbird/base.py
88.50% <80.32%> (-1.65%)
:arrow_down:

redbird/repos/rest.py
91.89% <96.15%> (-0.97%)
:arrow_down:

redbird/exc.py
100.00% <100.00%> (ø)

redbird/repos/memory.py
100.00% <100.00%> (ø)

redbird/repos/sqlalchemy.py
93.39% <100.00%> (ø)

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 6c2d4b1...81c1b07. Read the comment docs.


Window scrolls on first click

I have an issue which causes different problems in different browsers.
I create a simple map and added a few markers, and when I click anywhere in the map the following happens depending on which browser I use:

Chrome 23: The window scrolls vertically down to center the mouse pointer
Firefox 17: The popup for the marker only fades in "half way"
IE 8: The map enters some "dragging" mode and follows the cursor just like when clicking and dragging the map, this does not end until I click again (probably when there's an "on up" event).

The code is fairly integrated into my project, so it's a bit difficult to extract something that'll be useful to you guys, I'm just looking for a pointer in the right direction of where the problem could lie.
Thanks!

This is still an issue on Chrome as of today ( 14/05/15 ).
As noted by a comment in commit  b61b7b4 by @Matheo13, removing this._map._container.focus(); line (7743 in leaflet-src 0.7.3) fixes the bug.

@nilguncelik it's a master version fix (2).

I saw something same issue in 1.0.3. My page scrolling up when I clicked the map after popup.
Issue going off when I commented string #12077:
		window.scrollTo(left, top);

@slako this is an old and closed issue. If you believe you have found a similar issue, please open a new one, clearly stating the problem, and the platform you're seeing it on, and preferably also an example reproducing it.

Hi Folks, I still faced this issue. I added ID to the map by passing prop => id='mapDiv'
then in React hooks adding below effect
useEffect(() => {
document.getElementById('mapDiv').focus();
});

Hi Guys, i had the exact same issue on a bootstrap modal. I fixed it by focusing on the div id after loading all markers. :)

You did not see the scrolling behaviour at all with this workaround? This just caused instant scrolling / jumping for me.

I also have this problem.  This did make things better:
"document.getElementById('mapDiv').focus();"
But it's still not ideal.  And I'm too scared to open it in Firefox to see how bad it is there. (I'm using Brave)

Locking this conversation as there is no use bumping issues that have been closed. As mentioned before, if you are still experiencing a similar issue please open up a new issue with clear steps to reproduce.


Fix for WFCORE-1826. CLI value-type completion fixes.

Took the opportunity of this change to fixe various issues:

Nested lists
Completed objects (propose })
Completed values (propose ,)
Resist to some user invalid syntaxes
Add new unit tests

Side effect is to fix WFCORE-1825

@aloubyansky please approve. Looked good to me, 10% because I understood the details and 90% because there are big fast tests!

Yes, looks great. Thanks!


Minor changes to gke.go

Two minor changes:

Remove return err as VS Code shows it's unreachable
Exchange the compare expression, since it looks more natural to put the variable i at the left.

/cc @chaodaiG

/lgtm
/approve


add "io" as known standard library

The io module has been standard since 2.6, see https://docs.python.org/2/library/io.html

Looks great, thanks!


[Removed] StreamRequest to fix watchOS builds.

fixes #675
all Xcode tests still pass 👍

CI failed due to Danger, gonna merge. Thanks!


OperationFailed: [Reason: version conflict for 36302267 expected=1 actual=-1]

Hi,
I have setup Solr-Mongo Integration on ubuntu. The following is my environment
Solr 5.1.0
Mongo 3.0.3
Mongo Connector 2.1
this the mongo-connector parameters I am using
sudo mongo-connector -m localhost:27017 -t http://localhost:8983/solr/demo -d solr_doc_manager
[CRITICAL] mongo_connector.oplog_manager:543 - Exception during collection dump
Traceback (most recent call last):
File "/usr/local/lib/python2.7/dist-packages/mongo_connector/oplog_manager.py", line 495, in do_dump
upsert_all(dm)
File "/usr/local/lib/python2.7/dist-packages/mongo_connector/oplog_manager.py", line 479, in upsert_all
dm.bulk_upsert(docs_to_dump(namespace), mapped_ns, long_ts)
File "/usr/local/lib/python2.7/dist-packages/mongo_connector/util.py", line 38, in wrapped
reraise(new_type, exc_value, exc_tb)
File "/usr/local/lib/python2.7/dist-packages/mongo_connector/util.py", line 32, in wrapped
return f(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/mongo_connector/doc_managers/solr_doc_manager.py", line 288, in bulk_upsert
self.solr.add(batch, **add_kwargs)
File "/usr/local/lib/python2.7/dist-packages/pysolr.py", line 813, in add
return self._update(m, commit=commit, softCommit=softCommit, waitFlush=waitFlush, waitSearcher=waitSearcher)
File "/usr/local/lib/python2.7/dist-packages/pysolr.py", line 399, in _update
return self._send_request('post', path, message, {'Content-type': 'text/xml; charset=utf-8'})
File "/usr/local/lib/python2.7/dist-packages/pysolr.py", line 331, in _send_request
raise SolrError(error_message)
OperationFailed: [Reason: version conflict for 36302267 expected=1 actual=-1]
015-07-13 23:48:22,709 [ERROR] mongo_connector.oplog_manager:551 - OplogThread: Failed during dump collection cannot recover! Collection(Database(MongoClient('localhost', 27017), u'local'), u'oplog.rs')
2015-07-13 23:48:23,085 [ERROR] mongo_connector.connector:302 - MongoConnector: OplogThread <OplogThread(Thread-2, started<PHONE_NUMBER>48448)> unexpectedly stopped! Shutting down
what is this error mean and how to config?thanks

This means that there is a version conflict with one of the documents that mongo-connector is trying to insert into Solr (usually because the _version_ field in a document doesn't match the the _version_ of that document already in Solr). The strange thing about this is that this is happening during the initial import phase, so mongo-connector shouldn't be specifying a version for any documents. Do your documents include a _version_ field coming out of MongoDB?
This page looks like it has a decent explanation of update/versioning sematics in Solr: https://wiki.apache.org/solr/Per Steffensen/Update semantics.
What does your updateHandler configuration look like in solrconfig.xml?

<updateHandler class="solr.DirectUpdateHandler2">
<!-- Enables a transaction log, used for real-time get, durability, and
     and solr cloud replica recovery.  The log can grow as big as
     uncommitted changes to the index, so use of a hard autoCommit
     is recommended (see below).
     "dir" - the target directory for transaction logs, defaults to the
            solr data directory.  -->
<updateLog>
  <str name="dir">${solr.ulog.dir:}</str>
</updateLog>

<!-- AutoCommit

     Perform a hard commit automatically under certain conditions.
     Instead of enabling autoCommit, consider using "commitWithin"
     when adding documents.

     http://wiki.apache.org/solr/UpdateXmlMessages

     maxDocs - Maximum number of documents to add since the last
               commit before automatically triggering a new commit.

     maxTime - Maximum amount of time in ms that is allowed to pass
               since a document was added before automatically
               triggering a new commit.
     openSearcher - if false, the commit causes recent index changes
       to be flushed to stable storage, but does not cause a new
       searcher to be opened to make those changes visible.

     If the updateLog is enabled, then it's highly recommended to
     have some sort of hard autoCommit to limit the log size.
  -->
<autoCommit>
  <maxTime>15000</maxTime>
  <openSearcher>false</openSearcher>
</autoCommit>

<!-- softAutoCommit is like autoCommit except it causes a
     'soft' commit which only ensures that changes are visible
     but does not ensure that data is synced to disk.  This is
     faster and more near-realtime friendly than a hard commit.
  -->
<!--
  <autoSoftCommit>
    <maxTime>1000</maxTime>
  </autoSoftCommit>
 -->
 <!-- Update Related Event Listeners

     Various IndexWriter related events can trigger Listeners to
     take actions.

     postCommit - fired after every commit or optimize command
     postOptimize - fired after every optimize command
  -->
<!-- The RunExecutableListener executes an external command from a
     hook such as postCommit or postOptimize.

     exe - the name of the executable to run
     dir - dir to use as the current working directory. (default=".")
     wait - the calling thread waits until the executable returns.
            (default="true")
     args - the arguments to pass to the program.  (default is none)
     env - environment variables to set.  (default is none)
  -->
<!-- This example shows how RunExecutableListener could be used
     with the script based replication...
     http://wiki.apache.org/solr/CollectionDistribution
  -->
<!--
   <listener event="postCommit" class="solr.RunExecutableListener">
     <str name="exe">solr/bin/snapshooter</str>
     <str name="dir">.</str>
     <bool name="wait">true</bool>
     <arr name="args"> <str>arg1</str> <str>arg2</str> </arr>
     <arr name="env"> <str>MYVAR=val1</str> </arr>
   </listener>
  -->

 </updateHandler>

I'm not sure what the default semanticsMode is for Solr 5, but you could try specifying one explicitly to adjust document versioning rules, e.g.:
<semanticsMode>classic-consistency-hybrid</semanticsMode>

inside your updateHandler definition. See the explanation for different semanticsModes under the "Solution" heading near the top of this page: https://wiki.apache.org/solr/Per Steffensen/Update semantics.

yes,there is a _version_ field in my documents

That's probably what's causing the problem, since _version_ has a special significance in Solr. You can either:

specify the fields you want to copy from each document (excluding _version_) using the fields option
turn off document versioning by setting the semanticsMode to classic.

Thank you very much!


add variables maps

Less example of loop: http://codepen.io/Grawl/pen/aJGLLN/
Stylus example of loop: http://codepen.io/Grawl/pen/mWLBgK
Sass example of loop: http://codepen.io/Grawl/pen/QprOjW

wow, merged! I was ready to discussion, but… thank you! don't forget to publish updates on NPM ;)

No man. It looked good. :)
On Sat, 25 Mar 2017 at 21:04, Даниил Пронин<EMAIL_ADDRESS>wrote:

wow, merged! I was ready to discussion, but… thank you! don't forget to
publish updates on NPM ;)
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/reimertz/brand-colors/pull/51#issuecomment-289210453,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAmKhzbx-17vQsePpV5xc79KHk0iFQfEks5rpRDggaJpZM4MmMSw
.


add z-index config field

Related Issues
links https://transcend.height.app/T-30079
Internal Changelog
Context: Eventbrite took umbridge with the consent banner staying at the maximum z-index and blocking a payment modal of theirs
Fix: We added a new config option to allow for a manually specified z-index on the consent banner
Notes: We don't want to make this easy to enable, since in general "hiding" the consent banner like this is a bad pattern to follow. There may or may not be a better place to set this config value to better achieve that goal of making hiding sufficiently difficult (if there is, let me know)

Just realized this is going to need a version bump for airgap.js-types, still need to figure out how to make a new release. That'll be a Monday thing

lgtm after there's a version bump

Just realized this is going to need a version bump for airgap.js-types, still need to figure out how to make a new release. That'll be a Monday thing

It's simple. You just need to bump the version number here: https://github.com/transcend-io/airgap.js-types/blob/d780606b0463123902e98652d2f4df8b96af505a/package.json#L5


ruTorrent webinterface shows older version

ruTorrent webinterface shows up as version 3.9 where it should be 3.10 instead. I tried :latest, :edge and: 3.10-0.9.8-0.13.8 images, but the webinterface still reports ruTorrent as 3.9
Can't understand whether I'm doing something wrong or is it a bug.

@kellerman Yes same behavior for me I will take a look.

@kellerman Novik/ruTorrent#2076

Should be fixed now


CI Actions badges

Badges in README for

import labels
node ci
publish docker image

https://github.com/eddiejaoude/stargate/tree/main/.github/workflows
Example badge

[![GitHub Super-Linter](https://github.com/<OWNER>/<REPOSITORY>/workflows/Lint%20Code%20Base/badge.svg)](https://github.com/marketplace/actions/super-linter)

I can work on this but I am uncertain how the badges for import labels and publish docker image should look like.
For docker image should it be the system that is running like
[docker image][ubuntu-latest]

       ^^
The Badge

Thanks @CreaTorAlexander 👍
I am not sure either 😂 - I think this is one of those things, that will get little improvements / tweaks as we go along. Feel free to do what you think is best and I think that will be a great starting point 🤓

There has been a lot of time since there is any activity here. I would like to work on this.


responsive design mvp

@paulathevalley, you made perf land look like a Real Thing! Thank you!
The mobile needs some work now, though. I don't think we need a big overhaul; we can just tweak the existing layout.
Let me know if you don't want to take this on—I can definitely do it.

aye aye! I'm on it

Not perfect yet, but it’s okie dokie for now


rabbitmq-sever build error caused by rabbitmqctl does not support Elixir 1.13.1

Describe the bug
rabbitmq-sever build error caused by rabbitmqctl does not support Elixir 1.13.1
Steps To Reproduce

nix-shell -p rabbitmq-server

[user@system:~]$ nix-shell -p rabbitmq-server
...
Generated parallel_stream app
==> json
Compiling 13 files (.ex)
Generated json app
==> recon
Compiling 6 files (.erl)
Generated recon app
==> csv
Compiling 10 files (.ex)
Generated csv app
==> observer_cli
Compiling 13 files (.erl)
Generated observer_cli app
==> rabbitmqctl
** (Mix) You're trying to run :rabbitmqctl on Elixir v1.13.1 but it has declared in its mix.exs file it supports only Elixir >= 1.10.4 and < 1.13.0
make[2]: *** [Makefile:106: escript/rabbitmqctl] Error 1
make[2]: Leaving directory '/private/tmp/nix-build-rabbitmq-server-3.9.8.drv-1/rabbitmq-server-3.9.8/deps/rabbitmq_cli'
make[1]: *** [../../erlang.mk:4512: deps] Error 2
make[1]: Leaving directory '/private/tmp/nix-build-rabbitmq-server-3.9.8.drv-1/rabbitmq-server-3.9.8/deps/rabbit'
make: *** [erlang.mk:4512: deps] Error 2
error: builder for '/nix/store/9b3njwkp6vq2s6a6xj3981bm9bbrn20y-rabbitmq-server-3.9.8.drv' failed with exit code 2

Expected behavior
rabbitmq-sever built and installed on the nix shell.
Additional context
elixir 1.13.1 was released in December 14th and elixir nixpkg was updated in December 17th but RabbitMQ's rabbitmq-sever does not yet support Elixir 1.13.1.
I am very new to NixOS project, so I am not sure how these conflicts are commonly resolved. I tried to build rabbitmq-sever with elixir_1_12 and it built it successfully, just replacing elixir with elixir_1_12 in rabbitmq_server'd default.nix.
Notify maintainers
@turion
Metadata
[user@system:~]$ nix-shell -p nix-info --run "nix-info -m"
 - system: `"x86_64-darwin"`
 - host os: `Darwin 21.1.0, macOS 10.16`
 - multi-user?: `no`
 - sandbox: `no`
 - version: `nix-env (Nix) 2.4pre20210601_5985b8b`
 - channels(user): `"nixpkgs-22.05pre340506.5c37ad87222"`
 - nixpkgs: `/Users/user/.nix-defexpr/channels/nixpkgs`

@keoko thanks for reporting! The right way to patch this is to go to nixpkgs/pkgs/top-level/all-packages.nix, find rabbitmq-server, and add a line like elixir = elixir_1_12; in its { ... }. Do you want to give it a try and open a PR?

@turion Sure, I've just opened the PR https://github.com/NixOS/nixpkgs/pull/152688, although apart from building the package I don't know how to test the the built package. I am very new on this :D.


Text opacity not working

To set the opactiy of text throught text.opa in lv_style_t is not work since v5.1.

Hi Ben,
Thank you! I really forget to calculate with opacity. The fix is on its way.

Fixed in the master branch.


Ui bug with nginx proxypass

Gitea version (or commit ref): 1.6.0
Git version: 2.11.0
Operating system: Debian amd64 stable 9.6
Database (use [x]):

[X] PostgreSQL
[ ] MySQL
[ ] MSSQL
[ ] SQLite

Can you reproduce the bug at https://try.gitea.io:

[ ] Yes (provide example URL)
[ ] No
[X] Not relevant

Log gist:
Idk what is it, i've attached gitea.log
gitea.log

Description
I've proxypassed gitea under nginx, but the ui is pretty gone...
Screenshots
With proxypass:

Without:

Can not reproduce such behaviour. Looks like something wrong in ngix configuration

Could be a missing (or an extra) trailing slash. Here are some basic recomendations for nginx https://docs.gitea.io/en-us/reverse-proxies/
I'm going to close this ticket, but if you have any follow ups please feel free to start a discussion in the forum https://discourse.gitea.io/

@lafriks the nginx configuration is copied and pasted from the docs


feat: fast EntropyBottleneck aux_loss minimization via bisection search

This method completes in <1 second and reduces aux_loss to <0.01.
This makes the aux_loss optimization during training unnecessary.
Another alternative would be to run the following post-training:
while aux_loss > 0.1:
    aux_loss = model.aux_loss()
    aux_loss.backward()
    aux_optimizer.step()
    aux_optimizer.zero_grad()

...but since we do not manage aux_loss learning rates, the bisection search method might converge better.
Note: I haven't yet tested this extensively, so there might be some rough edges.

Previously, update() did not modify the default quantiles and used quantiles initialized to [-10, 0, 10]. With this PR's modification to update(), it automatically updates the quantiles, too. But then, the initialized quantiles become something like [-216, -0.4, 207]... which means that the median becomes non-zero (e.g. -0.4), and thus .compress() quantizes y = -0.6 to y_hat = -0.4. However, the tests were written with the expectation that it quantizes to the integer y_hat = -1.
    def test_compression_2D(self):
        x = torch.rand(1, 128, 32, 32)
        eb = EntropyBottleneck(128)
        eb.update()
        s = eb.compress(x)
        x2 = eb.decompress(s, x.size()[2:])

        # THE torch.round(x) ASSERT ASSUMES THAT:
        # assert (eb.quantiles[..., 1] == 0).all()

        assert torch.allclose(torch.round(x), x2)

One possible fix is to change the tests to disable auto-updating the quantiles.


Add Popout YouTube Chat to upcoming videos and remove it from placeholders

Also removes Open TL Client/Open Script Editor from placeholders since they open something like https://holodex.net/tlclient?video=https%3A%2F%2Ftwitch.tv%2Fsakuramiko_hololive (which is AFAICT never wanted).

TL Client actually does support twitch streams, so I think it should remain for placeholders/be modified for compatibility (idk the exact process)


Add automated daily updates for M3 data

See #22
CC @nordzilla, @zbraniecki
This adds a minimally functional GitSource as an alternative to HgSource (previously just Source) and a corresponding CLI option --git, which lets the script work with git repositories as well as Mercurial ones. For now, this functionality only extends to the features used by --use-current-revision.
Using that, a scheduled (daily at 6AM UTC) GitHub Actions task is added which checks out the latest commit (i.e. "central") from the mozilla/gecko-dev mirror and generates the M3 data for it, and then updates the gh-pages branch.
To effect these changes and get a decent grasp of what the script is really doing, I've added some type hints which effectively require Python 3.9, and a pip requirements.txt file.
Before merging this, we should update the last few weeks' data to the gh-pages branch, as this script will only run on the latest commit.
To test the action, I've been manually running it on my fork of this repo: https://github.com/eemeli/arewefluentyet.com/actions/workflows/update.yaml

One concern I have is that I didn't make the front-end ready for such volume of data. We haven't updated the use of Chart.js since inception of AWFY and I don't know how it'll handle 350+ datapoints per year (vs 50).
It may just work, or it may start looking bad, and I'd suggest verifying before landing this :)

@zbraniecki:
One concern I have is that I didn't make the front-end ready for such volume of data. We haven't updated the use of Chart.js since inception of AWFY and I don't know how it'll handle 350+ datapoints per year (vs 50).
It may just work, or it may start looking bad, and I'd suggest verifying before landing this :)

Good point. I'm working on the front-end changes next, will verify that before landing this.

Good point. I'm working on the front-end changes next, will verify that before landing this.

For what's worth, I have graphs with daily data over almost 3 years (example), and chart.js seems to be coping well.

I updated the gh-pages branch so that it no longer provides UI for switching away from the default M3 milestone view.
While at that, I also tested that it should now work with daily rather than weekly updates. This did require a small fix to getBarPosition(), which was occasionally failing a bit oddly around the end of the graph. I'll need to track how the UI performs once we start getting in real data, as there may be some glitches with the display of the hover legend.
I also updated the JS/CSS/HTML code style to Prettier, and fixed a few other bugs that I noticed.


MessageDialog setTitle(...) method does not work

MessageDialog component setTitle(...) method does not work.
This can be reproduced by just running default tvxwidget demo for the dialog.
Tested on:
go 1.22
tvxwidgets: v0.6.0 (with default dependencies using go mod tidy)
Issue is probably caused by displaying border of 'layout' field in MessageDialog struct, but using default SetTitle(...) from embedded Box
I'm assuming this is not a desired behavior, as preview image from demo folder displays working title

Hi @greybackcodemonkey
Thanks for that , will have a fix soon.


Cannot download files only folders

I can simply download folders but when trying to download files I get this error:
ERRO[0002] Get Parent Folder Id Failed: not found pikpak folder

Update: this happens only when:
1- file is in root directory
2- if I put the file in another directory and try to download it, this path syntax doesn't work -p folder/filename.jpg but these two syntax works fine -p folder  filename.jpg and this -P folder_ID filename.jpg

I'll finish the documentation later, and thanks for the suggestion. @HongYue1

In the latest commit https://github.com/52funny/pikpakcli/commit/2c443e8b251f9168eeeb5942e4c9c0ec023dd426, I finished revising the docs.

In the latest commit 2c443e8, I finished revising the docs.

Thanks!


Detect external settings changes and reload settings, for example when settings have been synced in from another machine

⚠ Please check that this feature request hasn't been suggested before.

[X] I searched previous Ideas in Discussions didn't find any similar feature requests.
[X] I searched previous Issues didn't find any similar feature requests.
[X] I am only requesting a single feature. Multiple changes should be split into individual requests, with links between them.
[X] I believe my requested feature will be generally applicable to other users, not just me: it is not uniquely tied to my personal workflow.

🔖 Feature description
Currently it's easy for edits to settings to be lost when the any file-syncing service copies settings data between devices:
On Machine 1, save settings.
Changes get synced to Machine 2.
Obsidian is not restarted on Machine 2, so the plugin is still running with the settings pre sync.
User changes settings on Machine 2. Settings from Machine 1 still not present.
Settings get synced back to Machine 1.
Next time Obsidian is restarted on Machine 1, it has only the settings edits on Machine 2.
✔ Solution
Detect changes in data.json file, and reload settings
❓ Alternatives
No response
📝 Additional Context
This is really a placeholder for me to capture useful information on ways to implement this.

Obsidian 1.5.7 API added a way to detect external changes to settings:
https://github.com/obsidianmd/obsidian-api/blob/master/CHANGELOG.md#v157

javalent's Calendarium plugin implements the listening like this:
https://github.com/javalent/calendarium/blob/c97948a4966c88b6fdd520995a52b258380ef5f6/src/settings/settings.service.ts#L120-L182

From liam in Discord
Yeah, you shouldn't need much, it's mainly a callback to update your in-memory settings and refresh any views that need refreshing
onExternalSettingsChange() {
    // reload in-memory settings
    this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData());

    // If you have views or other on-screen displays, refresh them...
}

javalent's code was written when the api was still a bit buggy so there's some overly defensive code there that couldn't be needed anymore

javalent's code was written when the api was still a bit buggy so there's some overly defensive code there that couldn't be needed anymore

Later comment:

that was a very old alpha build, I wouldnt worry about that

Additional comment Discord - about someone else's code:

Okay, I investigated and I can reproduce the issue. Your plugin is calling saveSettings on every keystroke, which causes a lot of file writes to happen very quickly. Our detection for if a change is internal or external is failing to account for this, so it thinks the file is being modified outside of obsidian, which is why you're seeing those calls to onExternalSettingsChange. I have some improvements to the detection algorithm for a future build, but in the meantime, I suggest you wrap your saveSettings function in a debounce to avoid this issue (and it's just good practice anyway!)


feat: user events

in my opinion we could also remove prefixes from sub-packages e.g. machine/key we could remove MachineKey-prefix from MachineKeyAddedEvent and import it with alias machine_key => machine_key.AddedEvent but we can discuss that later


OH NO SOURCEMAPS VANISHED

Looks like in the process of "fixing" all the things we killed sourcemaps. Makes me sad.

The files look incomplete..


Future3 | zmq not installed in Github action pytest environment

Bug
What I did
I wrote a unittest for a new feature
What happened
Inoticed that the github action workflow was failing due to a missing zmq installation as zmq is currently not installed as part of the testing workflow: https://github.com/MiczFlor/RPi-Jukebox-RFID/blob/future3/develop/.github/workflows/pythonpackage_future3.yml
I expected this to happen
zmq should be  also present in the github action workflow  python environment used to run tests.
Further information that might help
A link to a failing job.
https://github.com/MiczFlor/RPi-Jukebox-RFID/actions/runs/7585060379/job/20660073103
A workaround that worked for me was to use unitest.mock to avoid importing zmq for my tests:
https://github.com/MiczFlor/RPi-Jukebox-RFID/pull/1943/commits/a181f8c21cbb92f1cc9c3d21d7fc061bbf2b3fb8

I tend to the conclusion that it's ok to mock zmq for unit tests (as long as zmq is not directly used in the tests).


LoopBack 4 relations

Describe the bug
When setting a relation between objects, the GraphQL Documentation Explorer is empty, and in the result pane, there is an error: "Object type Fields2Input must define one or more fields".
To Reproduce
Steps to reproduce the behavior:

Create a new loopback 4 application.
Generate a simple 'Customer' entity with default CRUD.
Generate a simple 'Order' entity with default CRUD.
Associate the Order to the Customer by a hasMany relation.
Associate the Customer to the Order by a belongsTo relation.
Run loopback, and then run the tool with http://localhost:3000/openapi.json as input.

Please advise,
Tomer.

@TomerSalton Thanks for filing this issue! I think I have an idea of what's going on. However, is it possible for you to check in your LoopBack application as a GitHub repo for easier debugging? And if that is not possible, is it possible to check in the OAS from your app as a GitHub Gist? Also what version of OtG are you on? Are you on the latest version v1.6.2?
I think the problem may be related to #219 as well as this. Basically, GraphQL is strongly-typed whereas OAS is not. I believe somewhere in the schema, there is an operation that has a requestBody that does not have a descriptive object type schema, meaning it does not contain a properties field. I thought I resolved this problem but perhaps there are still issues.

Hi @Alan-Cha ,
Thanks for your quick reply 🙂

I am using latest version (1.6.2.).
here's a link to the LoopBack application repository I created, hope it helps.

Please let me know if you need anything.

@TomerSalton I fixed the problem and made a PR #275! The problem was that we made a check for an undefined object but did not consider an empty object.


Added a new project(Subtitle Synchronizer) and modularized the code for better understanding and debugging(Password generator)

Type of change

[x] Added new project
[ ] Bug fix
[x] New features
[ ] Enhanced documentation

Changes proposed in this pull request

Project name : Subtitle Synchronizer

Short description : We have subtitles which sometimes might be out of sync by seconds or even minutes. If you know by how many seconds then rest of the job will be done by this software. To make the program very accurate I have made it so that we have to enter in the time in milliseconds.

Other changes : Modularized the code in password generator by converting the entire code into multiple functions where each function has only one job. This makes the code more readable and thus easier to debug.

Checklist

[x] The code is Python 3 compatible
[x] I have added relevant comments in my file to make code understandable
[x] I have added my project in a folder which includes all the necessary files

Awesome work
Happy Hacktoberfest 👍


HSEARCH-4376 Document Elasticsearch normalizing regexps as a bug

https://hibernate.atlassian.net/browse/HSEARCH-4376

Merged, thanks!


Validation layer should catch unbound descriptors in vkCreateDescriptorSetLayout

If a shader contains gaps in descriptor bindings, like in the following example:
#version 400
#extension GL_ARB_separate_shader_objects : enable
#extension GL_ARB_shading_language_420pack : enable
layout (binding = 1) uniform sampler2D tex; // Slot 0 is intentionally left unused here
layout (location = 0) in vec2 texcoord;
layout (location = 0) out vec4 uFragColor;
void main() {
   uFragColor = texture(tex, texcoord);
}

... the descriptor set layout must have declarations for the unused binding slots with descriptorCount = 0. Failure to declare bindings like that results in a crash later inside vkCreateGraphicsPipelines when using certain IHV drivers.
If possible, validation layer should catch unbound descriptors during vkCreateGraphicsPipelines and report a sensible error.
Full diff for a repro: unbound_descriptors_diff.txt

I think it may be necessary to validate the bindings in both vkCreateDescriptorSetLayout and vkCreateGraphicsPipelines.

This should be resolved with newer drivers which handle sparse bindings correctly.

Closing as a driver issue

Chris, under what basis do you believe this to be a driver issue? Please point me to relevant spec language or WG discussion.
We have encountered this scenario a number of times and it is our belief it is apps' duty to define a dummy" slot in the DS in such cases.

Maybe I'm misunderstanding the problem but I thought the purpose of the VkDescriptorSetLayoutBinding::binding index was to allow you to specify a descriptor set layout with sparse bindings, without needing dummies? If you have to specify each binding with dummies, the binding index be redundant as it'd be equal to the index in the VkDescriptorSetLayoutCreateInfo::pBindings array.
In the spec under VkDescriptorSetLayoutBinding there is the following text which seems to back this up:

The above layout definition allows the descriptor bindings to be specified sparsely such that not all binding numbers between 0 and the maximum binding number need to be specified in the pBindings array. However, all binding numbers between 0 and the maximum binding number may consume memory in the descriptor set layout even if not all descriptor bindings are used, though it should not consume additional memory from the descriptor pool.

Without an intention of playing a trading card game :), here's our counter:

Section 13.2.2, valid usage block for VkPipelineLayoutCreateInfo:

If setLayoutCount is not 0, pSetLayouts must be a pointer to an array of setLayoutCount valid VkDescriptorSetLayout handles

..where "valid" means non-VK_NULL_HANDLE.


Add timescale and pg_stat_statement postgres extensions

Adds timescaledb and pg_stat_statement extensions for postgres. See #997 for detailed discussion. For now, the timescale extension is installed in a separate container with postgres listening on port 5434. This may be consolidated with the existing postgres container in the future.

@rmartinsen looks good! We can make tweaks as needed as we get the pipeline set up


Regions with a Detail component that contains a lot of content appears to open/close too fast.

The open/close animation takes the same amount of time no matter how much content it envelopes, so larger regions don't look very smooth.
We should consider using a duration range based (perhaps) on the number of child nodes.

This is an interesting idea—could we run some logging to test the assumption that # child nodes is approximately proportionate to natural height?
Every time a card is expanded you could log child count and expanded height (or the ratio of the two).


Materials: Add support for plugins when cloning materials

See https://forum.babylonjs.com/t/material-clone-doesnt-clone-all-material-plugins/41695

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

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


Crash when attempting to place lanterns on empty sides of slabs

Describe the bug:
When you right-click a top slab from below, while holding a lantern, the game crashes.
If you place the lantern on top of a bottom slab, the game will also crash.
Reproduction Steps:

Place a top slab anywhere you want, make sure there are no full blocks next to it, so that the lantern doesn't attach to it
Aim at the slab from below and try to place a lantern
Crash

or

Place a bottom slab
Try to place a lantern on top of it
Crash

If you don't make sure that there are no full blocks next to the slab, the lantern will simply attach to them instead.
Expected behavior:
The game should completely ignore any attempts to place lanterns on non-full blocks.
Mod Information:

Minecraft Version: 1.18.2
Loader Version: 0.14.4
Mod Version: 1.1.0

Logs:
https://gist.github.com/Footage2-Amply-Pounce/9cc3d1a8d6f617362516cf26ef617e98

This happens because I'm using direction instead of horizontal direction. I'll fix this in 1.2.0.


Add some more media queries

We've found a few cases where we need more than mobile, tablet, and desktop media queries. Let's add a few more.

We've added some intermediary media queries, and can add more when necessary! Closing.


Add my first file

I have made a new branch, created a new file and made a commit. Please merge my branch.

great.


API/UI Layout and Refactor

There are some pretty large changes to the code with this PR, so I can understand why you may not accept them. This project is getting large enough that all the code should not be in a main package anymore. These changes set the stage for easier code maintenance and eventual unit tests.
I’ve only tested using the examples from the README. Maybe these changes will help open up the code for unit tests for us to make changes and feel more confident in them.
To summarize these changes:

Removed the dashes (-) from the package name as in go.mod. These dashes make it impossible to use the package (not allowed in package declarations). Eventually the project name should be changed if other projects wish to import this API.
Begin separating user interface code from API code.
Create a cmd/ directory for the UI code. This code handles command line options and environment variables, passing them to the API code that shouldn’t be bothered with these things.
Updated makefile to handle this change above change
This sets the stage for using a more robust CLI package such as spf13/cobra
Extract code that can test and run in isolation into packages in the internal/ directory

routes/
targz/
zip/

Move many of the global configuration variables into a httpfileserver.Config struct for now, populating the struct in the UI and passing it into the API. With this change almost all global variables have been removed and the configuration is injected via parameter.
The version wasn’t being injected properly. Added a version variable for injection with logging at startup.
Refactor to remove the init function which is now configureRuntime. init isn’t really unit testable.
Chrome keeps trying to translate the page from Norwegian to English for me. Since there’s really nothing that must be translated on these pages, added <meta name="google" content="notranslate"/> to the HTML template to prevent this.

Having the code divided into these smaller packages with a UI/API separation makes it much more approachable by other contributors and unit tests could add another level of safety net for them. I’ve intentionally left much of the internal code and logic as is to keep this PR mainly as a repository layout change so if I’ve introduced defects, they can be more easily spotted.
I’ve noted there are no external dependencies - it’s a full standard library implementation. Is this intended, or are you open to using other packages such as spf13/cobra for the CLI, uber/zap for logging mholt/archiver for archive generation, etc?
There are no unit tests and no continuous integration (CI) as in GitHub Actions. Are you interested in having things such as lint, vet, fmt, etc run against the code on pull requests as well as adding unit test code?
Realize that by accepting this PR and then renaming your project to remove the dashes, you are making it easy for other projects to use the API code as an external package. This has “contract” implications that your exported functions (NewConfig(), Serve() and to an extent, the exported Config struct) in that changing the interface in the future is a breaking change, and the major version should be incremented each time this is done. I’ve tried to prevent this from happening by including a context.Context as the first parameter to Server() and placing all the config values into the Config struct. While removing a field from that struct would break the contract, adding a field would not as long as it is safely defaulted in the API code. I’ve made an attempt to be more flexible here by providing a NewConfig() function that can contain defaults in the future. Populating the defaults make using the API easier for the first time user. For example, the code:
httpfileserver.Serve(context.Background(), httpfileserver.NewConfig())

is enough to get the file server up and running since the proper fields are populated by NewConfig().
Another option is to move the code files httpfileserver.go and server.go into a directory and package in internal/ so it is no longer exported to other projects. Once you feel things have stabilized, move them back out into the project root directory at which point your initial contract is set. I didn’t include this change in the PR because I felt this PR would be more off-putting than it already is. I can make this change and add it to the PR if that’s desirable.
Even if you don’t accept this PR, let me know your thoughts. I enjoyed the refactoring challenges anyway.

Wow! First off, thank you for the thoughtful PR and changes :) I'm busy with $work at the moment, so it will be about a week before I get around to doing a proper PR review. For now, a few high-level comments -

Definitely agree on making the code easier to contribute to. In terms of code organization, I think it would be particularly nice to make the user-facing parts (CLI and HTML) easy to change/add to. For example, if someone wanted to add file search, it should be as obvious as possible where to find the appropriate "injection points". Or even simpler - adding custom CSS. This should ideally be a straightforward and "surgical" change.
Also no objections to CI and testing automation.
Re: libraries - fine in principle. Here my idea of a sweet spot is "vanilla Go code you can easily understand/change soon after learning the language, but also avoids fragile re-implementation of complex logic for which well-tested libraries already exist".
Re:modules - is there a need to import http-file-server as a library? I haven't seen it so far - do you have any examples?

Thanks again for taking the time to assess the current state and design helpful changes! I'll give you detailed feedback on the diff & get this merged as soon as I can context-switch to github code :)

This project was useful to me for getting access to some files. I saw some opportunities here and thought I'd try to see what I could do and give back. I wouldn't make any feature changes without talking to you first. However, these changes set the stage for coordinating future modifications.
Before merging into your master branch, you might want to consider creating a develop branch for piling work together, coordination, and testing. Then once stable, merge into master for release.
Next up, I can put together a GitHub Action that will run fmt, vet, unit tests, build, etc to help validate pull requests. Then after that, start building unit tests bit by bit and as new code is modified or extracted. For example, I already have unit tests that cover all the Routes class.
I agree with most of your bullet points, but the last one (modules) is more of a question  that I'll try to answer.
Even internally, having a project separated into packages is a good thing. It gives a separation of concerns and coordinates an internal contract between chunks of functionality. For example, setting up the internal Zip packages gives us a single entry point contract to the zip functionality. We can swap out the code behind that and as long as the API signature never changes, any other code that uses it would never know. Yes, you can also do that with a straight function as you have done, but a package truly locks things down so a user can't get at anything internal while providing you more flexibility in that package (package globals, introducing classes, etc).
The package httpfileserver should exist for the same reason. Having it helps provide an extremely clean separation between the UI and the package's API. You can skin the UI however you please and it can always call the httpfileserver API knowing the signature will never change. Your big decision here is whether you want to keep this httpfileserver internal and for your use only, or export it in a way that other projects can use it. I'll give examples for both. Remember these examples are contrived, but hopefully it's enough for you to see the bigger picture.
For this project's internal use. Suppose you like your current command line interface and want to keep things as is for this CLI executable.  You could split the cmd directory to contain a main package in the cmd/cli directory, and another main package in the cmd/gui directory. Each calls the httpfileserver API, each is a separate executable. The CLI executable doesn't have to carry all the GUI luggage, keeping it smaller, while the GUI package can import all that GUI code for those that really need it.
For external use. Suppose I'm a random user that has a need for a program like this. I find it here on GitHub, download and run it. It's exactly what I need except I need to hand it to a user where running it from the command line is challenging enough, but throw in all those awesome CLI options and mind blown.  But because you've exported your core functionality as a package, I can solve the problem. I spin up a new project. Hardcode all the options to force serving from port 80 and to serve that user's /home/user/shareddata directory. And I don't want them exposing the upload functionality so the code forces that off. Now I can compile and hand that executable to my user knowing they can't jack up the configuration because I've hardcoded it. Bonus benefit: While your project isn't being consumed as an executable, you're still gaining a new user because you were forward thinking enough to provide an API. And more users at this level means those users are real developers that are even more likely to contribute to your code base than those that simply pull down your executable and run it.
Another external example. I like the executable and it's useful. However, the executable only allows listening on a single endpoint. I want something that listens on both http port 80 and https port 443. By spinning up my own project and using yours as an API, I can code something to do that. I can launch httpfileserver.Serve() in a goroutine to serve the http endpoint, then call httpfileserver.Serve() again to serve the TLS endpoint. Problem solved because you provided your code as an API. And once again, you've obtained another developer user.
Hopefully this helps you if you still have questions or concerns, then ask away. If you really don't want to export this as an API, we should move it to the internal directory, for example, internal/httpfileserver, which is the correct way to hide it.
I know I'm suddenly barging into this project. Thanks for being ok with it so far. I like that it strikes a balance between useful functionality and bloat. And that I can spot some areas to contribute.


Variations on the Frechet-Urysohn property

There are a few subtly different strengthenings of the Frechet-Urysohn property (P80) that would be interesting to have in pi-base.  In particular:

strictly Frechet (Gerlits & Nagy 1982: https://doi.org/10.1016/0166-8641(82)90065-7)
strongly Frechet (Siwiec 1971: https://doi.org/10.1016/0016-660X(71)90120-6)

The implications are: first countable ==> strictly Frechet ==> strongly Frechet ==> Frechet-Urysohn.
Other references:

https://mathoverflow.net/questions/264857
https://math.stackexchange.com/questions/756159
[G] Gruenhage: http://webhome.auburn.edu/~gruengf/preprints/frechprodd.pdf
[ABD] Aurichi, Bella, Dias 2016: https://arxiv.org/abs/1603.09715

It says on page 2 of [G] that strongly Frechet is the same as $\alpha_4$-FU (= $\alpha_4$ + Frechet-Urysohn).  Mentions various connections with $\alpha_i$ properties, and various other names.  See also paragraph preceding Theorem 2.17 in [ABD].
Some example spaces to illustrate:

Frechet, not strongly Frechet: quotient space of $\mathbb R$ with $\mathbb N$ identified to a point
Frechet, not strongly Frechet: countable sequential fan $S_\omega$
strongly Frechet, not strictly Frechet: [ABD] Example 2.10 and Fact 2.16.
strictly Frechet, not first countable: ?

It seems that even the often mentioned first two are not in pi-base.

Just dropping a related comment here. It appears that the definition of "strong Fréchet-Urysohn" appearing in https://en.wikipedia.org/wiki/Fréchet–Urysohn_space is actually "strictly" since it doesn't specify that the sequence of the A_n doesn't have to be descending.

Good observation.  That does not surprise me.  That section in wikipedia was added by editor Mgkrupa, without any source whatsoever.  That has to be taken with a grain of salt, and someone will have to eventually fix this in wikipedia.


Fix the content margin/padding

Screen Size - 1100 x 1125 px
Please make the content responsive in various screen sizes

Hi @rohan09-raj , I would like to work on this

The pull request has been created. Please check it :-)


Copied new docker files from lab-bluemix

Codecov Report

Merging #137 (aa10a9c) into master (af21561) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master     #137   +/-   ##
=======================================
  Coverage   95.71%   95.71%
=======================================
  Files           7        7
  Lines         490      490
=======================================
  Hits          469      469
  Misses         21       21

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 af21561...aa10a9c. Read the comment docs.


Consider to use host-network for PAI service

Currently, PAI services DOESN'T use host network. When deploy PAI with k8s network plugin, customer may face some network issues, such as rest-server could not connect to internet.
Consider to use host-network for PAI services (rest-server, webportal, log-manager and so on)

relate to https://github.com/microsoft/pai/issues/4603. close as fixed by this PR https://github.com/microsoft/pai/pull/4672


Regression on 1.8.8 on security definition

On version 1.8.7 I am able to generate a security definition with this code
// @title                      DEMO
// @version                    1
// @host                       localhost:8080
// @securityDefinitions.apikey ApiKeyAuth
// @in                         header
// @name                       Authorization
// @description                Description

func main() {

}

securityDefinitions:
  ApiKeyAuth:
    description: Description
    in: header
    name: Authorization
    type: apiKey

In version 1.8.8 the rendered yaml removes the security definition using the exact same comments

v1.8.8 is a deprecated version with fault

Looks like github.com/swaggo/swag/cmd/swag@latest is pointing to this release.
If you do:
go install github.com/swaggo/swag/cmd/swag@latest
swag --version
 swag version v1.8.8

I suggest you create a release for 1.8.9 (not a release candidate) or point latest to the previews version

@rdelcorro v1.8.9 released

Thanks!


feat(docs): model titles

Resolves #1035

Works great! 🎉 I tested both dev-portal and elements-api both for standalone/common models as well as the ones described in the API documents

🚀

At the same time I'm not the biggest fan of passing nodeTitle from top of Docs. Having it as a shared prop for all ParsedDocs subcomponents doesn't seem necessary to me, I would much rather see it only for Model. But since I couldn't figure an alternative to your solution, there's no reason in me blocking this PR, especially that it's working flawlessly 💪

I know that. Unfortunately I couldn't find any trivial better solution, so I stuck with this.


Show long commands as multiple lines

It is no convenient to scroll to right long commands like
PS> Get-LogicAppTemplate -Token (az account get-access-token | ConvertFrom-Json).accessToken -LogicApp  -ResourceGroup  -SubscriptionId $SubscriptionId -Verbose | Out-File C:\template.json
[Enter feedback here]

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

ID: 72c96620-a604-8e8e-0f28-c587ac595d8b
Version Independent ID: 0b7d74fb-9ec7-fcb9-87fd-e08ae2b6f284
Content: Create logic app templates for deployment - Azure Logic Apps
Content Source: articles/logic-apps/logic-apps-create-azure-resource-manager-templates.md
Service: logic-apps
GitHub Login: @ecfan
Microsoft Alias: estfan

@MNF Thanks for the feedback. We are investigating the issue and will update you shortly.

@MNF Thanks for the feedback! We have worked up a PR to address, which once merged should reflect in a couple of hours.
We will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly continue the discussion and we will reopen the issue.


clickhouse_odbc_x64.msi can't install on windows server 2012 R2.

I try install clickhouse_odbc_x64.msi to windows server 2012 R2. But status is still "Validating Install".

Then I install x64.msi by command "C:\Windows\SysWOW64>msiexec.exe  /i D:\Download\clickhouse_odbc_x64.msi /L*V D:\Download\install.log". Some error info is recorded to log. Error information is "MSI (s) (80:DC) [10:44:36:278]: RESTART MANAGER: Failed to retrieve the list of applications that hold files in use; Windows Installer will use the built-in FilesInUse functionality. Error: 6".

Try to rerun installation with admin privileges.
If problem persists - please attach full installation log.
Similar issue (other software): https://www.lansweeper.com/forum/yaf_postsm55477findlastpost_MSI-Deployment-Question.aspx#post55487

Also, it is worth trying the latest release MSIs from https://github.com/ClickHouse/clickhouse-odbc/releases/tag/v<IP_ADDRESS>91028

@traceon Thank you very much! It works!


Add build-arg parameter for build command

Useful for authentication to private NPM repositories. For more details see https://docs.npmjs.com/private-modules/docker-and-private-modules

Makes sense! Maybe a bit nitpicky, but shouldn't the argument be called build_args (plural)?

never mind, I now see that Docker calls it build-arg as well.


Orthographic projection with land polygons

With GeoMakie v0.6.2
using GeoMakie, CairoMakie

fig = Figure()
ga = GeoAxis(fig[1, 1];
    dest = "+proj=ortho +lon_0=0 +lat_0=30")

land = GeoMakie.land()
poly!(ga, land)

produces

Plotting lines on top is not a problem, neither is the problem resolved with a different perspective

Will take a look!  I suspect this is a result of CairoMakie drawing the polygons incorrectly when they are outside the bounds of the projection.

Haven't checked will report back

Not a problem with GLMakie

This is a CairoMakie issue, so I'll see about transferring the issue to the Makie repo.
My first thought is that this is caused by the clamp in CairoMakie's project method - it should instead set coordinates to NaN.


add docs for cri-o registry mirror

Signed-off-by: 楚贤<EMAIL_ADDRESS>
Ⅰ. Describe what this PR did
add docs for cri-o registry mirror configuration.
Ⅱ. Does this pull request fix one issue?

fix #1419
Ⅲ. Why don't you add test cases (unit test/integration test)? (你真的觉得不需要加测试吗？)
N/A
Ⅳ. Describe how to verify it
N/A
Ⅴ. Special notes for reviews
N/A

@Starnop PTAL


Hook nock up on travis-ci.org

It would be great if nock would be tested on travis-ci.org. It's free and supports node, and can be set up in 5 minutes.

Looks done.

Yeah, awesome


Add CONTRIBUTING.md file

Add CONTRIBUTING.md containing rules for making contributions

Can I work on this? What to do?

@ajirk u can work on this
You need to add a contributing.md file in this repository
You may take help from this link :-
https://github.com/fossasia/open-event-android/blob/development/CONTRIBUTING.md