Add support for dependency locking to source dependencies

Expected Behavior
Currently, one of the "source dependencies" are listed as the only limitation of dependency locking.
Current Behavior (optional)
No response
Context
We've only recently started using Gradle. We use source dependencies, because the language plugin we're using doesn't provide support for publishing artifacts to repositories and resolving dependencies from there. This is mostly because the compilers we are using are not really built for binary integration.
For direct dependencies we use strict fixed versions, so this gives us some control. This doesn't affect transitive dependencies though. I can't really see a real alternative to locking here, aside from specifying dependency constraints on each and every dependency in the build. This could get pretty unwieldy.

Thank you for your interest in Gradle!
This feature request is in the backlog of the relevant team, but this area of Gradle is currently not in focus. It might take a while before it gets implemented.

I'm not sure whether this is a major thing or just requires some touch ups here and there. If someone could hold my hand a bit, I'd be open to working on it.

Hi @tudortimi,
Thanks for the offer to help.  This particular feature isn't under active development and never really reached full maturity.
I don't know the full scope of what would need to change, but it would be deep in dependency-management.
IIRC, the reason that dependency locking doesn't apply to source dependencies is that source dependencies appear to Gradle as project dependencies instead of external dependencies.
Since this isn't an active area, I can't offer more guidance than that.
As an alternative to source dependencies... since your toolchain doesn't really support building binaries, you could consider just assembling all of the separate repos into a large composite build and manage which tags get checked out outside of Gradle.

@big-guy I use source dependencies to consume separate libraries and I use Gradle exactly for figuring out what has to get checked out. I was thinking of updating my plugins for producing artifacts, which merely consist of the sources and some metadata. This way it would look like "binaries" for Gradle, but they could be used to do source integration.


Center on screen on OSX

Can you add
objc_msgSend(m_window, "center"_sel);
after line 689 to center the screen on OSX?

I had the same problem too. Here's the PR #472


doesn't install with ocaml-5

camltc >= 0.9.8 -> ocaml < 5.0

this is blocking for the installation of the library dokeysto_camltc, relying on it

also blocks the packages linwrap and svmwrap

Apparently the git HEAD compiles under ocaml-5, so this is just a matter of releasing a new version in opam.

please issue a new tag, so that the opam package can be updated

or, the ocaml version constraint in the opam package is wrong? (ocaml < 5.0)

My error.
It compiles, but then at link time it does not work anymore.
/usr/bin/ld: /home/fbr/.opam/5.0.0/lib/camltc/libcamltc_stubs.a(otc_wrapper.o): in function `alloc_bdb':
/home/fbr/.opam/5.0.0/.opam-switch/build/camltc.0.9.8/_build/default/src/otc_wrapper.c:67: undefined reference to `alloc_custom'
/usr/bin/ld: /home/fbr/.opam/5.0.0/lib/camltc/libcamltc_stubs.a(otc_wrapper.o): in function `alloc_bdbcur':
/home/fbr/.opam/5.0.0/.opam-switch/build/camltc.0.9.8/_build/default/src/otc_wrapper.c:74: undefined reference to `alloc_custom'
/usr/bin/ld: /home/fbr/.opam/5.0.0/lib/camltc/libcamltc_stubs.a(otc_wrapper.o): in function `bdb_key_count':
/home/fbr/.opam/5.0.0/.opam-switch/build/camltc.0.9.8/_build/default/src/otc_wrapper.c:621: undefined reference to `copy_int64'
collect2: error: ld returned 1 exit status
File "caml_startup", line 1:
Error: Error during linking (exit code 1)

I'm completely out of the ocaml eco-system :( but I had a look and made a pull request: #52
$> ```
make test
dune build @runtest
git_revision: "heads/master-0-g0117cb1-dirty"
compile_time: "Sat 07 Jan 2023 16:03:55 CET"
machine: "x86_64 GNU/Linux"
major: 0
minor: 9
patch: 8
dependencies:
Incubaid's tokyocabinet fork: 6d4cc70ac5e7580aacb40349a165ed65f9c9f98c ../../../src/3rd-party/tokyocabinet (1.4.48-20-g6d4cc70)
.............a:[
]
................l1: [('he','pluto');('hello','world');('hi','mars')]
l2: [('he','pluto');('hello','world');('hi','mars')]
l3: [('ha','lo');('he','pluto');('hello','world')]
l4: [('he','pluto');('hello','world')]
l5: [('hello','world')]
l6: [('ha','lo')]
l7: []
l8: [('ha','lo');('he','pluto')]
l9: [('ha','lo')]
l10: [('he','pluto');('hello','world');('hi','mars')]
.l1: [('nsN_VOL','foo1');('nsN_VOL2','foo2')]
.hi l1: [('faa','boo');('foo','bar')]
.l1:[('key0','value0');('key1','value1');('key2','value2')]
...
Ran: 35 tests in: 0.03 seconds.
OK
VOLhello worldVOLhi mars

would that suffice ?

If it can compile and install with ocaml-5.0.0, then yes it is enough to tag a new release.
Ping me and I'll update the opam package, if you need.
Thanks a lot!


Missing Column.php?

I just downloaded this package and noticed that there is no src/XBase/Column.php file, but it is referenced in the test-memory.php script and was in previous releases.  Is there a new path to Column.php?
Thanks in advance!

If you need example how to work with library you should look at the files in the tests folder. XBase\Column class replaced by XBase\Column\DbaseColumn.


Can someone help me read annotations?

Mostly hoping @noahdietz can help when he is back on Thursday.
I can not for the life of me read the google.api.http annotation properly. This is not really the fault of the linter, it is the fault of the fact that there are 2 protoreflect packages (and we use the one that has no search ranking), at least 4 separate official descriptor packages, a proto and protobuf package, and none of these actually work together in anything remotely approaching a sane way.
I committed the aip-131-annotations branch, which is in a non-working state. I spent all day trying to just read one proto extention and I am asking for help, because between the utter lack of documentation and the fact that we overloaded every term six ways from Sunday, I really have no idea how to do it.

Hi Luke, I am copying an example from (Google internal) Code Search (link):
opts := m.Options().(*dpb.MethodOptions)
v, err := proto.GetExtension(opts, apb.E_Http)
if err != nil {
  continue
}
r := proto.Clone(v.(proto.Message)).(*apb.HttpRule)

where m is a MethodDescriptor and r is a HttpRule message in the http.proto.

I found this internally, but I do not know what dpb is or how to import it. (I think I figured out most of the others.)

Maybe this one (it is golang protobuf v2) for the
descriptor proto :https://godoc.org/google.golang.org/protobuf/types/descriptorpb

That one compiles at least, but populates err with:
"proto: not an extendable proto.Message"

I am starting to suspect after reading things like this issue that this may not be able to be done with Google's protoreflect right now.
I am taking an Options() message, unlike the OP on that bug, but it still clearly does not work, and it is telling when one of the authors suggests that there is not yet a (public) way to do this other than to use a third-party library.

Hi Luke, I figured out how to do that -- see this example. Note that we need to regenerate Go code for annotations.proto using protoc-gen-go V2 -- see this script. The go-genproto currently is generated by the V1 plugin, which causes most of troubles when trying to integrate it to Golang protobuf V2.
Now in our linter, we have two options:

Send a PR to regenerate go-genproto using protoc-gen-go V2 (e.g., a new v2 branch) or even create a go-genproto-v2 repo;
Generate those go codes in our repo, and migrate to go-genproto v2 later.

Just my two cents :)

Generate those go codes in our repo, and migrate to go-genproto v2 later.

Yeah the relevant Go proto v2 bindings could be vendored in this repo, that would keep import paths the same and make removing it later easier. Also makes go.mod still relevant. We did this in the gapic-generator-go while our extension definitions were on a branch waiting to be merged. And considering these extension definitions don't change, maintenance would be low.

Send a PR to regenerate go-genproto using protoc-gen-go V2

Talk to deklerk@, he maintains that repo and would know best how to proceed with a migration. Might take some time, thus I think 2 is the best stop gap while 1 is worked on.

or even create a go-genproto-v2 repo

I don't think we want more Go protobuf repos. Again, talk to deklerk@ about the strategy here, he owns these things.

@neild was able to get me going on the other issue. Thanks all.


Adapt to  CUDA.jl v3

Codecov Report

Merging #52 (74ed78b) into master (9e4d734) will decrease coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master      #52      +/-   ##
==========================================
- Coverage   85.32%   85.30%   -0.02%
==========================================
  Files          22       21       -1
  Lines        1015     1014       -1
==========================================
- Hits          866      865       -1
  Misses        149      149

Impacted Files
Coverage Δ

src/rep/mesh.jl
91.86% <100.00%> (ø)

src/transforms/mesh_func.jl
89.25% <100.00%> (ø)

src/datasets/Dataset.jl

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 9e4d734...74ed78b. Read the comment docs.

@DhairyaLGandhi Is there any badge link for gpu ci?

[![Build status](https://badge.buildkite.com/40bca770b8b1183fa75cb172d706bc71d5cb5ed960cdcb6d2a.svg)](https://buildkite.com/julialang/flux3d-dot-jl)


Add an option to call change() on the hidden input

I needed to store the signature in localStorage.
The onDrawEnd event is not quite right as the input value is only updated after the event is triggered, so I suggest this change to call $(settings.output, context).change() in stopDrawing().

Would it make more sense to have an onChange() method instead of triggering the change event on the <input>?


Using containerd (and not Docker) with BinderHub

Docker is deprecated as a container runtime in Kubernetes 1.20. For those who are switching to a different container runtime, we need a different solution for running repo2docker.
There are some documentation on using Docker-in-Docker, but from what I can tell it doesn't work with containerd as the container runtime (at least, not with the current helm chart, which mounts dockersocket-host into the dind pod).
I've tested on Kubernetes 1.20.0 with containerd 1.4.3 and no Docker, and either the build pod (without DinD) or the DinD pod (with DinD) are not ready because Kubernetes can't mount /var/run/docker.sock into the pod.
Is there a particular reason why DinD needs access to the host docker.sock? Can DinD run in containerd instead of Docker? I can do some testing if needed.

I wouldn't call this an enhancement, but I accidentally opened the issue with the label and now I can't remove it. Oh well.

There are two main components in BinderHub:

The JupyterHub Helm chart which runs on a standard Kubernetes cluster
repo2docker which uses Docker for building images, so it currently requires access to the host Docker Daemon (Docker-in-Docker is just a way to expose the host's Docker daemon inside a Docker container, it's not full virtualisation). There's some work on making repo2docker agnostic to the container engine: https://github.com/jupyterhub/repo2docker/pull/848, any feedback or suggestions are welcome!

Sorry, the pod that didn't work was actually not dind, it was the image cleaner. DinD seems to sort of work in containerd (the build was able to start), but there seems to be no network connectivity in the image being built. I'll investigate a bit later. It would be nice to make repo2docker build-system-agnostic, but I'm not sure how hard that would be (or what kind of non-docker-based container build systems are out there)

@rkevin-arch :heart: :tada: thank you for exploring what the issues coming from k8s deprecating docker as a CRI!

Experiencing some really really weird stuff in the build container. I was able to manually run commands in the docker container being built by using kubectl exec to get a shell in the dind container, then using docker -H /run/dind/docker.sock to find the container currently being built and exec into it. Both networking and DNS seem to work properly, which is really weird. This also happened:
root@1adf42268642:/# curl http://archive.ubuntu.com -v
* Rebuilt URL to: http://archive.ubuntu.com/
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to archive.ubuntu.com (<IP_ADDRESS>) port 80 (#0)
> GET / HTTP/1.1
> Host: archive.ubuntu.com
> User-Agent: curl/7.58.0
> Accept: */*
>
< HTTP/1.1 200 OK
< Date: Sun, 13 Dec 2020 09:01:26 GMT
< Server: Apache/2.4.29 (Ubuntu)
< Vary: Accept-Encoding
< Content-Length: 696
< Content-Type: text/html;charset=UTF-8
<
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

  <title>Index of /</title>

Index of /

	Name	Last modified	Size

	ubuntu/	2020-12-13 08:25  	  -

<address>Apache/2.4.29 (Ubuntu) Server at archive.ubuntu.com Port 80</address>

* Connection #0 to host archive.ubuntu.com left intact
root@1adf42268642:/# curl -v <IP_ADDRESS>:80
* Rebuilt URL to: <IP_ADDRESS>:80/
*   Trying <IP_ADDRESS>...
* TCP_NODELAY set
* Connected to <IP_ADDRESS> (<IP_ADDRESS>) port 80 (#0)
> GET / HTTP/1.1
> Host: <IP_ADDRESS>
> User-Agent: curl/7.58.0
> Accept: */*
>
^C

Basically if I curl archive.ubuntu.com, it resolves to <IP_ADDRESS> and was able to access the webpage. If I curl <IP_ADDRESS>:80 inside the build container, it hangs forever. This makes no sense to me, and I confirmed in the dind pod / host / my own machine that curl -v <IP_ADDRESS>:80 should work as well. It's only in the currently building Docker container that it has this issue.
The exact output repo2docker gives (after hanging for a very long time):
Step 3/72 : RUN apt-get -qq update &&     apt-get -qq install--yes --no-install-recommends locales > /dev/null &&     apt-get -qq purge &&     apt-get -qq clean &&     rm -rf /var/lib/apt/lists/*
 ---> Running in 1adf42268642
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/bionic/InRelease  Connection failed [IP: <IP_ADDRESS> 80]
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/bionic-updates/InRelease  Connection failed [IP: <IP_ADDRESS> 80]
W: Failed to fetch http://archive.ubuntu.com/ubuntu/dists/bionic-backports/InRelease  Connection failed [IP: <IP_ADDRESS> 80]
W: Failed to fetch http://security.ubuntu.com/ubuntu/dists/bionic-security/InRelease  Connection failed [IP: <IP_ADDRESS> 80]
W: Some index files failed to download. They have been ignored, or old ones used instead.
E: Package 'locales' has no installation candidate

I'll dig around more and see if there's anything I can find. If we can get dind working in containerd, it would be a great temporary solution until repo2docker stops relying on docker build

I've gotten binder to work with dind on top of containerd. Building and spawning images work, and I tested Thebe with it as well.
I did notice because dind and host containerd do not share an image cache, the image has to be pushed to the registry and repulled using the actual container runtime on the same host, which can be a bit slow during the first spawn. Other than that, I don't feel any differences using this binderhub and one running on top of docker (it's running at https://binder.galaxy.rkevin.dev, feel free to try it if you want).
I think it's nice to add the following to the documentation:
If you are using containerd / CRI-O / some container runtime other than Docker, you must do the following:

Enable DinD by setting dind.enabled.
Depending on your network configuration, you should set a MTU smaller than 1500 for the DinD daemon using dind.daemonset.extraArgs. If your apt update during builds just hangs as if the remote server is not responding, definitely double check this. (I'm using Calico as the CNI plugin, and I needed to set a smaller MTU.)
Disable the image cleaner entirely, or set imageCleaner.host.enabled to be false.

Relevant parts of my helm values:
dind:
  enabled: true
  daemonset:
    image:
      name: docker
      tag: 19.03.14-dind
    extraArgs:
      - --mtu
      - "1400"

imageCleaner:
  host:
    enabled: false

@rkevin-arch wieee thanks for your work on this! From a high level view, would it be reasonable to look for the following outcomes?
Outcomes aimed for

Documentation

About the docker CRI deprecation

Each k8s cluster use one CRI, such as docker or containerd. (Right?)
Docker CRI is deprecated in k8s 1.20 and won't be supported in k8s 1.22.

What a BinderHub maintainer needs to know

Case 1: BinderHub's image building has assumed docker as a CRI, and require configuration to work with containerd as a CRI.
Case 2: Code changes made us support both docker and containerd without adjustments, just ensure to use version >= X.

Code changes

Is there an intersection of docker / containerd functional configuration allowing us to support both without custom configuration?

Each k8s cluster use one CRI, such as docker or containerd. (Right?)
Pretty much, although I think you can mix and match different CRIs in one cluster (each node/kubelet uses one CRI, but for example windows nodes currently only has Docker as a CRI still)

I don't think anything needs to be changed in the binderhub helm chart. If you set dind and imageCleaner helm values like I mentioned above, the current helm chart works like a charm with no issues. However, the documentation should make it clear that you're still using docker under the hood, and you're running a full docker daemon in containerd in a privileged container to support binderhub. (k8s itself does not interact with the dind docker daemon at all, and it should not affect the host containerd).

I did notice because dind and host containerd do not share an image cache, the image has to be pushed to the registry and repulled using the actual container runtime on the same host, which can be a bit slow during the first spawn.

This is always the case when using DIND (and a reason not to have DIND turned on by default IIRC)

This is always the case when using DIND

Yeah that makes sense. Good to know!

(is containerd a full replacement for dockerd or does it only contain the bits needed to run images?)

I don't think containerd itself can build images. There seems to be multiple alternatives for building images, so if repo2docker can support one of them it would be nice (I'm not sure which one is better, though)

but it does make people's lives a bit harder if they put nasty things in their Dockerfiles (I think).

I actually thought this when I first found out about repo2docker, but from what I can tell there doesn't seem to be a way to break out of a container even if you control the Dockerfile. I've tried for a while and looked around, but pretty much all container breakouts (that aren't security bugs in Docker itself) rely on either the docker socket or a device in /dev being mounted inside the container, or if the container runs with elevated privileges to begin with. I don't think you can do any of these by controlling the Dockerfile. The worst you can do is to hog resources, which is a legit concern, but I don't think dind helps with that specifically.

If you enable dind you probably also want to add a separate partition to your nodes and use that partition to store images produced by dind.

Good to know! For our intended use case (it mostly powers Thebe with an image curated ourselves, and we won't be using it to spawn arbitrary images) it's not a big concern, but I think if you're adding documentation, this would definitely be a good thing to include.

https://github.com/jupyterhub/binderhub/issues/1318 is a discussion on generalising BinderHub to not rely on Kubernetes. Docker is mentioned as a target but other container engines are in scope.
Is there any action we need to take on this particular issue?


feat: hide ctas after successful submission

Some quality of life improvments:

set min height on floating banner
add timeout and slide up animation for banner
hide ctas using localstorage key after successful submission

lgtm


chore(main): release 4.1.1

:robot: I have created a release beep boop
4.1.1 (2023-08-21)
Miscellaneous

deps: bump discord.js from 14.12.1 to 14.13.0 (9839b98)

This PR was generated with Release Please. See documentation.

:robot: Release is at https://github.com/mariusbegby/cadence-discord-bot/releases/tag/v4.1.1 :sunflower:


Style branch

This seems to have some merge conflicts because we merged earlier pull request. If you have time to
solve the conflict we happily merge it 🙂

ops accidantly closed the issue xD

My bad, should be resolved now. Thanks!


Add localisation for Finnish

Add localisation for Finnish. This localisation matches Safari as well as the stylistic use of quotes in this extension.

ooh, thank you.


TypeError when running x64 instructions

Howdy,
Using any x64 register will result in the following crash:
irasm.rb:2841:in '+': no implicit conversion of nil into String (TypeError) from irasm.rb:2841:in 'modrmmodrm_results' from irasm.rb:2195:in 'modrmmodrm' from irasm.rb:60:in 'main' from irasm.rb:4073:in '<main>'
some examples:

inc byte [any x64 register]
add byte [any x64 register], al
add dword [any x64 register], al

This tool was only ever intended to support 32-bit (which I was unclear about in the description, I will update the README soon). I don't have any immediate plans for supporting 64-bit with this tool.
That said, it does generaly support a fallback to nasm for commands that it can't parse (it acts like nasm_shell). I will look into changing the parsing so it doesn't try to interpret 64-bit instructions as an error and just hand them off to nasm instead. You could also use nasm_shell in the meantime until then as well.

So like I said, I don't plan to "support" (by that I mean have redundancy) 64 bit instructions, it just doesn't give freakout errors when you use 64bit instructions.
Typically (hopefully) though, for well formed instructions, nasm and objdump will still attempt to do it's thing as the fall back and report the "official" machine code. I wouldn't trust it though, it's just better than an error+exit.
Sample output with new changes (obviously not perfect, but better):
irasm > inc byte [rax]
FE00                              inc    BYTE PTR [rax](Provided by Nasm)
irasm > add byte [rax], al
0000                              true           (Provided by Nasm)
irasm > add dword [rax], al
There was an error with your Assembly (or I couldn't parse it)
irasm > xor ebx, ebp
31EB                              xor    ebx,ebp
33DD                              xor    ebx,ebp  (The 'Other' ModR/M)
irasm > xor rbx, rbp
4831EB                            xor    rbx,rbp (Provided by Nasm)
irasm >


Import / Synchronise Settings via File

In my personal uses of this extension, I keep having to approach the board and attach a mouse and keyboard to it. However, with SSH access to the server a better idea would be for the extension to synchronise settings with a file.
When the user specifies a file, it could import a CSV that would read the settings into the extension storage, and maybe re-call the file every 5 minutes of operation to check for differences and reset.

What would also be a good idea is the ability to synchronise with an online file. For example, if I made a publicly sharable chromeboardConfig.json or such, I could give the tool a link and then the settings are synchronized with said file.
Due to the non-NPAPI nature of Chrome Extensions, this may actually be more achievable for the synchronisation aspect of the proposed change.

Constructing an API to utilise the idea of synchronization.
Project being developed here:
https://github.com/soup-bowl/Chromeboard-basestation


docs: remove New Website Blog

Fixes: #563
Changes:
removed the article https://apisix.apache.org/blog/2020/08/22/new-website

By the way, please fix the problem in the CI.
There are two ways to add a new commit or change the current unique commit message to a standard format.
eg. docs: remove New Website Blog

@KishaniKandasamy I've helped you adjust the message of commit. XD

@KishaniKandasamy I've helped you adjust the message of commit. XD

Sorry I missed that! Thnx a lot ;)


Regression in the Disable Tiling Option

Symptom
Adding Screen Number in the Disabling tiling tab does not disable it anymore
Expected behavior
Disable tiling on the specified screen after session restart
Environment

Distro: [Archlinux]
KWin version: [6.0.5]
Krohnkite version: [0.9.4]

Notes
It used to work on 0.9.2, but at the time I had KWin 6.0.4 and I don't have access to the old version of the script to see if the problem is with KWin or the script

I've changed 'number' to 'name' in description.

Dumb question is the something hidden or the one in System Settings because i used the one in System Settings and it didn't work.

Documentation article: Search a window parameters to filter, float etc.

Ok thank you for developing this script :)


error in Facebook Ads template

Dear developers, i have an issue trying out your Facebook Ads template:
when i open the Power BI file, i get an error "Expression.Error: The import Facebook Ads.Ads matches no exports. Did you miss a module reference?"
(screenshot in my Dropbox).
Any ideas, why it could be?

Hi, Thanks for your feedback!
I’ll look into this problem and do whatever needs to be done.
Michael

You need to install the Facebook Ads connector before the template will work.


Swift4.2

Hi @An1metall, thanks for the update. Really appreciate it.
However, I suggest adding the new program for swift 4.2 without deleting the program for swift 4.0.
You can use this article as reference https://www.hackingwithswift.com/example-code/language/how-to-check-the-swift-version-at-compile-time


No Continuous Speech Recognition Quickstart Sample Code?

Hello guys,
As you know the repository includes a STT quick sample code (JS Browser) : here
However, I am specifically looking for continous speech translation quickstart sample code. I could not find it anywhere else.
Normally, I am supposed to bind "recognizing, recognized, and canceled" events to get results on the textarea html, but it did not give any result though i tried the additional code below.
Things got too complicated for me .
Is there any way to transform the available 'onceshot stt' into 'continuous speech translation' sample?
var speechConfig = SpeechSDK.SpeechTranslationConfig.fromSubscription(subscriptionKey.value, serviceRegion.value);

        speechConfig.speechRecognitionLanguage = languageSourceOptions.value;
        let language = languageTargetOptions.value
        speechConfig.addTargetLanguage(language)

        var audioConfig  = SpeechSDK.AudioConfig.fromDefaultMicrophoneInput();;

        recognizer = new SpeechSDK.TranslationRecognizer(speechConfig, audioConfig);
        recognizer.recognized = (s, e) => {
          if (e.result.reason == ResultReason.RecognizedSpeech) {
              console.log(`TRANSLATED: Text=${e.result.text}`);
              phraseDiv.innerHTML += `TRANSLATED: Text=${e.result.text}`
          }
          else if (e.result.reason == ResultReason.NoMatch) {
              console.log("NOMATCH: Speech could not be translated.");
          }
      };
        recognizer.startContinuousRecognitionAsync();
      });

@cihanunlu Thanks for using Speech SDK, and writing this issue up. Please see this multi-scenario sample which encompasses continuous speech recognition and continuous translation scenarios, among others (callbacks set here, continuous speech recognition API called here, continuous translation code here)
Let us know if you're able to get that sample running.

I have tried to extract to code there and implement it into the sample (once-shot) speech trans. code  but it did not work. I did not actually understand to which the"applyCommonConfigurationTo" is bound with. Second of all, I could not implement the text area html (phrasediv) to the recognized callback to show the result on the page. :(

@cihanunlu First please, take the raw sample (here), and save it locally. Open the local file in your browser of choice, input your subscription key and region in the top fields, and then select the scenario you'd like to try. In your browser's dev tools, you can set breakpoints in the sample code to see where applyCommonConfigurationTo is called, and what the context is at that point.
Once you've confirmed the sample code works as intended, you can bit by bit change the code to match your intended use case, making sure the code performs as intended after each change.
Please let me know if that sample isn't working for you out of the box.

@cihanunlu First please, take the raw sample (here), and save it locally. Open the local file in your browser of choice, input your subscription key and region in the top fields, and then select the scenario you'd like to try. In your browser's dev tools, you can set breakpoints in the sample code to see where applyCommonConfigurationTo is called, and what the context is at that point.
Once you've confirmed the sample code works as intended, you can bit by bit change the code to match your intended use case, making sure the code performs as intended after each change.
Please let me know if that sample isn't working for you out of the box.

Thanks. After a long dedication, I managed to extract unnecessary scenarios out of the sample code.
But now there is another problem. I have customized and implemented the 'index.html' into a https server. It works fine but I want to use this in my web app. Therefore, I embedded this html using iframe tag.
The html frame appears normally but the functions (speech recognition) does not work when the html is displayed in iframe. When i open the frame in new tab, all functions work somehow.

@cihanunlu I'm not super well-versed on expected iframe behavior, but I wonder if the the speech sdk import is binding correctly to the global "window" instance in an iframe. You can find out by putting "console.log(window); console.log(SpeechSDK);" where you'd expect the functions to work, and making sure the SpeechSDK instance and window instance have the expected structure.
More generally, though, I'd recommend finding a way to integrate SpeechSDK functions directly into your specific web app, as that seems simpler now that you can see how continuous recognition works.
I'm closing this issue, as we've strayed for the original question of an extant continuous recognition sample in JS.


Fix wrong header guard being used

The header guard for this file should be SPROUT_RANGE_ALGORITHM_ANY_OF_EQUAL_HPP, not SPROUT_RANGE_ALGORITHM_ALL_OF_EQUAL_HPP. If /range/algorithm/all_of_equal.hpp is included then sprout::range::any_of_equal will not be available for use after.

Thank you!


honggfuzz fuzz dynamoRIO subprcess fail

hi,
I am trying to write a blackbox fuzz tool based on  honggfuzz and dynamoRIO, but it always crash as bellow:
Crash: saved as './SIGILL.PC.71124306.STACK.badbad0cfbc45e93.CODE.-6.ADDR.(nil).INSTR.pop____%rbx.2019-11-22.17:13:57.3720.fuzz'
Signal 2 (Interrupt) received, terminating
run the command, you will see it
honggfuzz -f /tmp/tmp -- ~/tools/fuzzer/dynamorio/7.1.0-1-build/bin64/drrun -- ~/workstation/compare-fuzzers/test  FILE

I didn't make any change to honggfuzz and dynamoRIO

I image that DynamoRIO is doing a lot of interesting tricks to make the code work, probably also testing some invalid instructions.
Maybe try to remove SIGILL from linux/trace.c (set .important = false for SIGILL) and see how it works.
Or, maybe try to compile honggfuzz for POSIX
OS=POSIX make clean all

This way, honggfuzz will not report handled sigtraps (this SIGILL is probably handled by DynamoRIO code0.
Alternatively, if you're trying to fuzz a black-box binary, maybe you can take a look at the qemu_mode/ directory, which is helping exactly with this.


SQLAlchemyFactory with foreign keys

Hi, I'm facing some trouble while creating factories that involve ForeignKeys in SQLAlchemy...
class EmailCategory(SoftDeleteMixin, BaseModal):

    __tablename__ = "email_categories"

    id = Column(Integer, primary_key=True)
    name = Column(String(255), unique=True, nullable=False)
    email_templates = relationship("EmailTemplate", back_populates="category")

class EmailTemplate(SoftDeleteMixin, BaseModal):

    __tablename__ = "email_templates"

    id = Column(Integer, primary_key=True)
    name = Column(String(255), unique=True, nullable=False)
    subject = Column(String(255), nullable=False)
    body = Column(Text, nullable=False)
    category_id = Column(
        Integer, ForeignKey("email_categories.id", ondelete="CASCADE"), nullable=False
    )
    category = relationship("EmailCategory", back_populates="email_templates")

class AsyncPersistenceHandler(AsyncPersistenceProtocol[T]):
    async def save(self, data: T) -> T:
        async with get_db_context() as session:
            session.add(data)
            await session.commit()

    async def save_many(self, data: List[T]) -> List[T]:
        async with get_db_context() as session:
            session.add_all(data)
            await session.commit()

class BaseFactory(SQLAlchemyFactory):
    """Base Faactory"""

    __is_base_factory__ = True
    __async_persistence__ = AsyncPersistenceHandler

    id = Ignore()
    deleted_at = None
    created_at = Use(lambda: datetime.now())

class EmailCategoryFactory(BaseFactory):
    """Factory for generating EmailCategory dummy data."""

    __model__ = EmailCategory
    name = Use(lambda: EmailCategoryFactory.__faker__.user_name())

class EmailTemplateFactory(BaseFactory):
    """Factory for generating EmailTemplate dummy data."""

    __model__ = EmailTemplate
    category = EmailCategoryFactory

async def _main():
    template = await EmailTemplateFactory.create_async()
    print(template)

if __name__ == "__main__":
    asyncio.run(_main())

When I try to create an EmailCategory model instance, I get an IntegrityError mentioning that the random integer assigned to foreign key field is not present in the table "email_categories" (which is expected). Right now I'm passing the foreign_key values manually, like this
    category = await EmailCategoryFactory.create_async()
    template = await EmailTemplateFactory.create_async(category_id=category.id)
    print(template)

Is there any other way to implement the same?

[!NOTE]
While we are open for sponsoring on GitHub Sponsors and
OpenCollective, we also utilize Polar.sh to engage in pledge-based sponsorship.
Check out all issues funded or available for funding on our Polar.sh dashboard

If you would like to see an issue prioritized, make a pledge towards it!
We receive the pledge once the issue is completed & verified
This, along with engagement in the community, helps us know which features are a priority to our users.

Hi @vickypalani, could you try adding adding __set_relationships__? Docs here. By default these, relationships are not set as these causes some issues with recursive relationships orginally.

@vickypalani I think the solution mentioned above should work. If not, feel free to reopen the issue.

Hi @adhtruong thanks for the response, @guacs sorry for not updating the status of the issue. I was able to resolve this after going through the documentation last week. This is how my factory looks right now,
class EmailTemplateFactory(BaseFactory):
    """Factory for generating EmailTemplate dummy data."""

    __model__ = EmailTemplate
    __set_relationships__ = True
    category = EmailCategoryFactory
    created_by = UserFactory


pg_comparator added

http://pgfoundry.org/projects/pg-comparator
pgComparator is a tool to compare possibly very big tables in different locations and report differences, with a network and time-efficient approach.

Looks good.


[Bug]: Exporting Intrastat report in fr-BE language gives error

Describe the issue
when exporting the intrastat report in the fr-BE language we get an error
"La légende Code pays/région origine est ambiguë entre plusieurs champs de la table Ligne de l’état de déclaration d’échanges de biens."
Expected behavior
should not error
Steps to reproduce
export an intrastat report in the fr-BE language
Additional context
there are 2 fields that have the same translation.
thereby system errors on setview
the field Country/Region of Payment Code has the wrong translation
in addition it would be better to do a getview(false) in codeunit 4810 IntrastatReportManagement line 631
then the view would use fieldnumbers and would not error on duplicate field names
I will provide a fix for a bug

[X] I will provide a fix for a bug

That sounds like a product defect! Unfortunately, this repository is only for extensibility requests for Dynamics 365 Business Central or pull requests towards the 1st party Business Central apps. We suggest that you open a support case or file a bug to ensure that all Business Central users benefit from your catch as soon as possible:
On premises - https://support.microsoft.com/en-us/supportforbusiness/productselection?sapId=93d37907-ad94-d591-22e9-593cfa09dd3f
Cloud – contact your partner, or if you are a partner open a support incident through Partner Center - https://partner.microsoft.com/en-us/pcv/dashboard/overview


added NETCDF_MPIEXEC option to CMake

Fixes #2960

@WardF this should probably go into the 4.9.3 release.

THis should be merged before #

This should be merged before #2964


How to obtain the filtered list once applied using the filter object property?

I have a filter object defined in my controller, i.e:
this._filter = {'type':'PREMUM', id:5657}

which is used in the html:
  <ui-select-choices repeat="item in multiSelect.items | filter:{name:$select.search}  | filter:multiSelect._filter | orderBy:'name' | limitTo: 200 track by item.name">

        </ui-select-choices>

This filter is dynamic and changes occasionally by the user, once the filter is applied I need to decide if the current selected items are valid to stay selected, to do so I need to have the filtered list.
I found that $select.items is the only property holding the filtered list
How I do I use it in my controller, or alternatively get an event or some other hook to the filtered list?
Thanks

I don't think you can access the filtered list from ui-select. You will need to manually apply your filter to your list of items. See angular docs: Using filters in controllers, services, and directives
I'd suggest you filter your items manually in your controller and then send the result to ui-select-choices and use it to fix your selected items.

Then what's the point in using the filter property in the ui-select if I need to manually apply the filter?
I've forked the project and emitted an event when list is filtered:
// See https://github.com/angular/angular.js/blob/v1.2.15/src/ng/directive/ngRepeat.js#L259
    $scope.$watchCollection(ctrl.parserResult.source, function(items,oldItems) {
      if (items === undefined || items === null) {
        // If the user specifies undefined or null => reset the collection
        // Special case: items can be undefined if the user did not initialized the collection on the scope
        // i.e $scope.addresses = [] is missing
        ctrl.items = [];
      } else {
        if (!angular.isArray(items)) {
          throw uiSelectMinErr('items', "Expected an array but got '{0}'.", items);
        } else {
          //Remove already selected items (ex: while searching)
          //TODO Should add a test
          ctrl.refreshItems(items);
          ctrl.ngModel.$modelValue = null; //Force scope model value and ngModel value to be out of sync to re-run formatters
          if(ctrl.search =="" && items != oldItems) { //don't broadcast the event while searching
              $scope.$emit('uis:filter', items);
          }
        }
      }
    });

https://github.com/Avien/ui-select/tree/v0.13.4

I would guess most people don't need to access the filtered list at any point.
Glad to see you got it sorted though.

I need the filtered list to validate the already selected options (the ng-model)
If they are not in the new filtered list they should be removed
I would expect this behavior to already be implemented in the ui-select , when filtering , but its not

Filtering in the refresh method execution gives the user the most power for filtering choices. Any filter applied in the template here likely creates a loss of information, since one is in a child $scope.
I'm not sure if there is a good solution here excepting what was recommended.


Polymer.dom is not a function in Firefox

Hi,
I am using "angular-sortablejs": "^1.3.2" in my angular 2 project.
When in Firefox, on trying to drag elements I receive an error:
TypeError: Polymer.dom is not a function[Learn More]  vendor.bundle.js:192570:7
_clone http://localhost:4200/vendor.bundle.js:192570:7
sortableFactory/Sortable.prototype._onDragStart http://localhost:4200/vendor.bundle.js:191783:15
bound  self-hosted
[579]/</</ZoneDelegate.prototype.invokeTask http://localhost:4200/polyfills.bundle.js:5779:17
[579]/</</Zone.prototype.runTask http://localhost:4200/polyfills.bundle.js:5578:28
ZoneTask/this.invoke http://localhost:4200/polyfills.bundle.js:5832:28
Which breaks the drag functionality on firefox.
Also, tried using "forceFallback: true / false" in options defined in my .ts file but the above issue persists.
This works fine on chrome without any issues.

I am having the same issue using version "angular-sortablejs": "^1.3.2". Not working in IE11 as well.

hi @ajinkyau @sumedh908
I think this is an issue of the original library and something is wrong with the Polymer and sortablejs versions.
We don't use Polymer on this side, but sortablejs does, see https://github.com/RubaXa/Sortable/blob/master/Sortable.js#L69.
Please, post the solution if you find one...


How can it do backpropogation?

After reading your code, it seems that the code doesn't mention anything about backpropogation. Does tensorflow do it automatically?
Thanks!


That's great and all, but what about Symbol downloads for WindowsUpdate.log errors?

Hi guys. I'm currently trying to troubleshoot an issue with Windows 10 updates, and I've generated a readable (well) log using the powershell get-windowupdatelog command. I've now got a windowsupdate.log file which is filled with "Unknown GUID—–No Format Information Found" errors. I need to download the Symbol files - but the link at https://msdn.microsoft.com/library/windows/desktop/ee416588.aspx seems to apply to Vision Studio only. I grasp there's something to do with "symchk" as well but this is horribly horribly complicated for something where I only had to open the windowsupdate.log file in Windows 7. Am I missing something here?

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

ID: 3fabe759-b55e-91e3-ff40-764310295b5a
Version Independent ID: 71562214-8b57-b69f-1e02-aff3a7e826e2
Content: Download  Windows Symbol Packages for Debugging
Content Source: windows-driver-docs-pr/debugger/debugger-download-symbols.md
Service: unspecified
GitHub Login: @DOMARS
Microsoft Alias: domars

Hi @tombull89 , sorry you're having an update issue. Although this topic is aimed at programmers who need symbols for debugging their driver code, I did find this other support topic that might help you: https://support.microsoft.com/en-us/help/3036646/how-to-read-windows-update-logs-in-windows-10-version-1607. If that doesn't solve the problem, then we'd recommend asking a question on the MSDN support forums here: https://social.msdn.microsoft.com/Forums/en-US/home. Sorry, but we're not equipped to handle technical support beyond documentation questions.
From a docs perspective, though, we will check the directions and links on that page to see what we can do to make them clearer. Thanks for bringing this to our attention, and thanks for your interest in improving the docs.

As we're on the topic of documentation then, there's a link in https://support.microsoft.com/en-us/help/3036646/how-to-read-windows-update-logs-in-windows-10-version-1607 which points to https://docs.microsoft.com/en-us/powershell/module/windows-update/get-windowsupdatelog which is a 404.

Working on that broken link. It's another team at MS that handles the support and IT content, but I'll track down the right person. Thanks, @tombull89, for pointing it out.

Where can I get the symbols for Windows 10 1511 Build 10586? The public ones will not decode the WindowsUpdate.log and all the download links from similar threads a while back are dead.
What was wrong with the old text format? Did you guys look at systemd and think "That's a good idea?"...
Forcing me to upgrading thousands of clients to the latest build of Windows 10 is not a valid answer. ;)

Hi @johnmroberts , sorry you're experiencing a similar issue. Thanks for the question. Because this topic is meant to help Windows driver programmers, we don't have the resources to support IT pros with all the situations where you might need Windows symbols. But, maybe these links can help you.
For any kind of IT-related symbols needs we'd recommend checking out this link: https://support.microsoft.com/en-us/help/3036646/how-to-read-windows-update-logs-in-windows-10-version-1607. For more info about the cmdlet, which is supported starting in Windows 10, see this link: https://docs.microsoft.com/en-us/powershell/module/windowsupdate/get-windowsupdatelog?view=win10-ps. The cmdlet should automatically download the symbol files if you are connected to the Internet.
If that doesn't fix the issue, then we'd recommend asking a question on the MSDN social forums here: https://social.msdn.microsoft.com/Forums/en-US/home?forum=en-US. Also, the blog post linked to in the "Important" box on this page provides more information about the change in the way we distribute public symbols.
Again, thanks for the question. Good luck with your issue.

Thanks. I'd already tried the information in those links before I made the comment. I've tried clearing out the cache etc, and the symbol files PowerShell is downloading automatically don't work. The WindowUpdate.log that the PowerShell cmdlet creates just contains thousands of lines similar to this :
1601/01/01 00:00:00.0000000 1112  12488                 Unknown( 21): GUID=fa2014d3-4bd2-e53d-471c-3afe586eaa20 (No Format Information found).
I'm hoping the original symbols for Windows 10 1511 would resolve the issue. Unfortunately as the old standalone download has been erased from history by Minitrue I'm a bit screwed!

I'm in the same boat. I had to run a recovery on a Surface 3 tablet (downloaded and ran the recommended 1511 USB installer), and from there, I attempted to upgrade to a supported release (namely 1809) from config manager. Sadly, I get an error that (from what I've read) means there are conflicting updates, but I cannot find out which one is conflicting because I cannot decode the log files. It has taken me 2 days to get to this point and I find it absurd that I can't read the log file that the surface supposedly created.
I am also getting the reams of incorrect date and unknown GUIDs, but it seems that driver updates appear fine.
So, to summarise:
Fresh install of 1511 (10586.29) from MS downloaded recovery key.
Attempted to install feature update, but this apparently conflicts with another update that neither config manager, nor the surface can tell me the CI_GUID of.
I attempt to look at the windowsupdate log files, but realise they're not right
Trawl through various articles in an attempt to decode the ETL files (learn a bit about symbols in the process)
All recommendations (MS and otherwise) have failed.
I am now about to install a 4Gb 1511 emulator to see if I can convert the ETLs.
This is an obscene amount of work to find out which update is conflicting.
Rather than apologising for the inconvenience, could you please just allow us access to the MSI for this particular release? It's clearly buggy!

p.s. I've not included the wrigmarole of trying to figure out the 0x80240fff error with regards to conflicting updates. MS have nothing on this, yet they deem a 1511 USB recovery release to be adequate for their own product (surface 3)?

@PBrawn Sorry you're having that issue. You should be able to run the Get-WindowsUpdateLog PowerShell command, which will dump the WindowsUpdate.log text file to the desktop. That file is a simple text file that should open in NotePad. For more info about reading that file, see Windows Update Logs.

Please note that the documentation page on which this thread was created is specifically aimed at downloading symbols for debugging Windows drivers. It is for driver developers and is not aimed at troubleshooting Windows update logs or any other situation that involves logs or symbols.

Apologies Duncan, it wasn't aimed at all you hard working developers! I'm just really frustrated by this issue. The get-windowsupdatelog result is unreadable, despite pointing it to the online symbol repository, or a locally stored one (which is the result of the downloaded one anyway). I think it's simply a case of MS not proividing the correct symbols for this particular OS build.

Please note that the documentation page on which this thread was created is specifically aimed at downloading symbols for debugging Windows drivers. It is for driver developers and is not aimed at troubleshooting Windows update logs or any other situation that involves logs or symbols.

Understood.  I realise you are getting the flack for a different team integrating with your code intended for another purpose.
It's a issue for operation IT staff - they can't troubleshoot Windows Update problems any longer on some clients. It might say "all versions of Windows 10", but for machines running older versions of Windows 10 (which were still in extended support when I originally posted April 2018) the symbols download required was no longer available. The event logging got changed from a simple text file to the new method after the download was pulled. Therefore the powershell commands failed unless you had the foresight to stash the symbol files. Which we hadn't not being a driver development shop. Not even archive.org had stashed it.
Out there in the real world we're running LoB systems that might not work on the latest version of Windows 10, so we've got to keep (say) 1511 in use until such time as the supplier update their product. Not everything is agile developed, in the cloud and run by Microsoft/AWS etc.
Luckily no longer a problem for us, we're on 1803 now, but the idiocy caused us some real pain.
TL;DR - My feedback is that Microsoft really need to work on communication so they stop breaking things. I'm going to get back to harassing Microsoft support for breaking most of our websites with the HSTS patch they pushed out three weeks ago that patently hadn't been anywhere near a computer in the UK.

No worries @PBrawn and @johnmroberts. Your situations are understandable. I'm actually not a developer for Windows, though; I'm part of the Windows Driver Kit documentation team, and our team's focus is on providing accurate docs for the intended driver developer audience by working with feature teams to document the various driver technologies and tools.
But, as you have pointed out, this is a situation where the topic at hand overlaps with other audiences - namely IT pros - who might need Windows symbols from time to time. If the symbols or PowerShell cmdlet aren't working as expected on certain builds, then I suppose the only thing I can do from my end is recommend submitting product feedback using the Windows Feedback Hub. This particular link automatically sets the product category to Debugging Tools for Windows.
Again, I empathize with your frustrations. The reason I posted that note was more for future readers who might stumble across this thread, just to make it clear that we were the docs team and weren't equipped to troubleshoot the variety of Windows Update log issues that might arise in the wild. We do appreciate you opening the issue, though, as we strive to improve the docs and provide the best information at all times. If we can help future readers who might be able to solve their issue using some of the links in this thread, then it's worth it. :) Thanks again for the feedback.


Test database not reset between tests

Is this the expected behavior for Mocha/Velocity?

That is expected right now. We should probably do a better job communicating that. It sounds like you would like to have the database cleared between tests? Or between test runs?

es, the database needs to be cleared to ensure that the starting conditions are the same every time. Otherwise you can get unrepeatable results. Jasmine appears to clear the database as my app runs through its initialization and sets up the database from the empty state.
At the very least it needs to be cleared between test runs. I'm not sure I understand the exact distinction between tests and test runs. So I'm not sure how to answer the question if it has to be cleared between tests too.

I agree that some kind of reset should happen. The question to me is who should be responsible for resetting (framework, Velocity, or user), and how often it should happen. Resetting the db after each test seems like it'd be too slow, but at the start of the test suite seems like it'd offer a good balance of speed and a clear starting point.

I would think the logical place is in Velocity when the mirror is set up. Does that happen only once at the beginning of a suite of tests? Or does it happen before every test?
Actually I think clearing the database should be very fast in Mongo as it is accomplished by deleting all of the DB files.

Yeah I agree, following discussion from https://github.com/meteor-velocity/velocity/issues/39 it seems like this should already be implemented in the mirror? In the meantime, I'm using a utility method I wrote here.
beforeEach ->
      Collections.removeAllDocs(Orders)
      Collections.removeAllDocs(OrderSchedules)

I've found a slightly better temporary solution. If you have a beforeEach outside of any describe in Mocha, it will run for each test case in all suites, so I created a test called _startupTest.coffee - I'm assuming it will load tests in alphabetical order.
MochaWeb?.testOnly ->

  beforeEach ->
    console.log('Clearing test collections')
    _.each [Orders, OrderSchedules, Runs, RunSchedules, Customers, Products], (collection) ->
      Collections.removeAllDocs(collection)

Is there a meteor method do get this done from Velocity?

:+1: Any news about this? How do you guys usually clear the DB after tests without modifying the actual mocha package?

@carlosbaraza Although in my opinion this is not the best solution, what I ended up doing is remove every item in each collection manually using beforeEach(). I did this because my current permissions do not allow me to drop databases on the client side.
if (!(typeof MochaWeb === 'undefined')){
  MochaWeb.testOnly(function(){
    beforeEach(function() {
      Collection1.find().forEach(function(item) {
        Collection1.remove(item._id);
      });
      Collection2.find().forEach(function(item) {
        Collection2.remove(item._id);
      });
    });
  });
}

Hi @OminStyle,
But what about cleaning the full database, not only the documents available in the client? I want to have a clean way to clear the database without compromising security, letting docs to be deleted from the client.
Maybe I am missing still some point from Velocity. Is there some way to set up a server method only callable from tests where I could clear the database?

@carlosbaraza Agree that this isn't ideal, but couldn't you simply add the methods in a debugOnly package?

Hi @ryneeverett, thank you, that's an interesting point. I am still kind of new on the Meteor world, so I am figuring out the best way to do things. That might be my solution for the moment.
Do you have some example repository where this is being done?

For the moment I could not find someone doing such a debug package to clear the database via methods. However, I found a cool well known package example of the usage of debugOnly https://github.com/msavin/Mongol/blob/master/package.js

Try this one for clearing the database:

https://github.com/Sanjo/meteor-jasmine/wiki/Database-Fixtures-for-Integration-Tests

Here's my mocha implementation:
https://github.com/ryneeverett/meteor-dbreset

And here is my implementation. This will clear all Items from Collections published to Client, If Client has permissions for deleting them. Save this in client test folder. Name could be 00.clearDatabaseTest.coffee, to assure initial load.
MochaWeb?.testOnly ->

	collections = [Collection1, Collection2]
	clearDatabase = ->
		console.log('Clearing test collections')
		_.each collections, (collection) ->
			_.each collection.find().fetch(), (doc) ->
				doc.remove()

	describe 'Clearing Database', ->
		it 'should remove all items from Collections', ->
			clearDatabase()
			_.each collections, (collection) ->
				chai.assert.equal collection.find().count(), 0


Upgrade uglifier to version 4.0.0

Libraries.io has found that there is a newer version of uglifier that this project depends on.
More info: https://libraries.io/rubygems/uglifier/4.0.0

#2114


Test: Download 7zip directly from 7zip domain

Random builds have been failing due to sourceforge redirecting to the respective mirror sometimes taking too long so the requests would time out. Trying out if a direct download from 7-zip.org performs better.

test this

test this


op-amp power supply

Hey there,
great project! Isn't the op-amp missing the supply power? ADC_POWER is only conntected to the uC. Or am I missing something?
Best regards

The ADC_POWER is directly powering the opamp from the uC everytime a measuring cycle is run. That way the op-amp does not consume any power when its not needed as the uC can turn it off.

Thank you! I will close the issue.


Add seed check to the Travis CI file

Changes proposed in this PR:

Add hygiene section to Travis CI to check background maintenance issues.

Fixes #1816


Allow to navigate from overview page to comment thread

Issue Type: Feature Request
See attached image.

We should have an action link on the right of the beginning of the comments thread that allows me to directly navigate to the comment in the source file in my workspace when the PR is checked out, or it should open the file in the diff view (just like clicking it in the PR viewlet).
Extension version: 0.3.1
VS Code version: Code - Insiders 1.30.0-insider (a152a5c7818a13666a5879b4450eb26a4d45fbde, 2018-12-07T10:25:53.709Z)
OS version: Darwin x64 18.0.0

This was implemented with cfcb1f74f06669fe42087216f2b0b10be0285d65


Desktop entry won't open bluejeans

Describe the bug
After installing Bluejeans app I am unable to use the home icon to open the app, and when running via command line it never fully loads.
To Reproduce
Steps to reproduce the behavior:
Setup details
I am running NixOS:
# cat /etc/os-release
NAME=NixOS
ID=nixos
VERSION="20.09pre221706.b61999e4ad6 (Nightingale)"
VERSION_CODENAME=nightingale
VERSION_ID="20.09pre221706.b61999e4ad6"
PRETTY_NAME="NixOS 20.09 (Nightingale)"

Installing
And installing via the (trimmed down) nix config below:
{ config, pkgs, lib, ... }:

with lib;
with builtins;

let
  home-manager = builtins.fetchTarball https://github.com/rycee/home-manager/archive/master.tar.gz;

in
{

  imports = [
    ./hardware-configuration.nix

    "${home-manager}/nixos"
  ];

  config = {
    environment.systemPackages = with pkgs; [
      bluejeans
    ];
  };
}

Launching the app via start menu shortcut
After building / switching to this config I see the logo appear in the start menu with the following desktop entry file:
# cat /nix/store/xxxxxxxxxxxxxxxxxxx-bluejeans-2.1.0/share/applications/bluejeans-v2.desktop
[Desktop Entry]
Name=BlueJeans
Comment=BlueJeans Desktop App
Exec="/opt/BlueJeans/bluejeans-v2" %U
Terminal=false
Type=Application
Icon=bluejeans-v2
StartupWMClass=BlueJeans
MimeType=x-scheme-handler/bjnb;
Categories=AudioVideo;

When I click on this button I get a "sorry" pop up that reads Could not find the program '/opt/BlueJeans/bluejeans-v2'
And I do not have an /opt/ dir so this does not seem crazy
Launching the app via command line
I tried next to launch via command line, running bluejeans and do get the window to open, but it never leaves the logo page for me to sign in or launch a call. The output is:
# bluejeans
{"message":"Launching app...","level":"info","timestamp":"2020-05-01 20:50:05"}
{"message":"App version - 2.1.0","level":"info","timestamp":"2020-05-01 20:50:05"}
Fontconfig warning: "/etc/fonts/fonts.conf", line 86: unknown element "blank"
{"message":"Empty data passed to determineMsgChannel function","level":"error","timestamp":"2020-05-01 20:50:05"}
{"message":"Config.xml file copied successfully","level":"info","timestamp":"2020-05-01 20:50:05"}
{"message":"System OS details - {\"os\":\"linux\",\"dist\":\"Raspbian\"}","level":"info","timestamp":"2020-05-01 20:50:05"}
{"message":"Detector service copied successfully...","level":"info","timestamp":"2020-05-01 20:50:05"}
{"message":"Detector service not running ...","level":"info","timestamp":"2020-05-01 20:50:05"}
{"message":"Trying to start detector service...","level":"info","timestamp":"2020-05-01 20:50:05"}
{"message":"Detector service started successfully....!!","level":"info","timestamp":"2020-05-01 20:50:05"}
Constructing deviceEnumerator object:Fri May 01 2020 20:50:06 GMT+0100 (British Summer Time)
20:50:06.599          critsec:1187 !Mutex created
20:50:06.600          critsec:1259  Mutex: thread thr0x7fc731cd6cc0 is waiting
20:50:06.600          critsec:1281  Mutex acquired by thread thr0x7fc731cd6cc0
20:50:06.600          critsec:1317  Mutex released by thread thr0x7fc731cd6cc0
20:50:06.600   os_core_unix.c:197  pjlib 2.0.1 for POSIX initialized
20:50:06.600      cachingpool:1187  Mutex created
20:50:06.600      cachingpool:1259  Mutex: thread thr0x7fc731cd6cc0 is waiting
20:50:06.600      cachingpool:1281  Mutex acquired by thread thr0x7fc731cd6cc0
20:50:06.600      cachingpool:1317  Mutex released by thread thr0x7fc731cd6cc0
20:50:06.601    FbrCpuMonitor:70  Changing cpu upgrade time from 5 to 5 secs. Cpu min threshold from 60 to 60
20:50:06.601    FbrCpuMonitor:81  Changing max threshold from 75 to 75
VideoEnumerator::VideoEnumerator
20:50:06.603      cachingpool:1187 !.Mutex created
20:50:06.603      cachingpool:1259  .Mutex: thread FiberMainThread is waiting
20:50:06.603      cachingpool:1281  .Mutex acquired by thread FiberMainThread
20:50:06.603      cachingpool:1317  .Mutex released by thread FiberMainThread
20:50:06.603         mtxpjsua:1187  .Mutex created
20:50:06.603   sip_endpoint.c:447  .Creating endpoint instance...
20:50:06.603      cachingpool:1259  .Mutex: thread FiberMainThread is waiting
20:50:06.603      cachingpool:1281  .Mutex acquired by thread FiberMainThread
20:50:06.603      cachingpool:1317  .Mutex released by thread FiberMainThread
20:50:06.603          critsec:1259  .Mutex: thread FiberMainThread is waiting
20:50:06.603          critsec:1281  .Mutex acquired by thread FiberMainThread
20:50:06.603          critsec:1259  .Mutex: thread FiberMainThread is waiting
20:50:06.603          critsec:1281  .Mutex acquired by thread FiberMainThread
20:50:06.603          critsec:1317  .Mutex released by thread FiberMainThread
20:50:06.603          critsec:1317  .Mutex released by thread FiberMainThread
20:50:06.603 ept0x18fbb1da037:1187  .Mutex created
20:50:06.603 edpt0x18fbb1d7f0:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d7fb3:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d7fcf:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d7fd6:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d7fdd:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d4442:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d445c:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d4478:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d4495:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d44b1:1187  .Mutex created
20:50:06.603 mtx0x18fbb1d44ce:1187  .Mutex created
20:50:06.603 mtx0x18fbb1da056:1187  .Mutex created
20:50:06.603 mtx0x18fbb1da072:1187  .Mutex created
20:50:06.603 mtx0x18fbb1da08f:1187  .Mutex created
20:50:06.603 mtx0x18fbb1da0ab:1187  .Mutex created
20:50:06.603 mtx0x18fbb1da0c8:1187  .Mutex created
20:50:06.603 mtx0x18fbb1da0e4:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9e05:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9e21:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9e3e:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9e5a:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9e77:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9e93:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9eb0:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9ecc:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9ee9:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9f1a:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9f37:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9f53:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9f70:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9f8c:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9fa9:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9fc5:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9fe2:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9d1a:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9d37:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9d53:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9d70:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9d8c:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9da9:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9dc5:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d9de2:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d451a:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d4537:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d4553:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d4570:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d458c:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d45a9:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d45c5:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d45e2:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d461a:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d4637:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d4653:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d4670:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d468c:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d46a9:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d46c5:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d46e2:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d471a:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d4737:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d4753:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d4770:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d478c:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d47a9:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d47c5:1187  .Mutex created
20:50:06.604 mtx0x18fbb1d47e2:1187  .Mutex created
20:50:06.604 ioq0x18fbb1d47e9:1187  .Mutex created
20:50:06.604            pjlib:269  .select() I/O Queue created (0x18fbb1d7f090)
20:50:06.604 ioq0x18fbb1d47e9:1259  .Mutex: thread FiberMainThread is waiting
20:50:06.605 ioq0x18fbb1d47e9:1281  .Mutex acquired by thread FiberMainThread
20:50:06.605 ioq0x18fbb1d47e9:1317  .Mutex released by thread FiberMainThread
20:50:06.605 mtx0x18fbb1d7fcf:1259  .Mutex: thread FiberMainThread is waiting
20:50:06.605 mtx0x18fbb1d7fcf:1281  .Mutex acquired by thread FiberMainThread
20:50:06.605 ioq0x18fbb1d47e9:1259  .Mutex: thread FiberMainThread is waiting
20:50:06.605 ioq0x18fbb1d47e9:1281  .Mutex acquired by thread FiberMainThread
20:50:06.605 ioq0x18fbb1d47e9:1317  .Mutex released by thread FiberMainThread
20:50:06.605 mtx0x18fbb1d7fcf:1317  .Mutex released by thread FiberMainThread
20:50:06.605   sip_endpoint.c:226  .Module "mod-msg-print" registered
20:50:06.605          hashtbl:110  .hash table 0x18fbb1d47ed8 created from pool pept0x18fbb1da0000
20:50:06.605 tmgr0x18fbb1d47f:1187  .Mutex created
20:50:06.605  sip_transport.c:1191  .Transport manager created.
20:50:06.605      pjsua_timer:1187  .Mutex created
20:50:06.605     pjsua_core.c:1656  .PJSUA state changed: NULL --> CREATED
{"message":"Clicked Preferences","level":"info","timestamp":"2020-05-01 20:50:18"}
{"message":"IPC called for GET_PREFERENCES","level":"info","timestamp":"2020-05-01 20:50:19"}
{"message":"Preferences Window closed","level":"info","timestamp":"2020-05-01 20:50:22"}
{"message":"mainwindow close called","level":"info","timestamp":"2020-05-01 20:50:30"}
{"message":"Should close via DS - true","level":"info","timestamp":"2020-05-01 20:50:30"}
{"message":"Called DS close handle..","level":"info","timestamp":"2020-05-01 20:50:30"}
{"message":"window-all-closed called","level":"info","timestamp":"2020-05-01 20:50:32"}
{"message":"Should close via DS - true","level":"info","timestamp":"2020-05-01 20:50:32"}
{"message":"Called DS close handle..","level":"info","timestamp":"2020-05-01 20:50:32"}

Expected behavior
I expected the shortcut in the the start menu to launch bluejeans application and allow for me to login/join a call.
Screenshots
N/A, I think the copy paste error message is better than the screenshot. Can add later if needed.
Additional context
N/A
Notify maintainers
@veprbl  - Thank you!
Metadata
Please run nix-shell -p nix-info --run "nix-info -m" and paste the result.
# nix-shell -p nix-info --run "nix-info -m"
these paths will be fetched (0.05 MiB download, 0.28 MiB unpacked):
  /nix/store/qr6dpv0wl37p00rdj5pijn1mkz0wfkwd-bash-interactive-4.4-p23-dev
copying path '/nix/store/qr6dpv0wl37p00rdj5pijn1mkz0wfkwd-bash-interactive-4.4-p23-dev' from 'https://cache.nixos.org'...
 - system: `"x86_64-linux"`
 - host os: `Linux 5.4.32, NixOS, 20.09pre221706.b61999e4ad6 (Nightingale)`
 - multi-user?: `yes`
 - sandbox: `yes`
 - version: `nix-env (Nix) 2.3.4`
 - channels(root): `"nixos-20.09pre221706.b61999e4ad6, home-manager, nixpkgs-unstable-20.09pre221814.10100a97c89"`
 - nixpkgs: `/nix/var/nix/profiles/per-user/root/channels/nixos`

Maintainer information:
# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:

Do you have pulseaudio running?

First, sorry for the dup...not sure how that happend :facepalm:
Second, I do have pulse audio. Does that conflict?

@abangser No worries. Can provide the output of ls -la $XDG_RUNTIME_DIR/pulse?

$ ls -la $XDG_RUNTIME_DIR/pulse
total 4
drwx------ 2 abby users  80 May  1 15:09 .
drwx------ 6 abby users 200 May  1 22:31 ..
srw-rw-rw- 1 abby users   0 May  1 15:09 native
-rw------- 1 abby users   5 May  1 15:09 pid

@abangser
Does this work for you:
NIXPKGS_ALLOW_UNFREE=1 nix-shell -I nixpkgs=https://github.com/NixOS/nixpkgs/archive/4b942e88cb4907037912b63aa030169bca95bc5e.tar.gz --arg overlays '[]' --arg config '{}' -p bluejeans-gui -p which --run 'env -i DISPLAY=$DISPLAY HOME=$HOME XDG_RUNTIME_DIR=$XDG_RUNTIME_DIR `which bluejeans`'

?

Nearly! It successfully loads the app and asks for login. But the login does not launch the google SSO browser page (as it does on my ubuntu machine).
One thing I noticed in that command is the UNFREE bit. I mistakenly left out this bit of my config:
    nixpkgs.config = {
      allowUnfree = true;

      packageOverrides = pkgs: {
        nur = import (builtins.fetchTarball "https://github.com/nix-community/NUR/archive/master.tar.gz") {
          inherit pkgs;
        };
      };
    };

But it is a VERY early days config so if it helps this is the file: https://github.com/abangser/machine_setup/blob/master/configuration.nix

How do you open this google SSO?

Usual behaviour is to pop open a browser tab. I have both firefox and chromium installed via home-manager. Neither are being launched via the app. Seems there may be a fork in the road here...

What caused the initial install issue and is this an issue with my config or with the package?
Is the launch of the browser to complete SSO (in this case Google Apps SSO) supported?

I am happy to spin out the SSO one separately. So far I have tried with both Chromium and Firefox as well as by trying to signin on the web manually and then launch the app but it is not launched (again, this process works on my ubuntu machine).
Let me know what makes the most sense for you. Thanks agian!

I don't get any browser tabs opening. I guess, for communication with the browser you need to allow for PATH environment variable to go through. Try removing the env -i DISPLAY=$DISPLAY HOME=$HOME XDG_RUNTIME_DIR=$XDG_RUNTIME_DIR part. Regarding the initial problem, I don't know the answer to that, but now that you have a working configuration you should be able to experiment with it to see which part is making it work.

Sorry for the delay, played with this a bit today including on a clean build of my system. I think the issue with the menu icon was from a different download so going to consider that a red herring. With the clean install there is actually no launch icon provided at all but I can run the app so that is fine.
However on a clean install from nix config of bluejeans-gui the app successfully installs and is able to handle the SSO redirect. It does say it is installing bluejeans-1.32 instead of what I thought should be 2.1 but given it is functioning I am going to chalk this up to a strange state that I didn't realise and thank you for your time! If any of further debugging is helpful to you lemme know and I can join in, but for now I will close this.
Thanks!

@abangser This was a thing I wanted to suggest, you can use bluejeans-1.32, it is the version that comes in the stable nixos-20.03. The master ships the 2.x version, which appears to have the problems on your setup. You probably could stick with 1.32 for now, it should be as functional. Feel free to reopen, if that doesn't resolve the problem for you.


Limit Depth of created dependecy nodes

Bug
Right now, we end up parsing the entire node dependency tree and creating objects to represent every dependency in it. This uses a lot of memory and a lot of time during boot. Here's a simple, new Express 4 app for example:

The plus side of this extra computation is that we allow users to explore the entire module dependency tree in VS directly.
Fix
All these operations are negatively impacting user experience, especially when loading projects with lots of dependencies (such as the eslint source.) I also am not convinced that browsing the dependencies of your dependencies is actually useful.
This fix limits the depth to which we create dependency nodes to 1 (only root dependencies are shown). Memory usage and boot time are much improved:

The change does remove some existing behavior, so if anyone feels strongly about this, we can discuss this further. The alternative is something like #869.

Let's discuss ways to mitigate the performance issue, but cutting the feature altogether is a little premature (especially after events like left-pad, which has put people on edge about their project composition) and also will create inconsistency with other project types. Additionally, this will impact the Node language service, which currently depends on these depth calculations.

Holding off on this change because it may impact the analyzer is fine, but we should not keep this feature just because removing it reduce functionality. Instead, do people find this feature helpful and does the functionality fit with our longer term vision? Opening large Node projects is currently a terrible experience, and this fix makes things significant better.
Beyond all the various leaks and other memory reduction fixes already in 1.2 Alpha 2, there is no good story to mitigate this problem. #940 could work, but that's a risky change and may re-introduce problems similar to #815.


[native_assets_builder] How to deal with NativeCodeAssets with conflicting install names and conflicting file names

It seems that renaming dylibs is non-trivial on some OSes. So, we might want to make it an error to create dylibs with the same names. Either within one hook or as a combination of multiple hooks.

[x] Checks in native_assets_builder
[x] Conflicts between build and link output in dartdev.
[ ] Conflicts between build and link output in Flutter.

TL;DR: So far we've been treating native code assets as being in one namespace, similar to how all native build systems work. We could consider name spacing native code assets per package (per hook), but that requires tracking dynamic linking between dylibs explicitly in the protocol.
So far, we've avoided dealing with name conflicts between native libraries. The rationale being that most native build systems do not have a way to deal with that.
In https://github.com/flutter/flutter/pull/153054, we are rewriting install names and dynamic linker import paths. We could apply similar logic to rewrite library names on all OSes (not just MacOS/iOS), to prevent name clashes between NativeCodeAssets from various packages.
Some observations:

File names from within one hook cannot clash. So file name collisions should only come from native libraries reported from different hooks.
Library install names (and correspondingly the #include statements when referring to these libraries) need to align with the file paths. So library install name collisions should also only come from combining the results of multiple hooks.
It's perfectly fine for a dylib in package:foo to have an #import "bar.h" from the hook from package:bar. So completely namespacing native code assets per hook might not be desirable.

However, if a libbar.so is produced by both package:bar and package:baz hooks, then it is ambiguous which one is imported. (Unless we add a List<NativeCodeAsset> dynamicallyLinkedTo to NativeCodeAsset to explicitly communicate in the protocol which dylibs dynamically link which dylibs.)

I am not sure whether it's worth it to start name spacing.
Thanks @mkustermann for bringing this up!
FYI @blaugold (Somewhat related to the PRs you're currently working on. But just FYI, no reason to change anything there for now. It might invalidate my assertion in https://github.com/dart-lang/native/issues/190, that we don't need to track the dynamic linking between dylibs in the BuildOutput.)

It seems that renaming on Linux might be much harder than renaming on MacOS/iOS.
See the discussion on https://github.com/dart-lang/native/issues/190#issuecomment-2304312550.

https://github.com/flutter/flutter/pull/158214 added duplicate code asset checks to flutter_tools. Thanks @mkustermann! 🙏


Fix content/es/docs/setup/_index

Dangling "pick-right-solution" references #14474
es docs redirection  404 fixed

I signed it

/assign @raelga

/lgtm

Hello @jrab66, thanks for taking care of that.
The original page has been re-written, so it may be better to change the entire page and apply the same rework done by @Rajakavitha1 at https://github.com/kubernetes/website/pull/14442.
Otherwise, if you prefer to go ahead with this PR and focus on solving the broken links, I would suggest removing the entire link phrases: Elige una [solución ........ WIth the PR, they will be pointing to the top section of the same page, without any other extra content and is a bit misleading.
What do you think?
And thanks again for working on the issue! 🎉

Hi @raelga  already remove the "Elige una solucion" stuff  its ok only doing this now and later aupdate with the translation of the full setup.

Tracked at #13948.

/unassign

Una vez solventada la review de @electrocucaracha, recuerda hacer un squash de los commits y dejarlo en uno solo, así podremos publicarlo directamente! :octocat:
Muchas gracias @jrab66!

Muchas gracias!
Por mi parte:
/lgtm
A ver si @electrocucaracha puede confirmar que la review está resuelta y lo publicamos!

/lgtm

/approve
Muchas gracias!

Publicada en https://kubernetes.io/es/docs/setup/! 🎉


Cache course content screens while scrolling between them

Right now when we scroll between different pieces of course content, we reload the entire page each time. We should:

Cache pages we've already visited.
Optimistically load the following (and previous?) page.

We should flush this cache on memory warnings.
Note that preloading the surrounding pages might have funny behavior for videos where they start playing right away. If so, let's not worry about the optimistic loading stuff.

As suspected, optimistic loading of the next and previous viewControllers really messes up the flow, specially in the case of videos where the video doesn't stop on navigating away from it because it gets loaded again. Same's the case if the next block is a VideoBlockViewController
Possible solutions

Do a QA pass, and refactor the BlockViewControllers to do all the User related stuff (e.g playing the video) in ViewDidAppear rather than ViewDidLoad
Don't preload VideoBlockViewController

@aleffert pl review

We should probably add a method to the page view controller like:
func controllerForBlock(block : CourseBlock) -> UIViewController

which is responsible for calling the router and handling the caching logic. That way we only need it in one place.

With regard to:
"Do a QA pass, and refactor the BlockViewControllers to do all the User related stuff (e.g playing the video) in ViewDidAppear rather than ViewDidLoad"
That sounds like the right strategy to me if we can make it work, but I'm a little confused. I went to go check in the code and it looks like we generally don't start loading content until viewWillAppear anyway?

@aleffert what's the status of this? Let's do the optimistic loading in a separate PR?

A few minor comments :+1:


Enhancement: Userscript support for a button "upload to emp" within stash

Added on behalf of @preshow6237
Add a button on a stash scene's panel . The edit tab makes most sense, as the workflow would be to scrape the scene, edit all the tags/metainfo etc, then upload. The button would basically open an empornium upload.php tab, and pre-populate that scenes id number into the "stash ID" field provided by the script. It could automatically activate the "fill form" button provided by the script. You'd have to assume that the user is already authenticated/logged in, so  maybe/maybe not handle that "error", and you'd need to make .sx or .is domain configurable in the config I guess.
** Workflow becomes:**

Edit meta data in stash until you're happy with it
Click "upload to emp" button
New tab opens (ideally without even changing focus to it), and starts working on all the jobs.
User can keep working on the next scene or whatever, or upload a new one. These jobs can happen asynchronously I presume (I haven't actually tested).
At some point the user can come back to the emp tab(s) and review and click upload.

This enhancement would be improved by caching of image urls (which you've implemented but not released I believe), caching of the .torrent generation job being complete, etc, etc. So even if an upload tab is forgotten/closed by the user at some point they can simply click the button on the scene again and have it be "instantly" ready.
** Potential issue:**
If the user processes like 10 scenes at a time, it might be painful to associate the correct .torrent with each tab. It would be great if you could inject this as a part of the script. It's entirely possible to just make the .torrent in client-side js (see anthelion's upload.php, the js is all there). This should be it's own issue (lol). And this approach probably isn't great, because then caching the resulting .torrent becomes problematic should you need to re-run the script.

Closing as a duplicate of #58 now that it is once again visible.


Enhancement: Better Model Saving & Loading

Please go to Stack Overflow for help and support:
http://stackoverflow.com/questions/tagged/tensorflow
If you open a GitHub issue, here is our policy:

It must be a bug or a feature request.
The form below must be filled out.

Here's why we have that policy: TensorFlow developers respond to issues. We want to focus on work that benefits the whole community, e.g., fixing bugs and adding features. Support only helps individuals. GitHub also notifies thousands of people when issues are filed. We want them to see you communicating an interesting problem, rather than being redirected to Stack Overflow.

System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow): Yes
OS Platform and Distribution (e.g., Linux Ubuntu 16.04): Windows 10 Pro
TensorFlow installed from (source or binary): binary
TensorFlow version (use command below): 1.something
Bazel version (if compiling from source): N/A
CUDA/cuDNN version: N/A
GPU model and memory: N/A
Exact command to reproduce: Feature Request; not bug

You can collect some of this information using our environment capture script:
https://github.com/tensorflow/tensorflow/tree/master/tools/tf_env_collect.sh
You can obtain the TensorFlow version with
python -c "import tensorflow as tf; print(tf.GIT_VERSION, tf.VERSION)"
Describe the problem
Describe the problem clearly here. Be sure to convey here why it's a bug in TensorFlow or a feature request.
Much of it is documented here in depth; especially the pain part: http://stackoverflow.com/questions/43708616/tensorflow-inference
I would really really appreciate a way to save JUST the model and load JUST the model as a graph.  I might even be able to help in coding this feature.
You can do it however you want; but the easiest might be to use a scoping prefix such as 'model/stuff'  I would very much like to do this:
def inference(X):
create a model
return prediction_op
do your training however; with TFRecords; with feed dicts; with your custom queue runners etc...There are a million options...
tf.train.ModelSaver(SCOPE_PARENT, PATH)
where SCOPE_PARENT is the top level scope to save; so if I structure my scoping as such:
'inputs/inputstuffs'
'model/layer1' , 'model/layer2' etc etc
'adams etc'
it would save just 'model/layer1' (but not any of the gradient stuff...)
then at inference time I can do...
model = tf.train.ModelLoader(PATH)
that model takes the initial input of the first layer of that graph; whatever that is.  Most commonly for inference I see feed_dict.
so I can set up whatever kind of processing I want; either in memory based with feed_dicts or perhaps batch processing via queue runners; but the point is that the input is seperate from the model.
As it stands right now; I'm looking at TensorFlow for our use case as a non starter if the training input system is really this tightly bound to the inference system.  This type of thing really needs to be built...
Source code / logs
Include any logs or source code that would be helpful to diagnose the problem. If including tracebacks, please include the full traceback. Large logs and files should be attached. Try to provide a reproducible test case that is the bare minimum necessary to generate the problem.

It looks like you found a resolution to this in the SO post; is this feature request still relevant? Also does SavedModel help you at all? (Sorry if you already went over this somewhere, just trying to clarify exactly what is being requested at this point.)

Automatically closing due to lack of recent activity. Please update the issue when new information becomes available, and we will reopen the issue. Thanks!


watchOS target scheme not generated

I'm trying to setup a watchOS target dependency, but I don't get how to generate automatically the scheme (note that it's working perfectly for iOS and tvOS). I can add it manually and everything will work as expected, but it won't be generated using XcodeGen. Is that an expected behaviour or is it something worth looking in?
Here the yml associated to the watch target (it will be included in a parent one):
targets:

  # -----------
  # Sample_watchOS_App
  # -----------

  Sample_watchOS_App:
    type: application.watchapp2
    platform: watchOS

    # dependencies
    dependencies:
      - target: "Sample_watchOS_Extension"

    # sources
    sources:
      - "Sources/Sample WatchKit App"

    # settings
    settings:
      PRODUCT_BUNDLE_IDENTIFIER: $(AS_WKAPP_BUNDLE_IDENTIFIER)

    # Config Files
    configFiles:
      Debug: config/watchOS/xcconfig/Debug.xcconfig
      Release: config/watchOS/xcconfig/Release.xcconfig
      Adhoc: config/watchOS/xcconfig/Adhoc.xcconfig
      Beta: config/watchOS/xcconfig/Beta.xcconfig

  # -----------
  # Sample_watchOS_Extension
  # -----------

  Sample_watchOS_Extension:
    type: watchkit2-extension
    platform: watchOS
    sources:
      - "Sources/Sample WatchKit Extension"

    # settings
    settings:
      PRODUCT_BUNDLE_IDENTIFIER: $(AS_WKEXT_BUNDLE_IDENTIFIER)

    # Config Files
    configFiles:
      Debug: config/watchOS/xcconfig/Debug.xcconfig
      Release: config/watchOS/xcconfig/Release.xcconfig
      Adhoc: config/watchOS/xcconfig/Adhoc.xcconfig
      Beta: config/watchOS/xcconfig/Beta.xcconfig

Ok, I just needed to add the scheme param with configVariants:
    scheme:
      configVariants:
        Sample_watchOS_App

Nevermind, I'm closing this, thanks you!


Sector doesnt validate

Current behavior
You can Post a Sector with the same Name and Organization to the API which should not be possible as it would be redundant.
Expected behavior
It should refuse the Post Request by saying that there already exists a Sector with the same Name and Organization.
Steps to reproduce the behavior

Post Sector with same Name and Organization as an already existing one to the API.

I agree it's not a good behaviour.
This should make the job:
class Meta:
    unique_together = (..)


Streamlining Laplacian Systems Section

I really like the laplacian systems section, but I think you could make it stronger.
(1) The big suggestion would be to lead with the colorizer, instead of the general case. Absorbing a concrete case, with a nice physical motivation, is a lot easier for a reader not familiar with the topic. I'm not super confident this is the right thing to do, but it's often a good heuristic and my sense is that it would flow better.
(2) Either way, I would drop the inline definition of the graph laplacian, and move it to a footnote or hyperlink to wikipedia. I feel more confident this is a good idea. Right now, it feels like the reader should put a lot of effort into understanding the graph laplacian matrix, but really they just need to understand that we can vectorize the equation and then look at eigenvectors.
Example of what a new version might look like:

Imagine a drop of ink, diffusing through water. Movement through equilibrium is made only through local corrections - and hence left undisturbed, its march towards equilibrium is slow and laborious. This is too, a manifestation of pathological curvature.
To make this concrete, let's consider a toy example. On a grid of pixels let G be the graph with vertices as pixels and edges connecting neighbouring pixels. Let D be a set of a few distinguished vertices. Then we try to minimize a sum of two sums,
[colorizer eq]
... [diagram, etc]
To make this a bit more precise, note that we can rewrite the colorizer problem as a simple quadratic with a matrix.
[eq]
This matrix is called a graph laplacian matrix<footnote: definition, talk about importance>.
We can now do our usual trick of looking at the eigenvectors of L_G...
...
Another way of thinking about this is that there is a connection the connectivity of the graph and the condition number of L_G. As we've seen, long, wiry graphs, like paths and grids, condition poorly. Conversely, small world graphs, like expanders and dense graphs, have excellent conditioning

@gabgoh's new commit, 60bdae, introduces a new diagram.
Basically, it takes a couple sentences and replaces them with a diagram:

I really like it! It seems like it will be a nice ingredient as you rework this section.


Moved design time directive helper to target extension

Issue - #1051
@NTaylorMullen @rynowak

Moved DirectiveTokenHelperIRNode to a target extension
Removed all renderers and unused visitor methods
Regenerated IR baselines
Added unit tests for the new target extension

🆙 📅


(docs) Update file-path glob details.

Per @joshcooper in puppet-docs PR 622 and SERVER-1195, update the static_file_content API docs to specify the paths for files that can have inlined file resource metadata.

:+1:


support motion time state in Entry/Exit to BlendTree optimization

TODOs from #854 for linear animation
we can simulate motion time with 1d blend tree so first convert to 1d blend tree and then apply entry/exit to blendtree

I think making 1d blend tree is useful for other optimization so I think it's good to add animator optimizer phase to do this.


Refactor diags and write into internal database

This is a significant refactor that splits out the common diags code into its own file, allowing it to be used by other types of nodes (brokers). The actual code is mostly the same, but diags types (as well as the server) can now convert diags data to InfluxQL rows. As rows, the latest diags data can be returned to the user as a query set, as well as easily written back into the database for monitoring.
This allows historical monitoring of all diagnostics. Of particular interest will be GC performance, memory usage, number of shards and shard groups on the cluster, index points, amongst other important data

For example, here is a memory query from the internal database:
$ curl -G http://localhost:8086/query?pretty=true --data-urlencode "db=internal" --data-urlencode "q=SELECT * FROM memory_diag LIMIT 1"
{
    "results": [
        {
            "series": [
                {
                    "name": "memory_diag",
                    "columns": [
                        "time",
                        "alloc",
                        "frees",
                        "heapAlloc",
                        "heapIdle",
                        "heapInUse",
                        "heapObjects",
                        "heapReleased",
                        "heapSys",
                        "lookups",
                        "mallocs",
                        "numGG",
                        "pauseTotalNs",
                        "sys",
                        "totalAlloc"
                    ],
                    "values": [
                        [
                            "2015-03-26T07:20:28.658316927Z",
                            371144,
                            5236,
                            371144,
                            917504,
                            704512,
                            2461,
                            0,
                            1.622016e+06,
                            83,
                            7697,
                            8,
                            2.906443e+06,
                            3.999992e+06,
                            874752
                        ]
                    ]
                }
            ]
        }
    ]
}

:+1:
so awesome.


Backstage k8s annotations

[ ] add annotations from doc

https://backstage.io/docs/features/kubernetes/configuration#surfacing-your-kubernetes-components-as-part-of-an-entity

using Label selector query annotation https://backstage.io/docs/features/kubernetes/configuration#label-selector-query-annotation and label used is "project=developerautomation"


(#1717) fix for re-rendering in statement calls

Fixes #1717
Fixes #1108
This PR removes the call to render() in statement blocks. For most applications of dbt, this shouldn't change anything at all. I had to amend the run_hooks macro to render hooks, as they previously relied on statement blocks to be rendered. While I was in there, I added a check to skip queries for empty hooks, which should fix #1108.
We should think hard about if there are any other built-in parts of the dbt codebase which rely on statements re-rendering queries - I don't believe there are, but if they do exist, they're probably not explicitly tested. We should also add a note to the release notes / migration guide describing this change in behavior, as it could be very breaking for some dbt projects out there.

Turns out that this is how hooks work...

I actually feel great about this hooks change. Hooks were previously kind of magic - I didn't realize that they only worked because they went through statements! I feel really good about making that particular interaction explicit, rather than implicit.
Super glad we're fixing this - just saw a similar (unrelated to hooks) issue pop up in Slack. Looks like there's a nonzero incidence of folks using code like:
{{ config(target_schema='{{ some jinja here }}') }}

which fails is terrible and confusing ways!

@drewbanin If we're trying to use the {{ config(target_schema='{{ env_var('SOME_ENV_VAR') }}') }} syntax, what's the proper way to use that? I'm running into errors with every permutation I can think of.

@blisteringherb that would be
{{ config(target_schema=env_var('SOME_ENV_VAR')) }}

You generally don't want to "nest" curly brackets the way you've shown in your example.

Thank you for your help! @drewbanin


caddy config

Do you have a working configuration for caddy?
Currently testing with this one:
    reverse_proxy openspeedtest:3000 {
        flush_interval -1
    }

I never used caddy. check https://github.com/openspeedtest/Speed-Test/issues/4#issuecomment-1229157193
speed.example.com {

        reverse_proxy http://localhost:8086 {
                buffer_requests
                max_buffer_size 50MiB
        }
}

@bt90
Check https://github.com/openspeedtest/Speed-Test/issues/67
Also we need to addd buffer_responses
         reverse_proxy http://localhost:3000 {
         buffer_requests
         buffer_responses
         flush_interval -1
         max_buffer_size 35MiB
        }


Publish code coverage

Please publish your code coverage results to Code Climate

Code coverage results should be coming soon.

Coverage is  now reported, closing this issue.


update com.google.zxing

once #5 is complete then focus on getting the code base to work with a more recent version of com.google.zxing
It's currently 1.7 so any update will require code changes

updating zxing to 3.4.1 is a fairly small change