Training LightGBMRanker several times gives different NDCG on testing set

I noticed that when training on Databricks with the same parameters on the same data several times, the resulting models don't give the same predictions, as evidenced by different NDCG on a separate testing set.
Here is my training function, my training set has 400K exemples in 5K lists, with 60 features:
def train(): Unit = {
  val lgbm = new LightGBMRanker()
  .setCategoricalSlotIndexes(Array(0, 2, 3, 4, 6, 7, 8, 59))
  .setFeaturesCol("features")
  .setGroupCol("query_id")
  .setLabelCol("label")
  .setMaxPosition(10)
  .setParallelism("voting")
  .setNumIterations(15)
  .setMaxDepth(4)
  .setNumLeaves(12)
  val training = table(s"training")
  val model = lgbm.fit(training)
}

Is that inherent to distributed training (on 5 executors) or should I change some parameters of my LightGBMRanker instance?

If the table is repartitioned to 1 partition (table(s"training").repartition(1)), then the results are consistent, but this means no parallelism.

@daureg thank you for reporting this issue.  This looks similar to the issue here:
https://github.com/Azure/mmlspark/issues/564
I will need to investigate this problem more to figure out the root cause of the randomness, I'm not sure if it is fixable.  It's on my todo list now, but not as high priority as:
https://github.com/Azure/mmlspark/issues/569
https://github.com/Azure/mmlspark/issues/483
Does one model always give the same predictions?  Or is it only different models trained on the same data?

indeed it's the same as #564 (unless there is something specific with ranker, but most likely not). I will also try to predict several time with the same model, but for now it's different models trained on the same data

@imatiach-msft  maybe there is the need to ensure that each partition get all the elements from the same group and to enforce the group sorting by adding a sortWithinPartition here https://github.com/Azure/mmlspark/blob/master/src/lightgbm/src/main/scala/LightGBMBase.scala#L45 (similarly to https://github.com/Azure/mmlspark/blob/master/src/lightgbm/src/main/scala/LightGBMRanker.scala#L67)

@daniloascione yes, that was something that I was going to add later; not sure if it should be a separate utility or if it should be done in the ranker itself (which may hurt performance significantly since it would incur a shuffle across partitions) - note it wouldn't go into LightGBMBase because that's the base class for classifier and regressor as well, and this is something needed just for ranker.  I sort in LightGBM Ranker so that the groups are ordered, but I don't ensure that a group doesn't cross partitions; as you said one group should only be in one partition in the ranker case.  I'm not sure if it is related to your specific issue though.  Even if the same group is in each partition you may still get different results.

@daniloascione @daureg just out of curiosity, how are you computing the NDCG?  I would like to add an evaluator for LGBMRanker, similar to the Spark ML evaluators and MLLib metrics.  Is there one that exists out there already?  I couldn't find anything in Spark ML.

@imatiach-msft I tried to add ranking metrics in Spark ML in the past (https://github.com/apache/spark/pull/16618 and https://issues.apache.org/jira/browse/SPARK-14409) but things got stuck for several reasons. Currently, we are using an udf based implementation of ndcg, which is similar to this one http://lobotomys.blogspot.com/2016/08/normalised-discounted-cumulative-gain.html

@daniloascione I am facing a similar issue where in training the model on the same data with same parameters result in different predictions each time.
Did you find a fix for this ?

@KeertiBafna No, I didn't find a fix, unfortunately. I haven't tried the idea to "sort within partitions" yet (see above), maybe it is time to look at this.

@daniloascione  Can i use repartitioning by a key as below ?
Say for ex: If i repartition my data into 8 partitions and add a column 'key' with values from 0 to 7, will the below line ensure each partition has the same key group and order everytime ?
df.repartition(8, 'key').sortWithinPartitions('order_col')

Yes, I think so, the partition should be sorted at least until the next operation with a shuffle.
I recommend you to write tests anyway.

@imatiach-msft is this issue solved in later versions? I believe you mentioned in another issue that you added a sortwithinpartitions to preserve the sorting.


ReferenceError when use Server Side Rendering

Hello,
I see there is a closed issue about this, but error still happen...
my porject  base on Vue2+vue-router+vuex bundle by webpack2
I change some code and slider is working but without plugin setting
btw...I use style tag to link swiper's style
index.js
var SwiperComponent = require('./swiper.vue')
var SlideComponent = require('./slide.vue')
var swiper = {
  swiperSlide: SlideComponent,
  swiper: SwiperComponent,
  install: function (Vue) {
    Vue.component('swiper', SwiperComponent)
    Vue.component('swiper-slide', SlideComponent)
  }
}
module.exports = swiper

slide.vue
<style src="swiper/dist/css/swiper.css"></style>
<script>
var Swiper
export default {
  name: 'swiper',
  props: {
    options: {
      type: Object,
      default: function() {
        return {
          autoplay: 3500
        }
      }
    },
  },
  ready: function() {
    if (!this.swiper && typeof global.window != 'undefined') {
      Swiper = require('swiper')
      this.swiper = new Swiper(this.$el, this.options)
    }
  },
  mounted: function() {
    if (!this.swiper && typeof global.window != 'undefined') {
      Swiper = require('swiper')
      this.swiper = new Swiper(this.$el, this.options)
    }
  },
  updated: function() {
    this.swiper.update()
  },
  beforeDestroy: function() {
    if (!!this.swiper) {
      this.swiper = null
      delete this.swiper
    }
  }
}
</script>

I think this is not good enough... Any idea?
Thank's :)

I will fix these problems lately, because there is not enough time to test the rendering support on the server side, thanks for your feedback.  :)

+1

+1, waiting for the quick fix.


Refactor search for runtimes using exec.LookPath

Is your feature request related to a problem? Please describe.

We have a hardcoded code in your code base that doesn't have a good maintainability

Describe the solution you'd like

refactor the code using a function in golang function called exec.LookPath

Additional context

Issue to track https://github.com/k3s-io/k3s/pull/9311

This has a well-built unit test associated with it and does not seem to need additional QA, so I am closing this out.


Fix compile issue with swift-nio in Xcode 13 GM

Because of an issue with Xcode 13 GM SDK, swift-nio requires a workaround to compile (https://github.com/apple/swift-nio/issues/1955). This has been released in 2.32.3.

This change might take a few days to appear in a release. I am in the process of merging in the async await code.
In the meantime you can just update your dependencies and it'll get the latest version of swift-nio.
Outside of this issue I believe there are other swift concurrency compile issues with Xcode GM. I ended up using the latest version of swift from swift.org to get things working


Change union internal format

Changing tags to Case and dataX to Fields[X] means that out the box fable can parse json produced by json.net

Nice addition to improve interoperability, thanks!


Assumed syntax in parameters.txt is not aligned with semeio

Reference implementation for parameters.txt-parsing is in
https://github.com/equinor/semeio/blob/master/semeio/jobs/design_kw/design_kw.py
This is not in line with:
https://github.com/equinor/fmu-dataio/blob/c3111c9f5e53d14bbecad7a3d954ca6af563b442/src/fmu/dataio/_utils.py#L220
which interprets a nested dictionary structure from the keys based on colons in the key string.
Semeio actively ignores prefixes before colons in keys.

I don't immediately understand the reasoning behind what semeio does, but is it a different use case? E.g. should outgoing metadata also just include parameters unique after stripping everything before colon (except exceptions i.e. LOG10_)?
The primary use case for these parameters in the metadata right now is for clients such as Webviz to be able to offer filtering based on them. E.g. "show me all data from iteration X where parameter Y has value Z".

Semeio has taken a deliberate decision to ignore prefixes (before colon) when executing DESIGN_KW. If fmu-dataio then starts to add meaning to that otherwise ignored prefix, we need to be careful.
The reason for semeios decision is to let users switch between design matrix parameters (DESIGN_KW) and history matching parameter (GEN_KW, which always adds a prefix).

Context: https://github.com/equinor/semeio/issues/59 and https://github.com/equinor/semeio/pull/163

Thanks. fmu-dataio is not aware of the contents, it merely parses and puts into outgoing metadata for a data object. So the actual question then is probably how this should look like in the metadata. E.g when user switches between GEN_KW and DESIGN_KW.

Problem is perhaps mitigated in #102


ENH: adds  bind kwarg to odo

Can you add a test for converting something without bound metadata, e.g., a function (to reproduce the case that motivated this PR).

Can you also add some documentation to the effect of "Hey be aware of the bound/unbound metadata issue, and here the two different ways that this works and in certain cases you must pass bind in"

I changed the tests to be paramaterized on bind so that they will run once with bound objects and then once with unbound objects and bind passed to odo.

Does this look good to merge?

Let me try this branch out on some internal stuff before merging. Should be okay to merge first thing tomorrow or later tonight if I can get to it

Sounds good.

@llllllllll Thanks! This is in!

hyphy


entrypoint.sh unescapes

Does not work:
sudo docker run -it --rm  --volume ${PWD}/out:/output   ghcr.io/webis-de/scriptor:0.4.0 scriptor --input '{"url":"https://github.com/webis-de/scriptor"}'
works:
sudo docker run -it --rm  --volume ${PWD}/out:/output   ghcr.io/webis-de/scriptor:0.4.0 scriptor --input '{\"url\":\"https://github.com/webis-de/scriptor\"}

I'm now using escapes in the examples. However, moving to entrypoint.js should have also solved this issue (though seemingly not for Windows)


Change the position of Axis in LineChart

Hey,
I was wondering whether it's possible to change the position of Axis in LineChart. I want o show X-axis at Y = 0 and Y-axis at X = 0 thus creating the four quadrants. Is it possible?
Thanks.

LineChartData data = new LineChartData(lines);
Axis axisX = new Axis();
Axis axisY = new Axis().
data.setAxisXTop(axisX);
data.setAxisYLeft(axisY);
May be  you can try this code.


Frontend Improvements required in Face-X website

Discussion opened to make the website
https://github.com/akshitagupta15june/Face-X/tree/master/Face-X-Web

I would like to improve the frontend.


macchina: 1.1.6 -> 5.0.2

Automatic update generated by nixpkgs-update tools. This update was made based on information from https://github.com/Macchina-CLI/macchina/releases.
meta.description for macchina is: "A fast, minimal and customizable system information fetcher"
meta.homepage for macchina is: "https://github.com/Macchina-CLI/macchina"
meta.changelog for macchina is: "https://github.com/Macchina-CLI/macchina/releases/tag/v5.0.2"
Updates performed

Rust version update

To inspect upstream changes

Release on GitHub

Compare changes on GitHub

Impact

Checks done (click to expand)

built on NixOS
The tests defined in passthru.tests, if any, passed
/nix/store/xpf6mrbfhyicad85hdffp7znfknmn61a-macchina-5.0.2/bin/macchina passed the binary check.
1 of 1 passed binary check by having a zero exit code.
1 of 1 passed binary check by having the new version present in output.
found 5.0.2 with grep in /nix/store/xpf6mrbfhyicad85hdffp7znfknmn61a-macchina-5.0.2
found 5.0.2 in filename of file in /nix/store/xpf6mrbfhyicad85hdffp7znfknmn61a-macchina-5.0.2

Rebuild report (if merged into master) (click to expand)

2 total rebuild path(s)

1 package rebuild(s)

1 x86_64-linux rebuild(s)
0 i686-linux rebuild(s)
1 x86_64-darwin rebuild(s)
0 aarch64-linux rebuild(s)

First fifty rebuilds by attrpath
macchina

Instructions to test this update (click to expand)

Either download from Cachix:
nix-store -r /nix/store/xpf6mrbfhyicad85hdffp7znfknmn61a-macchina-5.0.2 \
  --option binary-caches 'https://cache.nixos.org/ https://nix-community.cachix.org/' \
  --option trusted-public-keys '
  nix-community.cachix.org-1:mB9FSh9qf2dCimDSUo8Zy7bkq5CX+/rkCWyvRCYg3Fs=
  cache.nixos.org-1:6NCHdD59X431o0gWypbMrAURkbJ16ZPMQFGspcDShjY=
  '

(The Cachix cache is only trusted for this store-path realization.)
For the Cachix download to work, your user must be in the trusted-users list or you can use sudo since root is effectively trusted.
Or, build yourself:
nix-build -A macchina https://github.com/r-ryantm/nixpkgs/archive/40cf9eae71bbc0a6200a149602cc44cd31c2185d.tar.gz

After you've downloaded or built it, look at the files and if there are any, run the binaries:
ls -la /nix/store/xpf6mrbfhyicad85hdffp7znfknmn61a-macchina-5.0.2
ls -la /nix/store/xpf6mrbfhyicad85hdffp7znfknmn61a-macchina-5.0.2/bin

Pre-merge build results
We have automatically built all packages that will get rebuilt due to
this change.
This gives evidence on whether the upgrade will break dependent packages.
Note sometimes packages show up as failed to build independent of the
change, simply because they are already broken on the target branch.
Result of nixpkgs-review run on x86_64-linux 1

1 package built:

macchina

Maintainer pings
cc @414owen for testing.

Result of nixpkgs-review pr 144443 run on x86_64-linux 1

1 package built:

macchina


Instructions on running game with modified .txts?

Hi, thanks for this mod!
If I wanted to further make some changes to the .txt files and not use the compiled "pd2data.mpq" file, how would I go about doing that?

Hey, thanks for checking out the mod. You have to unpack the pd2data.MPQ file with MPQExtractor, then put the extracted data folder into ProjectD2 directory and add -direct -txt to your PlugY shortcut.

Thanks for the response. I've followed your instructions, and have the /data folder extracted from pd2data.MPQ placed in the ProjectD2 directory, and I've added -direct -txt to my PlugY shortcut (Target looks like "C:\Program Files (x86)\Diablo II - SP\ProjectD2\PlugY.exe" -3dfx -direct -txt). However, anytime I try to enter into a game I get an Access Violation (c0000005). I haven't made any .txt modifications yet.
Mod runs smoothly without -direct -txt.


[SP-6407] Backport of [PPP-4921] Vulnerable Component: Jackrabbit to 9.3

:x: Build failed in 2m 53s
Build command:
mvn clean verify -B -e -Daudit -amd -pl plugins/pur/core

:exclamation: No tests found!
Errors:
Filtered log (click to expand)

script returned exit code 1

:information_source:  This is an automatic message

:white_check_mark: Build finished in 11m 23s
Build command:
mvn clean verify -B -e -Daudit -amd -pl plugins/pur/core

:exclamation: No tests found!
:information_source:  This is an automatic message


Concurrency

Extism continues to be a delight to work with.
I realized that Extism probably has limited support for automatic concurrency, especially when calling host functions or the HTTP API. I verified that invoking the same plugin in parallel blows up. Of course I thought to check the FAQ after that: https://extism.org/docs/questions#how-does-concurrency-work-are-plug-ins-single-threaded
I don't need concurrency right away, but definitely will, so I want to be sure I understand the constraints.
Basically my current plugin design works as an HTTP handler. Requests com in, Responses go out. My plugin also does KV operations via host functions, and makes outgoing HTTP requests (which I'm assuming is essentially implemented like a host function). I need to be able to run the plugin from many concurrent incoming HTTP requests.
In golang, a simple design would be a pool of worker goroutines listening on the same channel. Each goroutine has it's own plugin instance. In a loop, each worker pulls a job off a go channel, invokes the plugin, then sends the result on a separate channel (probably one passed in the first channel). Basic actor arrangement.
So, a few questions:

It sounds like I need to have 1 plugin instance per concurrent execution. Is that correct?
On what order is the overhead of plugin instances? Goroutines are very cheap. It wouldn't be a problem to have 100s of worker goroutines. I could probably make it pretty far with ~4 plugin instances, but it would be nice if I don't need to worry about it.
How much overhead is there to instantiating a new plugin? I doubt it but maybe I could just do that for every request?
I'm confident about implementing this in Golang, but less certain about other languages like JS and Python. In JS maybe a ReadableStream worker queue? Any tips or gotchas I should look out for?

Hey @anderspitman - glad to hear you're making progress and enjoying the tools!
We have actually implemented and reversed or held of on some of the strategies you mention. You'll see plugin Pool draft PRs in many of the repositories. You are certainly free to re-use any of this work, and it should be fine to live in an external library which you can extract vs. maintaining a fork. There are some landed features (yet to be released) that I think should cover your needs though.
For example, see this thread and PR: https://github.com/extism/go-sdk/pull/81 - we intend to release this very soon, and in fact, with your testing help, could release it even sooner.
The Rust SDK (which is in turn embedded into all other langages besides Go and JS) also has a similar implementation in the works, and will be released soon too.
If you'd like to try the new CompiledPlugin Go SDK, which unlocks better concurrency support and re-use of the compiled instance, you should be able to go get using the @main suffix .. (double check me on this though, I always forget!) - your feedback on this will be very helpful.
I will still go through and answer your questions above, but it may take longer than this quick response (which hopefully can point you to a path forward).

Actually, the Rust SDK already has support too, which has been released, and is making its way out to the Python SDK as well: https://github.com/extism/extism/pull/784

This is all excellent info and suggestions. Thank you! You guys really go above and beyond for an open source project.
I'd love to contribute something back. @nilslice what sort of testing on the golang main branch would be most helpful. Can you provide any details on what sort of concurrency is unlocked vs the current release?

I haven't done any serious stress testing, but preliminary results show that using CompiledPlugin solves the concurrency problem for my use case. I spun up 4 loops making requests to my HTTP handler which makes slow synchronous requests internally. Previously if run without a mutex this would blow up immediately. With CompiledPlugin it works great!
If there ends up being a similar API for JavaScript (which sounds like it's in the works) that would be amazing.
Happy to do more specific testing if it would be helpful. Or I can just keep an eye on it as I move forward and report back if anything fishy happens.
One piece of feedback on the API is that PluginInstanceConfig was pretty confusing. It wasn't clear until I looked through the code that it's probably fine to leave it empty. It might be nice if this argument was optional. I see from the conversation in https://github.com/extism/go-sdk/pull/81 that there might not be a perfect solution, which is fine.

If there ends up being a similar API for JavaScript (which sounds like it's in the works) that would be amazing.

In JS the API looks a little different, but it's already supported! Instead of passing a buffer containing a Wasm module, you pass a WebAssembly.Module instance[^1].
# main.mjs
import { createPlugin } from '@extism/extism'
import { readFile } from 'node:fs'

const module = await WebAssembly.compile(await readFile('path/to/file.wasm'))
const plugin = await createPlugin(module)

If you want to kick the tires on JSPI, you can run the following with Node v23+ via node --experimental-wasm-stack-switching:
import { createPlugin } from '@extism/extism'
import { readFile } from 'node:fs'
import { setTimeout } from 'node:timers/promise'

const module = await WebAssembly.compile(await readFile('path/to/file.wasm'))
const plugin = await createPlugin(module, {
  functions: {
    'extism:host/user': {
      // using JSPI, host functions can be async without running in a worker
      async get_value(context) {
        await setTimeout(100)
        return context.store("hello world")
      }
    }
  }
})

[^1]: (There's no kernel module in the js-sdk & there's only the one Wasm runtime target, so we can directly expose the "compiled" version of the underlying API there.)

In JS the API looks a little different, but it's already supported! Instead of passing a buffer containing a Wasm module, you pass a WebAssembly.Module

This appears to be working great! Just to make sure I'm doing it right, I'm compiling once globally, then calling createPlugin for each request. This is also what I'm doing in Golang. Seems to be plenty fast and no conflicts so far. Though it does print a ton of warnings:
(node:3528041) ExperimentalWarning: WASI is an experimental feature and might change at any time

That's easy enough to suppress though.
One concern: what is the concurrency model in this case? For example, currently my plugins are all sharing a single KV store that may not be thread safe. In normal JS this isn't a problem because its single threaded. Do I need to protect against this with node workers or does the runtime handle that transparently?

If you want to kick the tires on JSPI, you can run the following with Node v23+ via node --experimental-wasm-stack-switching:

@chrisdickinson would this provide a way for my plugin to make concurrent async HTTP requests? If so I'm assuming it would also require tokio or some other async runtime to support wasm32 more fully, as it currently only supports block_on on a single thread AFAIK.


PixelSnap-like screenshot

Description of the new feature / enhancement
An app for mac called PixelSnap -- getpixelsnap.com -- has a really really cool feature that I've been missing since making the jump to windows -- you draw a screenshot box and it 'snaps' to whatever element. And you can adjust the padding with the screen shot as well, it's just so nice and so clean and I would do terrible things to have it in PowerToys
Scenario when this would be used?
All the time for ... basically everyone! Nice clean, Mac-level screenshots for devs, designers (me) -- just a killer tool. Make screenshots pixel precise and perfect =)
Supporting information

After knowing about PixelSnap, now I need this. Never felt taking screen shot will be this much cool.


Proposal: Change URL's signature to match [S]Printf

Go from:
func URL(s string) SafeURL {

To:
func URL(format string, a ...any) SafeURL {
   s := fmt.Sprintf(format, a...)

This would be a backwards compatible change and would save some function nesting in templ funcs

I like the idea of having a url format / builder function.
If it was the signature of Sprintf, e.g.: urlf.Sprintf("/path/%s/fileName.js?%s=%v", "pathvar/", "qkey?", "&other=true") there's a few dangers to consider... Because of the context of the variable substitution, there's a risk of injection attacks, so the values would need to be appropriately escaped:

path variables need to be path escaped so that / etc. is encoded.
query variables need to be query escaped so that ?, = etc. are properly encoded.

There's also the question of what happens if you do something like:
urlf.Sprintf("?%s", "data")

It could live in github.com/a-h/templ/urlf to avoid the name of oddity of templ.URLf or similar, but I don't mind templ.URL
I wonder if a builder style is better, since it turns issues with sprintf replacement into compile time issues:
urlbuilder.Build().Path("a").Path("b").Path(c).Query(key, value)

There could be an unsafe counterpart too, urlf.UnsafeSprintf.

I think the next action is to track usage of the package. If it's used a lot, then we merge it into the mainline.
This is where Github needs a "remind me in 6 months" function. 😁
Good ideas always come back, so I'll close for now to keep the issues list as manageable as we can.


Bug in speed_test.py

I found torch.no_grad() is missed in the speed_test.py, which significantly slows down the throughput. Is this intentional or a mistake?

Hi @caddyless,
Thanks for your comment. Actually, I didn't observe notable differences in the results of the throughput testing with/without torch.no_grad(). The differences were all within 1%, so there was no need to add torch.no_grad(). Did you find a large difference in the throughput testing with/without torch.no_grad()?


fix common https://github.com/pivpn/pivpn/issues/1733#issue-1747767321

pivpn -off/-on user (en-/dis-)ables also "user-1", "user-2",...,"user-n"
this fix ensures that only "user" is disabled

Thank you for your pull request.
Merged,
Squashed commits and redacted the header to match the guidelines.

:tada: This PR is included in version 4.3.0-test.2 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:

:tada: This PR is included in version 4.3.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Wrong paths when working with flow subcontexts

When working with subcontexts, the Umpa Lumpa turns out the wrong mapping.
Example with a Development/Docker subcontext:
classes with break points are mapped to
/application/Data/Temporary/Development/Cache/Code/Flow_Object_Classes/
while the actual classes are actually generated in
Data/Temporary/Development/SubContextDocker/Cache/Code/Flow_Object_Classes/

@uris-dev Sorry for the late answer, this have been fixed in https://github.com/dfeyer/flow-debugproxy/commit/81d1750e4449d4e6b8a07aed788b668d854d171d ? Can you reproduce the problem with a recent release ?


fix: removed secrets resource block, output and variables.

Description
The azure keyvault module is no longer setting secrets.
Motivation and Context

The module is only responsible for setting the keyvault and poicies. Content, like secrets/certificates/keys, are
setup through either manual or custom interfaces.
How Has This Been Tested?

Code snippet used to validate the implementation.
⚠ in the test snippet, the keyvault module is pointing to local module.
module "heimdall_rg" {
  source      = "git::github.com/Nmbrs/terraform-modules//azure/resource-group"
  project     = "heimdall"
  tags        = {
    Country : "nl"
    Squad : "infra"
    Product : "internal"
    Environment : "dev"
  }
  environment = "dev"
  location = "westeurope"
}

module "keyvault" {
  source = "../tf-modules//azure/keyvault"
  name                = "kv-heimdall"
  location            = "westeurope"
  resource_group_name = "rg-heimdall-dev"
  tags        = {
    Country : "nl"
    Squad : "infra"
    Product : "internal"
    Environment : "dev"
  }

  policies = {
      admin = {
        object_id = "7574db9b-72f3-431c-b068-b8769935e90c"
        key_permissions         = ["get", "list"]
        secret_permissions      = ["get", "list"]
        certificate_permissions = ["get", "list"]
        storage_permissions     = ["get", "list"]
      }
  }
}

Screenshots
Types of changes

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Checklist:

[ ] My code has security implications.
[ ] My code follows the code style of this project.
[ ] My change requires a change to the documentation.
[ ] I have updated the documentation accordingly.

It might be a good idea to add terraform.tf file with the required providers with the exact version that makes this code works properly.
Example:
```hcl`
terraform {
required_providers {
azurerm = {
source  = "hashicorp/azurerm"
version = "=2.98.0"
}
}
required_version = ">= 1.0.0"
}


Versioning?

Hi,
at first: Thanks for creating this editor! :)
I wasn't able to find a version or changelog, therefore:
Are there any plans to implement some form of versioning, e.g. using tags?
Would be very useful to us.

Hi @Schweinepriester thanks for the kind comments :)
Internally we use milestones to flag what will be in an upcoming release and so my intention was to use the same approach, and at the same time that would lend itself nicely to a changelog. The first milestone was planned to be when all the tests where complete but I simply have gotten that far yet unfortunately.
I'm fairly new to git (convert from Mercurial) so I've not used tags much but I'll have a read up on them and how they could be used.
I'm very happy to hear suggestions from yourself and others on the best route to take :)

Just a thought:
I tend to use commits to manage dependencies on older projects, because creating tags can be time consuming in a sense that they have to be fully tested to earn their name!
Tags are a great way to flag milestone though. I think they will be useful once the lib becomes available on node, and people will be compiling it as part of their project code. Eg:
npm install<EMAIL_ADDRESS>
NPM is in the pipeline I believe?

@guillaumepiot - Yep NPM is in the pipeline (and your down to help me with that lol :D )

@anthonyjb Ahah that's true! That's for the next dev day.

Internally we use milestones to flag what will be in an upcoming release and so my intention was to use the same approach, and at the same time that would lend itself nicely to a changelog. The first milestone was planned to be when all the tests where complete but I simply have gotten that far yet unfortunately.

[…]

I'm very happy to hear suggestions from yourself and others on the best route to take :)

Alright, thanks, milestones are good! :)
Also looking forward to NPM.
Closing this issue as my question is answered.


Added posiblity to store iso build with a suffix

The check above failed due to an internal jenkins error.
The internal error should now be fixed


Fix concurrency edge-cases in channel factory

just ran my test harness against this for a long time, works great 👍

Published as 0.19.0-SNAPSHOT


Adding the quantikz package

Everyone,
Adding the Quantikz package could be useful.
Any chance for this to happen?
Thanks.

+1 I would also like to see Quantikz added.

i dont know how many tikzlibraries rely on luatex (which seems to be an issue #20 ) but it would be nice in general to see some support for specific \usetikzlibrary{}

This would be super helpful


connection reset by peer

I was setting fleek for the first time on a fresh uBlue install, and got this perplexing error:
[aadil@fedora ~]$ nix run github:ublue-os/fleek -- init
error: cannot open connection to remote store 'daemon': error: reading from file: Connection reset by peer

I'm not sure why the connection was reset. GitHub loads on my connection just fine.

Worked after a reboot. Closing!


"Uncaught TypeError: Cannot read property 'fn' of undefined" when add/remove layer

Here len > listeners.length because l = undefined.
Why so?
Leaflet v1.0.3

Can you publish a fiddle/codepen/playground that displays this behaviour?

I have difficulty reproduce error without my self data, but the essence of rewriting len.

Then, I'm closing this because there is no reproducible case. I'll reopen if a reproducible case is provided.

I think I've encountered this when migrating applications from Leaflet 0.7 to 1.0. The solution has always been making sure layers do not extend L.Class (which was fine in 0.7), but inherit from L.Layer instead.


Use builder also for beacon input

Previously, an input with a Beacon root commitment was created using the into_beacon_input method of the environment. This is inconsistent as all configuration should happen in the EvmEnvBuilder.
Resolves #259
Resolves WEB3-151

To be merged after https://github.com/risc0/risc0-ethereum/pull/265


Add authentication middleware

This adds a middleware that will block any request coming from users with missing or invalid authentication credentials.

Nice!
09:51 $ cf curl /v3/processes/51f740bd-494d-11ec-8560-ce6c6a3b098d/stats

{"resources":[{"type":"web","index":0,"state":"RUNNING","host":null,"instance_ports":[],"uptime":null,"mem_quota":null,"disk_quota":null,"fds_quota":null,"isolation_segment":null,"details":null}]}

09:51 $ curl localhost:9000/v3/processes/51f740bd-494d-11ec-8560-ce6c6a3b098d/stats

{"errors":[{"detail":"Authentication error","title":"CF-NotAuthenticated","code":10002}]}

@gcapizzi If you're using curl instead of the cf CLI what would be the best way to manually set up the Authorization header?
On CF for VMs I would use curl -H "Authorization: $(cf oauth-token)" ....

@gcapizzi If you're using curl instead of the cf CLI what would be the best way to manually set up the Authorization header?
On CF for VMs I would use curl -H "Authorization: $(cf oauth-token)" ....

We don't have a good way at the moment 😕  We could implement cf oauth-token though! I'll add a story and we can see when to prioritise it.


Modal View Presenter / Custom Bottom Sheet

Created ModalViewPresenterViewModifier to present modals from any view
Created ModalPresentationState to incapsulate all modals and their views that can be shown
Implemented a custom bottom sheet view with customisation (used this library as an inspiration but it didn't have the functionality that I needed so I've used some of its code and modified it the way I needed)

The custom bottom sheet preview:
https://user-images.githubusercontent.com/74956972/148465079-fdeefdb3-417f-4b79-bc89-bcb90c3448fb.mov

Same as Gabriel great work. I just want answers on my questions there. It doesnt look like you made a mistake so I just want to know the reasoning why.

Same as Gabriel great work. I just want answers on my questions there. It doesnt look like you made a mistake so I just want to know the reasoning why.

Yeah, sure! What questions are you talking about?

Same as Gabriel great work. I just want answers on my questions there. It doesnt look like you made a mistake so I just want to know the reasoning why.

Yeah, sure! What questions are you talking about? Can't find any comments

I left to comments but they might not have been visible. Can you se them now?

Same as Gabriel great work. I just want answers on my questions there. It doesnt look like you made a mistake so I just want to know the reasoning why.

Yeah, sure! What questions are you talking about? Can't find any comments

I left to comments but they might not have been visible. Can you se them now?

Yeah, thanks! Answering them now


Can't init AlienFX v2.0 at some rig (e.g Alienware 17 R5)

AlienFX v2.0 code is used to enable the LED lights on the current versions of Dell and Alienware computers. The Alienware Command Center (AWCC) install application's code fails to handshake with the Electrically Erasable Programmable Read-Only Memory (EEPROM) code on the System Board. Consequently, the AWCC install application refuses to install the AWCC AlienFX v2.0 applications and there is no AWCC FX tab. The Dell or Alienware LED Lights remain dark and inaccessible.
However, alienfx-tools could install code to handshake with the EEPROM code on the System Board and get the AlienFX LED Lights to work. It would be great if the keyboard lights could be switched on and off.

Our Alienware 17 R5 Laptop Operating System is Windows 10 Professional (x64) Version 2004 (build 19041.450). All Windows Updates have been installed. BIOS is the most recent Alienware 17 R5 v1.8.1. Alienware Command Center (AWCC) application v<IP_ADDRESS> is the most recent install application. All Alienware updates have been installed. SupportAssist says System Board hardware test is pass.

Alienware 17 R5 says

Hi @T-Troll is there any prospect of alienfx-tools code being updated to handshake with AlienFX v2.0 EEPROM code on Alienware 17 R5 System Board?

Check This probe tool, it uses low-level access and try to locate device. It doesn't need Dell SDK,
If it doesn't works - you have hardware/BIOS fault, and need system repair.

Hi @T-Troll  run AlienFX Sample App.exe gives no response. Open cmd and AlienFX Sample App.exe status says 'AlienFX' is not recognized as an internal or external command, noperable program or batch file.

Is this the "If it doesn't works - you have hardware/BIOS fault, and need system repair."?

App name have have spaces - make it all in quotes. And it doesn't require parameters.

Hi @T-Troll thank you for clarification. Have renamed "AlienFX Sample App.exe" to AlienFXProbe.exe. Open cmd and repeat with new name. C:\AlienFXProbe>AlienFXProbe.exe status says PID: ffffffff. Is this good or bad?

Bad. You have no AlienFX device in system. I think you need repair it.

So, as i say before, try to downgrade bios, if it does not help - go to repair.
I can't help you with this case, sorry.

Hi @T-Troll, @RealDeuce used your AlienFX-Probe application yesterday, and both of us do not understand the updated message that says "please check device manager". What are we looking to find or not find in device manager?

Probe app try to locate any Alienware-manufactured device into the system.
If no device found, it returns ffffff and tells about it.
So, being simple, it's what i'm talking about - you have no Alienware device recognized by Windows.
AWCC using the same low-level interface, so results for Probe and AWCC will be the same.

Hi @T-Troll thank you for the AlienFX-Probe's "please check device manager" clarification. RealDeuce and I both have Alienware 17 R5 Laptops, we both have Alienware hardware, but our AlienFX LED Lights stopped working after an AWCC update.
When the AWCC application is installed, so is the AWCC Driver in Device Manager. From what you have imparted, the AlienFX hardware makes use of USB drivers in Device Manager, but does not explicitly say which USB driver it is using.
Hence the AlienFX-Probe question: What are we looking to find or not find in Device Manager?
(The AWCC Home and FX tabs are "missing" and AlienFX v2.0 applications are not installed. Postulate that the AWCC code does not handshake with the AlienFX EEPROM code on the System Board. Rollback of the AWCC version does not re-enable AlienFX Lights.)

We are running circles a bit.
Both AWCC and my probe looking for USB HID with VID=187c (Alienware) and any PID.
If no device found = light system not present into Windows and lights not working.
NB: AWCC also provides firmware update for FX device (check C:\Program Files\AWCC\Firmware). Seems like they soft-brick you device into the one of updates, so it's no longer accessible. It's not possible to rollback device firmware if device not present into the system....
MAYBE, just MAYBE, BIOS update can also alter it, fixing broken firmware.
Another MAYBE - try to force-clear all EEPROM (open case, remove main battery, remove BIOS battery if present, push Power button for 30 sec, assembly back).
If it doesn't help - no one can help you, but Alienware repair specialists.


feat(main): run epsagon using env var

In additon - auto-tracing Flask and Django apps.

:tada: This PR is included in version 1.41.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


feat(legacy): support iife output and merge polyfills with code

Description
fixes #7026
The goal of this PR is to enhance the legacy of the plugin by adding two parameters to allow users of this plugin to choose between SystemJS or IIFE to generate the legacy version of the bundled code and a parameter to merge the polyfills to the application code.

Additional context
Closes #7026

What is the purpose of this pull request?

[ ] Bug fix
[X] New Feature
[X] Documentation update
[ ] Other

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

[X] Read the Contributing Guidelines.
[X] Read the Pull Request Guidelines and follow the Commit Convention.
[X] Check that there isn't already a PR that solves the problem the same way to avoid creating a duplicate.
[X] Provide a description in this PR that addresses what the PR is solving, or reference the issue that it solves (e.g. fixes #123).
[X] Ideally, include relevant tests that fail without this PR but pass with it.

@Niputi Hiii 😁  do I have to do something more with regards to PR? thank you

Hi @aleclarson, I wanted to ask you if it was possible to verify this PR, please.
I think it is important to minimize dependencies and using SystemJS worries me a little as I don't have the control I need, moreover in some cases the use of SystemJS only adds an overload.
I also think that the balance between cross-browser support and the amount of code could benefit from this because precisely with a configuration we could remove this overload from the output (if not necessary).
At the moment I am forced to use a version locally with these changes proposed in this PR.
Hope for a review soon, sorry for the disturb, and thanks in advance 😉

Code updated to the latest base of main

Hi @Marco-Prontera, just wanted to let you know that we've put this PR in the team discussion board. We'll try to get to it soon. Sorry for the long wait!

Hi @bluwy any news? 😃

This was discussed in the last meeting. However we decided to not go ahead with this as we prefer to maintain the systemjs only version instead. If you'd like to use this feature, you can fork the plugin and publish it separately. Closing this for now.

This was discussed in the last meeting. However we decided to not go ahead with this as we prefer to maintain the systemjs only version instead. If you'd like to use this feature, you can fork the plugin and publish it separately. Closing this for now.

I understand, thanks


Wandb/local crashes due to stopped mysql

wandb/local 489109b083ce (buildDate: 2021-09-28, gitHash: 8570aa155, version: 0.9.44)
Migrations finish, but mysql then shuts down and the application can't connect to it. In particular, mysql starts and shuts down 2x and then lies flat.
UI - after attempting to create the first user account:
Unable to create account, contact your administrator.
An application error occurred.

# /var/log/mysql/error.log
2021-09-28T20:26:26.091626Z 0 [Note] mysqld: ready for connections.
Version: '5.7.35-0ubuntu<IP_ADDRESS>'  socket: '/tmp/tmp.A1uZ7TOf4O/mysqld.sock'  port: 0  (Ubuntu)
2021-09-28T20:26:26.111803Z 0 [Note] Giving 0 client threads a chance to die gracefully
2021-09-28T20:26:26.111822Z 0 [Note] Shutting down slave threads
2021-09-28T20:26:26.111841Z 0 [Note] Forcefully disconnecting 0 remaining clients
2021-09-28T20:26:26.111846Z 0 [Note] Event Scheduler: Purging the queue. 0 events
...
2021-09-28T20:26:27.922356Z 0 [Note] mysqld: Shutdown complete

2021-09-28T20:26:28.624850Z 0 [Note] mysqld (mysqld 5.7.35-0ubuntu<IP_ADDRESS>) starting as process 823 ...
...
2021-09-28T20:26:28.752659Z 0 [Note] mysqld: ready for connections.
Version: '5.7.35-0ubuntu<IP_ADDRESS>'  socket: '/tmp/tmp.VBu6HCoc1E/mysqld.sock'  port: 3306  (Ubuntu)
2021-09-28T20:26:28.753048Z 0 [Note] Giving 0 client threads a chance to die gracefully
2021-09-28T20:26:28.753064Z 0 [Note] Shutting down slave threads
...
2021-09-28T20:26:30.362825Z 0 [Note] mysqld: Shutdown complete

# /var/log/mysql.log:
Version: '5.7.35-0ubuntu<IP_ADDRESS>'  socket: '/var/run/mysqld/mysqld.sock'  port: 3306  (Ubuntu)
2021-10-08T07:47:55.958966Z 5 [Note] Aborted connection 5 to db: 'wandb_local' user: 'wandb_local' host: '<IP_ADDRESS>' (Got an error reading communication packets)
2021-10-08T07:47:55.958992Z 4 [Note] Aborted connection 4 to db: 'wandb_local' user: 'wandb_local' host: '<IP_ADDRESS>' (Got an error reading communication packets)
2021-10-08T07:47:55.959421Z 6 [Note] Aborted connection 6 to db: 'wandb_local' user: 'wandb_local' host: '<IP_ADDRESS>' (Got an error reading communication packets)

# /var/long/nginx/error.log
2021/10/08 07:48:25 [error] 94#94: *35 auth request unexpected status: 400 while sending to client, client: <IP_ADDRESS>, server: , request: "PUT /system-admin/api/users/ HTTP/1.1", host: "localhost:8124", referrer: "http://localhost:8124/signup"

I want unable to find the reason why mysql stopped itself immediately.

The embedded MySQL works OK, except service mysqld status shows it's stopped.


Examples would be nice - I would look at them first and ignore everything else

[Enter feedback here]

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

ID: bf2281d4-1470-0658-ec5a-687fe2cd451c
Version Independent ID: 2ce2be3e-e3a2-790c-3bff-90efe7318450
Content: robocopy
Content Source: WindowsServerDocs/administration/windows-commands/robocopy.md
Product: windows-server
Technology: windows-commands
GitHub Login: @JasonGerend
Microsoft Alias: alalve

Hey dlwiii,
Thanks again for contacting Microsoft. We value your feedback.
A documentation change has been made adding several examples and will be live after the next business day. We will now be closing this thread.
Thank you and have a most pleasant day.
#please-close


Support custom rules in Schema Policy checks

We have some security concerns regarding running end-user JS code in the services.
Maybe it's possible to do rules-as-JSON? (like AST-only rules)

Hi :) we are currently in the process of assessing if using Hive with our Apollo Federation Router would be feasible, and one of our use cases is running some custom schema checks on the subgraphs.
I was wondering if calling  the external validations using HTTP would be a possible solution here?


Generated OpenApi definition not treating nullable value types as optional.

Looks like maybe you tried to address this in Issue#7.  Regardless: In the generated open api descriptions nullable types show up as required.  The problem is HttpParameter.IsOptional is being set to !type.IsValueType ... and unfortunately Nullable returns true there.

Thanks - I'll get that fixed.

Addressed in v3.0.4-beta1. Thanks!


Define the baseline actions as a runtime option

Provide actions as a runtime argument rather than specifying them in the script as described by the removed TODO
'python baselines.py --action all_srnn' is now supported

Thanks. LGTM


libsidplayfp: disable tests on x86_64-darwin

Motivation for this change
As noted in https://github.com/NixOS/nixpkgs/pull/149644#pullrequestreview-827074081, one of the tests fails on x86_64-darwin but not on aarch64-darwin or any other platform. Reported upstream, disabling the tests on x86_64-darwin until this is fixed.
Tested sidplayfp (a reverse dependency of libsidplayfp) on x86_64-darwin and it seemed to work fine.
Things done

Built on platform(s)

[ ] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[ ] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
22.05 Release Notes (or backporting 21.11 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 149929 run on x86_64-darwin 1

2 packages built:

libsidplayfp
sidplayfp


FIX Design issues on 'Get Started' page

Design issues on 'Get Started' page - fix #213

The steps numbers cover the nav menu on mobile.
The steps numbers cover the 'IMPORTANT UPDATE' on mobile.
The steps buttons cover the 'IMPORTANT UPDATE' on desktop.

URL: https://grin.mw/get-started
1. The steps numbers cover the nav menu on mobile.

2. The steps numbers cover the 'IMPORTANT UPDATE' on mobile.

3. The steps buttons cover the 'IMPORTANT UPDATE' on desktop.

@quentinlesceller You're right. Apparently I checked the last button. I resubmitted PR with the solution for the first and second issues.
About the last buttons issue, do you have any suggestions for a solution?
The only way I found is to remove all the CSS properties for the buttons and add instead: margin-top: 25px;
This solution affects the whole section, I even think it looks better that way, less busy. What do you think?

Looking good!
Regarding your solution for 3, indeed it looks better like that! Can you commit that so we can check?

@quentinlesceller Thanks! Done.
If you prefer to keep the existing design of the section, I just found another solution that does not affect the visibility.

Yeah actually I just tested it and I find it too big. So I'd agree with another solution that does not change the design 😄

@Daniel-Leedan looking good is it ready to merge?

@quentinlesceller Yes. Thanks! 😄

Thanks LGTM 🚀


Division by zero in superconductor calculation

In GitLab by @mkovari on May 31, 2023, 15:19
We have had a non-fatal division by zero error in this line in function superconpf in pfcoil.py:
            rcv.copperaoh_m2 = ioheof / (pfv.awpoh * (1.0 - pfv.vfohc) * pfv.fcuohsu)

The variable awpoh is initialised to zero in pfcoil_variables.f90, and the line of code above is called before the correct value is calculated.
The correct calculation of awpoh is in function ohcalc in pfcoil.py:
        # Non-steel cross-sectional area
        pfv.awpoh = pfv.areaoh - areaspf

ohcalc is first called in line 732 inside function pfcoil:
        # Find Central Solenoid information
        if bv.iohcl != 0:
            self.ohcalc()

but superconpf is first called in line 627 inside the same function:
                # Allowable current density (for superconducting coils)

                if pfv.ipfres == 0:
                    bmax = max(abs(pfv.bpf[i]), abs(pf.bpf2[i]))
                    pfv.rjpfalw[i], jstrand, jsc, tmarg = self.superconpf(

I think that this function call can be moved from where it is now:
https://github.com/ukaea/PROCESS/blob/b8c0a3d2259b3c8541011960f6ae3c405274da6d/process/pfcoil.py#L623-L638
to a bit lower down, immediately after line 733:
        # Find Central Solenoid information
        if bv.iohcl != 0:
            self.ohcalc()


skill_table also for plotting.scatter

@ecomodeller , are you okay with my edits? Can we merge?


Random Sorting apps in AppIndexDashboard

Hi
I don't get how AppIndexDashboard sort the "self.models" list in the AppIndexDashboard
Why doesn't it respect the alphabetical sorting based on the verbose_name method of the class?
Thank's.
Pietro

Indeed, models are not sorted, I'm going to fix this very soon.

"Indeed, models are not sorted, I'm going to fix this very soon."
any news?
Thank you
Pietro


ESLint with TypeScript not picking up tsconfig's compilerOptions.target under specific circumstance

Note: ESLint behaves as expected when run from the command line so this is not due to ESLint itself or any project dependencies. TypeScript behaves as expected from the command line as well.
TS configured with child tsconfig does not use any compilerOptions.target for particular files when base tsconfig does not contain those particular files via include.
Minimal reproduction: https://github.com/LuminescentMoon/vscode-eslint-bug-repro
When .eslintrc rules only have semi enabled, .eslintrc is setup for linting TypeScript projects, .eslintrc's parserOptions.project contains ./tsconfig.eslint.json, tsconfig.json targets ESNext, only tsconfig.eslint.json includes tests/**/*.*, and tests/index.test.ts contains let x = 0n;
Expected behavior
Problems list only contains eslint(semi).
Actual behavior
Problems list contains eslint(semi) and ts(2737) - "BigInt literals are not available when targeting lower than ESNext".
Behavior of running eslint tests/index.test.ts
Problems list only contains eslint(semi).
Behavior of running tsc --project tsconfig.eslint.json
Compiles without errors.
Behavior after adding compilerOptions.target = ESNext to tsconfig.eslint.json
Problems list contains eslint(semi) and ts(2737) - "BigInt literals are not available when targeting lower than ESNext".
Behavior after adding tests/**/*.* to includes of tsconfig.json
Problems list only contains eslint(semi).

@LuminescentMoon if I read your description correctly then your issue is the error produced by the TypeScript compiler which shows up even if ESLint is disabled.  Since this error is produced by VS Code itself (e.g. the TypeScript extension shipping in VS Code) please file the issue against the VS Code repository.


Download only a type of attachment (zip)

Is it possible to implement a filter to download only zip files from Kemono posts ?

https://github.com/Ljzd-PRO/KToolBox/issues/103#issuecomment-2094799100

Does Ktoolbox automaticallhy import the .env instructions I add or do I have to add something else when running it in CMD ?

Currently, only reading .env.prod is not very reasonable. Support for .env will be added in the future.


Adapt tests for a switch to boto3 with botocore support for backward compatibility

@jazzthief Changes for https://github.com/scrapy/scrapy/pull/5833 to have tests run botocore and boto3 environments separately (only the last 2 commits matter, the rest is merging the main branch).
I still need to look into actual solutions for the boto3 tests, though.

Changes for scrapy#5833 to have tests run botocore and boto3 environments separately (only the last 2 commits matter, the rest is merging the main branch).

Great, so I rebase the scrapy#5833 onto these changes, correct?


Create team logo and t-shirt

User story

As a software development team
We want to have a team logo and a t-shirt with the logo on it
So that our team has a unique identity

Acceptance criteria

Design team logo
Create a t-shirt design with our logo on Shirtinator (select the Standard Bio (Organic) type of T-shirt)
Add the link to the t-shirt design to the planning document (this link may be a link to a shopping cart)
Every team member submits his/her t-shirt preferences in this survey

Definition of done (DoD)

Acceptance criterias are met
Agreement on a logo
Link to the t-shirt design exists in planning document

Tshirt we agreed on (example):

Team logo we agreed on:

T-shirt design we agreed on: https://www.shirtinator.de/loadBasket/UI1hycWOPLd

This issue is no more needed


Add slather/coveralls support

Changes Unknown when pulling 0670bfe114afb826ecbd207f1562e4a7aeddfc09 on add-slather-coveralls-support into ** on master**.


Log entries may be show up in the wrong order

This PR changes an existing test to demonstrate the problem. (I haven't quite managed to figure out how to run the system-tests myself, but I think it should repro the problem that I encountered on a standalone app).
The core of the problem is that if the client doesn't provide a timestamp, the logging service will add the timestamps based on the time of receipt which may be subject to local and network latencies. This may mean that the log entries may be out of order w.r.t. to the source code they were submitted from.
The fix would be to add a timestamp in the Entry constructor or on Entry.toJSON (if one doesn't exist).

I can add the fix to the PR as well. Any preference on the fix? I think the constructor is the better place to add a timestamp in case people queue/batch entries.

That sounds like a good plan to me, thanks!

PTAL.

@ofrobots I made a couple of changes to the tests & the way we cache the user's provided timestamp in the Entry constructor. PTAL.

@ofrobots I've updated the tests, ptal.

Thanks of updating! LGTM.

Thanks for the fix!


DEVTOOLING-235 Refactored outbound sequence

This PR will fix the cyclic dependency error in the outbound package that was caused when I refactored outbound_campaigns. I refactored outbound sequences and moved outbound campaignrule into its own package. With the release tomorrow I wasn't able to refactor outbound campaignrules fully so we'll finish it in the next sprint. I also had to clean up some of the tests in the outbound package, I missed them while refactoring outbound_campaigns since the tests weren't running

I noticed some test failures. One says "Error: Failed to delete outbound sequence ecced297-3412-41ae-b998-dc5a5d37dbd2: Failed to delete outbound sequence: API Error: 400 - Sequence cannot be deleted while it's running (256fefb4-b8c0-42fb-9f3a-ba3421286fc3)" , and another mentions an invalid campaign. Do these fail when you run them locally as well?

They didn't when I ran them but they are probably intermittent. I will try to replicate them

@charliecon I've addressed the failing outbound sequence test. I'm not sure what to do about the others, they don't happen for me locally. It might have something to do with everything running in parallel

Do they not work with 10 seconds sleep? Twenty feels like a lot

I thought ten was enough too but I saw on the matix tests earlier it failed to delete a campaign because it hadn't stopped yet so I increased it


crop x/y are incorrect if version is specified on cropbox

If I specify version on cropbox and/or previewbox --- the resulted crop is not representative of the area selected.  Its not even close.  I'm really sorry I dont have any spec to illustrate this...I tried.

I just wanted to follow up on this.  I have a version in my uploader called :big_thumb.  If use f.previewbox :avatar, version: :big_thumb, and f.cropbox :avatar, version: :big_thumb --- the form renders as expected (using the big_thumb version to crop rather than original).  However, x and y are not correct.  If I select an area to crop---the crop always originates at 0/0 (top left).


Add property $allowArray to NumberValidator.php

Q
A

Is bugfix?
❌

New feature?
✔

Breaks BC?
❌

Tests pass?
✔

Fixed issues
comma-separated list of tickets # fixed by the PR, if any

To be honest I'm not sure why we have this allowArray in exist and range validators and why we need to have it here as well. Or rather the other way around - why not have it in all the validators, what is so special in those three?

@bizley
It would be convenient if all validators had this property, but these 3 are most often (in my experience) used to transfer some kind of identifiers, and it is often necessary to be able to transfer arrays in them, it is not known whether this is used in other validators.

@raidkon would be great to have a fix for all validators but these alone are OK as well.

Thanks.


Conversion of model fails with assertion in Quantize operator

Describe the bug
When I try to convert segm_full_v491.zip on the command line, I get the following traceback:
<class 'tflite2onnx.op.quantize.Quantize'>
Traceback (most recent call last):
  File "/home/de/.local/bin/tflite2onnx", line 8, in <module>
    sys.exit(cmd_convert())
  File "/home/de/.local/lib/python3.8/site-packages/tflite2onnx/convert.py", line 55, in cmd_convert
    convert(args.tflite_path, args.onnx_path)
  File "/home/de/.local/lib/python3.8/site-packages/tflite2onnx/convert.py", line 44, in convert
    model.convert(explicit_layouts)
  File "/home/de/.local/lib/python3.8/site-packages/tflite2onnx/model.py", line 39, in convert
    self.parse()
  File "/home/de/.local/lib/python3.8/site-packages/tflite2onnx/model.py", line 31, in parse
    g.parse()
  File "/home/de/.local/lib/python3.8/site-packages/tflite2onnx/graph.py", line 63, in parse
    op.parse()
  File "/home/de/.local/lib/python3.8/site-packages/tflite2onnx/op/quantize.py", line 33, in parse
    logger.debug("Parsing %s...", self.shorty)
  File "/home/de/.local/lib/python3.8/site-packages/tflite2onnx/op/common.py", line 122, in shorty
    return '[%s](%s)' % (self.name, self.type)
  File "/home/de/.local/lib/python3.8/site-packages/tflite2onnx/op/quantize.py", line 25, in type
    return 'QuantizeLinear' if self.isQuantize else 'DequantizeLinear'
  File "/home/de/.local/lib/python3.8/site-packages/tflite2onnx/op/quantize.py", line 29, in isQuantize
    assert(self.status.parsed)
AssertionError

To Reproduce

Extract the model linked above
Execute tflite2onnx segm_full_v491.tflite segm_full_v491.onnx

Additional context
The model is the background segmentation from Google Meet

Hi @deiruch it seems your model includes data type float16. We already have an issue discussing related topic: https://github.com/jackwish/tflite2onnx/issues/30. We have a plan of enabling such cases in next version. I am going to close this issue as duplicate with #30.
For next action of your model, I suggest to remove the float16 nodes from the TFLite model - as all the inputs are float16, maybe we don't need to keep them.

Closing as track this issue in #30

Sorry, didn't realize this had the same underlying cause. Will follow the other issue!
Thanks for your work! Much appreciated!

No worry!


Snowtrace is being discontinued

Right now explorer Client in ethers uses snowtrace apis
https://github.com/gakonst/ethers-rs/blob/841ff8c47980798fbb47991e047f8481b1d5eb39/ethers-core/src/types/chain.rs#L444
Etherscan team recently posted that they will be discontinuing Snowtrace on November 30th.

Closed, as snowtrace api should work as planned


add pagination to admin UI jobdef and JNDI lists

closing as wontfix. The enhancements made in 1bd4fc0d4d8c89e6c74143c00aab501c6c54c53e make this useless.


docs(auth): Add to developer guide approaches to managing authentication state

How to manage AngularFire2 authentication state (emit observable of sign-in or logout status) and Angular2 (RC4 and above) route guard to work with angularfire2?
I asked a question in Stackoverflow. But I feel that a detailed documentation here would benefit AngularFire2 Community.

Yes  we need a detailed documentation for use AngularFire .

Agreed! We will be expanding our docs in a future release.

It would be good if AngularFire2 documentation could include detailed explanation on this

AngularFire2 has a af.auth.subscribe() to subscribe to the auth service. The question is how can i make the guard wait for the observable and then return either true or false?

From reddit.com/r/Angular2/comments/4trb3v/how_to_implement_guard_with_angularfire2/

Hi @davideast I can lend a hand if you need me. You could put together an application for this purpose. I'll use that application that you put together to enhance the existing markdown documentation. Hope this would be helpful.

Is there any progress in this front. I've tried same approach in my app, with similar auth-service of todo-angular2-firebase example, having auth-guard and unauth-guard. When I logout, canActivate gets called always prior to auth object nulls. I've tried .take(1) or .first()...no luck.
Why .logout() does not return promise anyways?

Is there any progress on this ?

AngularFire vs AngularFireAuth , both returns the same result , so AngularFire will handle all opereation it seems
constructor(public auth$: AngularFireAuth, public navCtrl: NavController, public af: AngularFire) {

    this.authState = auth$.getAuth();
    auth$.subscribe((state: FirebaseAuthState) => {
      this.authState = state;
      console.log(state);
    });
    //af.auth.getAuth()
    this.af.auth.subscribe(auth => {
      console.log(auth)

    });// user info is inside auth object
  }

With Angular v6, Firebase v5.0.* and angularfire2 5 rc 10 you can do something like this.
...
import { AngularFireAuth } from 'angularfire2/auth';
import { map } from 'rxjs/operators';

...
export class DashboardGuard implements CanActivate, CanActivateChild {

  constructor(private router: Router, private auth: AngularFireAuth) { }
  // #2
  canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
    // #1
    return this.auth.authState.pipe(
      // #3
      map((user: any) => user !== null) // <--- [1]
    );

  }

  canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
    return this.canActivate(route, state);
  }

}

Directly with AngularFireAuth's authState just pipe it down and check if user is not equal to null [1].

authState returns Observable<firebase.User>
canActivate() returns Observable<boolean> | Promise<boolean> | boolean
subscribing to authState will emit null if not authenticated else emits firebase.User (see screenshot below).

I've just discovered that I can now do this with the latest versions -> return an Observable<boolean> in canActivate... Because in the last versions although in the documentation it says that canActivate returns Observable<boolean> it gives me tons of errors. but now yea!
btw I just want to share how I write route guards before angular v6. using promises
constructor(private router: Router, private afAuth: AngularFireAuth) {}

canActivate(next: ActivatedRouteSnapshot, state: RouterStateSnapshot) {
  const promise = new Promise(
    (resolve, reject) => {
      this.afAuth.authState.subscribe((state: any) => {
        resolve(state !== null);
      });
    }
  );

  return promise.then((data: boolean) => {
    if (data) {
      return data;
    } else {
      this.router.navigate(['/']);
    }
  });
}

Closing as outdated, we've revamped all of our auth handling have guards, etc. now all fairly well documented.


do we need the tests in storage/tests?

after switching to mono-repo, do we still need those tests? do they run somewhere?
CC @refs @micbar

no, we run the Core Api Tests now on the root level

PR to delete unused tests in #684


bank 0 and 1 overlap?

It looks like bank1 is starting at the wrong address. the else prevents it from being an actual bug, unless you ever remove the else clause...
if (address >= 0xC000 && address <= 0xCFFF)
    {
        return m_bank0[address - 0xC000];
    }
    else if (address >= 0xC000 && address <= 0xDFFF) // <== bank 1 is starting at 0xC000 instead of 0xD000
    {
        return m_bank1[address - 0xD000];
    }

Ooh. Nice catch.
As you pointed out this doesn't cause any issues, but I'll probably get in there and fix this next time I get a chance.


[MaterializedView] Generate MaterializedView Full DDL SQL for ShowCreateTableStmt and ShowMaterializedViewStatement

What type of PR is this：

[ ] bug
[x] feature
[ ] enhancement
[ ] refactor
[ ] others

Which issues of this PR fixes ：

Fixes #8396
Problem Summary(Required) ：

1 show full ddl_sql for new MaterializedView

There are a lot of UTs that may need to be fixed.

There are a lot of UTs that may need t

There are a lot of UTs that may need to be fixed.

yes , i'll check it

toSql is an obsolete interface and cannot be used in actual functional code. Relevant code can be moved into AST2SQL

[FE PR Coverage check]
:heart_eyes: pass : 57 / 65 (87.69%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/service/FrontendServiceImpl.java
0
4
00.00%

:large_blue_circle:
com/starrocks/catalog/ExpressionRangePartitionInfo.java
20
23
86.96%

:large_blue_circle:
com/starrocks/server/GlobalStateMgr.java
37
38
97.37%

[FE PR Coverage check]
:heart_eyes: pass : 55 / 62 (88.71%)
file detail

path
covered line
new line
coverage

:large_blue_circle:
com/starrocks/service/FrontendServiceImpl.java
0
4
00.00%

:large_blue_circle:
com/starrocks/catalog/ExpressionRangePartitionInfo.java
20
23
86.96%

:large_blue_circle:
com/starrocks/server/GlobalStateMgr.java
35
35
100.00%

run starrocks_fe_unittest

run starrocks_fe_unittest

run starrocks_fe_unittest

run starrocks_fe_unittest

run starrocks_fe_unittest

run starrocks_admit_test


Add bullet about needing Windows Sonic enabled

While the tutorial mentions the need to enable Windows Sonic for Headphones on your developer PC, this condensed version of the instructions was missing that point. Added a bullet here that lists it as a requirement to get going.

Docs Build status updates of commit 6b3be58:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

mixed-reality-docs/spatial-sound-in-unity.md
:white_check_mark:Succeeded
View

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


CUDA Fail in Tensorflow Inference on Jetson TX2

Hi,
I am getting CUDA fail error for model inference on Jetson TX2 aarch64. I have built the TF source (Version 1.3) for python 3.5 from this github repo:
https://github.com/jetsonhacks/installTensorFlowTX2

Ubuntu 16.04
Bazel 0.5.2
CUDA 8
cuDNN 6.

The relevant discussion on NVIDIA dev forum directed me to post this here:
https://devtalk.nvidia.com/default/topic/1029256/jetson-tx2/cuda-fail-when-running-tensorflow-inference/post/5236860/
TF does work for smaller sized models, but for larger sized models the inference fails. I appreciate if you can please take look at this.

Thank you for your post. We noticed you have not filled out the following field in the issue template. Could you update them if they are relevant in your case, or leave them as N/A? Thanks.
Have I written custom code
OS Platform and Distribution
TensorFlow installed from
TensorFlow version
Bazel version
CUDA/cuDNN version
GPU model and memory
Exact command to reproduce

Hi, are you able to create a smaller repro script? We likely won't be able to debug this otherwise. Also, could you post the error message you receive and any other relevant information?

Actually, this may be related to #15075. Regardless, we don't have the ability to support or debug Jetson TX2 issues, so I'm marking contributions welcome.

hi pvaezi , I just met the same problem when I trying to use Inception v3 to classify image, which is a tutorial in TensorFlow repository, i flashed my TX2 with jetpack 3.1, and cuda 8.0, cudnn 6, I can train cifar10 so I think it is not the environment problem, so have you solve this problem? waiting for your response.

Hi @pvaezi! Is this issue still valid ?


FeedAHelp: Custom Generic Spinner

The Custom Generic Spinner is a user interface (UI) component designed to enhance the user experience of the FeedAHelp web application. The spinner will be used to indicate loading, processing, or waiting states during various interactions within the application.
Functional Requirements:

Display and Animation:
The spinner should display a visually appealing and engaging animation that indicates activity or loading status to the user.

Customizability:
The spinner should be customisable in terms of size, color, and animation style to align with the overall design and branding of the FeedAHelp application.

Responsive Design:
The spinner should adapt to different screen sizes and orientations, ensuring a seamless experience across various devices and resolutions.

Accessibility:
The spinner should meet accessibility standards, including proper labeling, keyboard navigation, and compatibility with screen readers for users with disabilities.

Dynamic Loading States:
The spinner should dynamically appear and disappear based on the application's loading or processing states, triggered by asynchronous actions such as data retrieval or submission.

Example
https://uiverse.io/loaders

@RoksanaMou Please help to select the best one that matches with feedAHelp

according to primary color, we can fly with these
https://uiverse.io/S4tyendra/fast-frog-87
https://uiverse.io/JaydipPrajapati1910/white-newt-56
https://uiverse.io/Shoh2008/perfect-fireant-0

We have chosen:
Source code: https://uiverse.io/S4tyendra/fast-frog-87


Bm/org create

What does this PR do?
Adds the ability to create scratch org's.
In order to test this code please make sure to link the relevant PR from sfdx-core: bm/W-9805905
What issues does this PR fix or reference?
@W-9805905@

QA'd with core#483 linked
✅ :--help output
✅ : no parameters passed error message
❌  : beta:create -f config/project-scratch-def.json -d 1 returned the successful message, but then hung. We should add spinners and messages. I don't know why the command isn't returning.
❓ : in beta:create I notice a lot of A lifecycle event with the name deploySettingsViaFolder does not exist. An event must be registered before it can be emitted. and lots of other Lifecycle events being emitted that aren't emitted in toolbelt with --dev-debug
❌ : adding
        "invalid":{
            "a":true
        },

in the config's "settings" resulted in Failed to create scratchOrg instead of A scratch org was created with username<EMAIL_ADDRESS>but the settings failed to deploy from toolbelt
✅ : enables features
❌ : with
        "caseSettings": {
            "systemUserEmail"<EMAIL_ADDRESS>            "enableEmailToCase": true
        }

as a "settings" in the config
toolbelt returned the above error message, while beta:create hung without output
❌ :
 ➜  sfdx force:org:beta:create -f config/project-scratch-def.json -d 1 --clientid 123
OAuth client secret of personal connected app?: ***
ERROR running force:org:beta:create:  Failed to create scratchOrg
➜  dreamhouse-lwc git:(main)  hub:(DevHub<EMAIL_ADDRESS> ➜  sfdx force:org:create  -f config/project-scratch-def.json --durationdays=1 --clientid 123
OAuth client secret of personal connected app?: ***
ERROR running force:org:create:  Invalid connected application consumer key provided.

with a secret of "abc"
✅ : --type scratch works

QA'd with core#483 linked
✅ :--help output ✅ : no parameters passed error message ❌ : beta:create -f config/project-scratch-def.json -d 1 returned the successful message, but then hung. We should add spinners and messages. I don't know why the command isn't returning. ❓ : in beta:create I notice a lot of A lifecycle event with the name deploySettingsViaFolder does not exist. An event must be registered before it can be emitted. and lots of other Lifecycle events being emitted that aren't emitted in toolbelt with --dev-debug ❌ : adding
        "invalid":{
            "a":true
        },

in the config's "settings" resulted in Failed to create scratchOrg instead of A scratch org was created with username<EMAIL_ADDRESS>but the settings failed to deploy from toolbelt ✅ : enables features ❌ : with
        "caseSettings": {
            "systemUserEmail"<EMAIL_ADDRESS>            "enableEmailToCase": true
        }

as a "settings" in the config toolbelt returned the above error message, while beta:create hung without output ❌ :
 ➜  sfdx force:org:beta:create -f config/project-scratch-def.json -d 1 --clientid 123
OAuth client secret of personal connected app?: ***
ERROR running force:org:beta:create:  Failed to create scratchOrg
➜  dreamhouse-lwc git:(main)  hub:(DevHub<EMAIL_ADDRESS> ➜  sfdx force:org:create  -f config/project-scratch-def.json --durationdays=1 --clientid 123
OAuth client secret of personal connected app?: ***
ERROR running force:org:create:  Invalid connected application consumer key provided.

with a secret of "abc"
✅ : --type scratch works ✅ :--durationdays works correctly ❓ ✅ : --nonamespace seems to be working - I'm not familiar with testing it ❓ ✅ : --noancestors seems to be working - I'm not familiar with testing it
takeaways

command hanging
error messages

❌ : beta:create -f config/project-scratch-def.json -d 1 returned the successful message, but then hung. We should add spinners and messages. I don't know why the command isn't returning.
✅  Fixed by clearing the a timeout recently added to the deploy loop
❓ : in beta:create I notice a lot of A lifecycle event with the name deploySettingsViaFolder does not exist. An event must be registered before it can be emitted. and lots of other Lifecycle events being emitted that aren't
✅  Unused lifecycle event have been removed we can add them later as needed
✅ Invalid setting throw A scratch org was created with username<EMAIL_ADDRESS>but the settings failed to deploy this was caused by a try/catch that was preventing errors from inside the lib to bubble up.
✅  Invalid connected application consumer key provided error now displays with invalid input this was also caused by a topmost try/catch catching all the errors from inside the lib, now they bubble up properly

✅ : beta:create command returns
✅ : fixes fs.rm deprecation warning
✅ : failed to deploy settings errors correctly
✅ : --clientid error message
✅ : --json on errors
❌ : --json on successful signup is missing a toplevel orgId property
❌ : the code references definitionjson flag, which was removed

definitionjson
✅ : --json added orgId to the root object response
✅: removed references to definitionjson

✅ : --json output


Is possible to keep unused variables?

Hi! I'm using pystache from yesterday to create LaTeX tables with some results. It works very well but I have a doubt. Is there a posibility that the renderer keep the unused variables in the output instead of make it empty?
For example:
* {{tag1}}
* {{tag2}}

{ "tag1" : 2 }

Them produce this output
* 2
*

It could be produce this output instead? In this case, how could I do that?
* 2
* {{tag2}}

Thank you!

It is easy!
You only have to insert
{ "tag1" : 2,
"tag2" : "{{tag2}}"
}


Issue 34, 35

Python 3 compatibility issue.

Thanks. GIve me a couple of days, I will go through this and comment/merge. Currently travelling so can't review properly.

Thanks, @darxtrix


Update CI RBENV to match production

This updates the CI build Ruby version to the same in production. :sparkles:

:+1:


Generic 'response' method gone.

Apologies for putting this here, not stackoverflow, but I figure since it's directly related to the GM this is better.
I've managed to figure out that Request is now DataRequest and fixed things accordingly, but the generic response method seems to be gone.  I can't figure out what the new name is.  Things like responseJSON are still working.
What's the new name?

Hi! The name is still responsebut it's signature has changed, akin to how the the serialized responses like responseJSON's closure changed to having only one argument. It's now using a single argument in the closure, DefaultDataResponse for DataRequest:
/// Used to store all data associated with an non-serialized response of a data or upload request.
public struct DefaultDataResponse {
    /// The URL request sent to the server.
    public let request: URLRequest?

    /// The server's response to the URL request.
    public let response: HTTPURLResponse?

    /// The data returned by the server.
    public let data: Data?

    /// The error encountered while executing or validating the request.
    public let error: Error?
}

You can use it like this :
Alamofire.request(url).response { response in
    if let error = response.error {
        print("ERROR: \(error)")
        print("REQUEST: \(response.request)")
        print("RESPONSE: \(response.response)")
    } else {
        // Do your magic here
    }
}

Thanks, that's exactly what I needed!


mysql batch insert id property value not expected

MyBatis version
3.5.14-SNAPSHOT and before
Database vendor and version
mysql server：5.7
mysql-connector-j：8.0.32
Test case or example project
test case pull request
Steps to reproduce

create mysql database with name of test
run test cases of test cases

Expected result
after batch insert, id list expected to be ：1,2,3,4,5
Actual result
after batch insert, id list is： 5,6,7,8,9
cause:
mysql driver only get  one last insert id and increase other ids in memory base on auto increment step

solution
though this is not a regular usage, but I still think mybatis should handle this.  the following pseudocod show my thinking：
BatchExecutor.doUpdate

Jdbc3KeyGenerator#KeyAssigner.assign

I solved this issue on my local machine but just rough code, if the solution above is acceptable, I'd like to perfect it and contribute.

@harawata could you please review my solution ? I'd like to contribute ! ^^

This is a very dangerous change - you are basically ignoring the change in the database. So the value in the input object does not match the value in the database. But the value is still in the database, so the value in the input object is essentially a lie.
Bottom line - if you configure identity columns, you must not set their values on input. That's the way identity columns work.

@jeffgbutler thanks for your quick reply.

I'm not ignoring the changed in the database. considering the changes in BatchExecutor，if input value is not null, then input value must matches database value because input value is inserted,  if input value is null, then use generate keys , also matches.
I also don't think this is a BUG，but the result is  confusing and not expected if programmers use mybatis this way. If the solution is not appropriate, how about log a warn message or thow exception to let programmers know what happened?

This change is trying to work around an obviously incorrect way of using MyBatis. There would be no issue if the insert statement didn't include the identity column - which is the proper way to handle identity columns in MyBatis.
There are likely corner cases of issues that could be raised by this change. I would prefer instead that we encourage users to correctly configure and use MyBatis. I will also say that this is the way MyBatis has worked since the beginning. I cannot remember a time when there was an issue with this other than helping users to correctly configure insert statements.
If you think some documentation updates would be helpful, then please feel free to submit a PR for a usage note in the docs. But I would not support making a code change like this in MyBatis.

Hello @wsliliang ,
I don't think it is a good idea, either.
It is the driver's responsibility to return the generated keys and MyBatis should not assume any particular usage.
Not many drivers support key generation in batch operation, actually.
And, if you ask me, MySQL driver should not pretend to support it because it is not supported in the protocol.
Anyway, if you use it, it is your responsibility to use it properly.
p.s.
Please do not use images for posting code.
Developers should avoid images because images are not copiable nor searchable.

@jeffgbutler @harawata thank you very much for your replies and advices, I'd like to submit a PR for a usage note in the docs.
@harawata I think this is a bug of MySQL driver hahaha.

Hi @wsliliang ,
We only write the essential information in the doc to keep it short, so it might be better to use the wiki page to write a note for a particular usage.
https://github.com/mybatis/mybatis-3/wiki/FAQ#how-can-i-retrieve-the-value-of-an-auto-generated-key
I think you can edit the page directly, but if not, please post the note here and I'll edit the page.

hi @harawata ok，I'll try

hi @harawata
I edited the page, could you review it ? I added the following line:
Important: before insert,DO NOT set key property value of the parameter object when use generated keys.
by the way, I still think we should log a warn message to tell developers the wrong usage if the id value is set before insert and does not equals the generated one ^^

Thank you, but I rewrote it to a generic advice.

Note that not many DB/drivers support key generation in batch operation or with multi-row insert syntax. Please refer to the DB/drivers' documentation for the details.

The main problem with your test case is that useGeneratedKeys is used with batch operation; a scenario that is not (properly) supported by the driver.


Doctrine Filters - regitration in NEON config

A follow up on this nette forum discussion: https://forum.nette.org/cs/31618-nettrine-extensions-neaplikuje-se-filtr
The post mentioned it is not yet implemented and I was unable to find it in master branch code.
If there is a demand, I would be willing to make a PR - I have too much free time on my hands anyways with the current situation.

🏃 go for that! :-)

orm:
	configuration:
		filters:
			softdeleteable:
				class: Gedmo\SoftDeleteable\Filter\SoftDeleteableFilter
				enabled: true

The proposed syntax sound good to you @f3l1x ?

Sure. Do you even need to disable it? I mean, you don't have to register it at all. WDYT?

I think the idea is the other way around. You might want to register it but not enable it straight away. And enable it on a case by case basis in the code. This syntax would be a shortcut to enable it straight away for all cases.

Oh, I see. Good point. Agree with syntax.


Update Blog “biryani”

Automatically generated by Netlify CMS

👷 Deploy Preview for kidskingdom processing.

Name
Link

🔨 Latest commit
d2616c7ea59a14a54ef2504452dabc028fe26105

🔍 Latest deploy log
https://app.netlify.com/sites/kidskingdom/deploys/63b7e57f0af01b000875ed9c


sushi-fox-eth

sushiswap's FOX-ETH dual farming

Fetch the newest version of the addressbook. It worked for me


Sprites can go through walls when thrown

Expected Behavior
Sprites get blocked by the wall
Actual Behavior
The Sprites go through the wall and up until it reaches ground.
Steps to Reproduce the Problem

Throw a Sprite at a wall.

Specifications

Version: v2 Alpha
Browser: Chrome 86
Operating System: Windows 10

Fixed in v3 alpha.


Var completion

dim processed ' as String not in completion
dim tw : set  doesn't offer completion

Array : dim arr() dim arr2(6)

dim variablewithspacesuffix

sub myTestSub2() : end Sub


Implement EndPointWatcher.

@alainjobart @sougou

@alainjobart
Please review the changes.

One tiny comment, LGTM otherwise :)


Variables support

Fixes #100

Please ignore changes in .github folder, I don't want to extract them to a separate branch.


Not active in Office Extention

I use the Office Viewer to open the MarkDown file, but the extension not work.

Version:1.55.2
OS:Windows_NT x64 10.0.19041


Lru caching

All Submissions:

[ ] Have you followed the guidelines stated in CONTRIBUTING.md file?
[ ] Have you checked to ensure there aren't any other open Pull Requests for the desired changed?

Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[X] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

New Feature Submission:

[ ] Does your submission pass the tests?
[ ] Have you linted your code locally prior to submission?

Changes To Core Features:

[X] Have you added an explanation of what your changes do and why you'd like us to include them?
[X] Have you written new tests for your core changes, as applicable?
[ ] Have you successfully ran tests with your changes locally?

After these steps, you're ready to open a pull request.
a. Give a descriptive title to your PR.
Addition of LRU Caching

b. Describe your changes.
 LRU Caching using third party libraries and adding the associated test case for it .

c. Put `closes #XXXX` in your comment to auto-close the issue that your PR fixes (if such).
Fixes: #3021

@ElijahAhianyo  I accidently committed in the same branch . I have changed only state.py and test_state.py .

This PR is removing upload.py when it shouldn't.
We won't be able to merge it until the changes to upload.py are removed from the PR.

@Lendemor Just a demo PR, need not be merged

I'll be closing this PR if it doesn't need to be merged 👍


Some images refuse to load in the viewer mode, others are fine

I can provide a GIF of a screen capture I took to showcase the issue. Please ignore the texture of the GIF due to the quality being reduced. As you can see, the first image, upon clicking it, refuses to open in the 'normal' mode, whereas the second image opens up just fine and as desired.
I've closed and reopened Obsidian. Didn't fix it. I've also removed/uninstalled the plugin, and re-installed, and the issue still remains.
Also, see how when the first image fails to display properly, it highlights the file in red? If I right click that with 'open link', it will show me the image in isolation, and then if I click it, it lets me view it properly. But why can't I do that from the beginning?
GIF of issue: https://s9.gifyu.com/images/SUkHX.gif

@wuuulll It seems to be a conflict issue with the theme's image zoom feature. Can you provide your theme name? Or you can try to use 'Style Setting' plugin to disable theme's image zoom feature.


Display GH stars with projects

Needs a little bit of CSS help
@tschuy r?

Alright, I won't be so lazy then.

@tschuy You're going to need to drop the DB to repopulate it with stars data anyway. Nonetheless, here is the new migration.

I'll just manually add the column and give it a default value then.

.gh-stars {
  white-space: nowrap;
}

Looks good to me save that CSS. You can just nowrap it to make sure it's always on one line.

Fixed CSS and force pushed.

+1 looks good to me, gimme a sec to add the column and then you can merge

Sweet, merging