Assets path not replaced by _svelte_kit_assets in preview

Describe the bug
One of the stated use cases for the config.kit.paths.assets config var is for the case where assets will be hosted on a separate domain to the site itself.
The docs state:

If a value for config.kit.paths.assets is specified, it will be replaced with '/_svelte_kit_assets' during vite dev or vite preview, since the assets don't yet live at their eventual URL.

That is what happens with vite dev. When running vite preview however, the value from config is still used. The only relevant previous issue I could find is #1154.
Reproduction
https://github.com/drzax/assets-repro
Logs
No response
System Info
System:
    OS: macOS 14.4.1
    CPU: (12) arm64 Apple M2 Max
    Memory: 839.94 MB / 32.00 GB
    Shell: 5.2.26 - /opt/homebrew/bin/bash
  Binaries:
    Node: 21.7.1 - /opt/homebrew/bin/node
    npm: 10.5.0 - /opt/homebrew/bin/npm
    pnpm: 8.15.7 - /opt/homebrew/bin/pnpm
    bun: 1.0.36 - /opt/homebrew/bin/bun
  Browsers:
    Chrome: 124.0.6367.119
    Edge: 124.0.2478.67
    Safari: 17.4.1
  npmPackages:
    @sveltejs/adapter-auto: ^3.0.0 => 3.2.0
    @sveltejs/adapter-static: ^3.0.1 => 3.0.1
    @sveltejs/kit: ^2.0.0 => 2.5.7
    @sveltejs/vite-plugin-svelte: ^3.0.0 => 3.1.0
    svelte: ^4.2.7 => 4.2.15
    vite: ^5.0.3 => 5.2.10

Severity
blocking all usage of SvelteKit
Additional Information
We need to be able to debug production builds locally and this is currently blocking that.

I think there is an error in documentation because during the build time the path of stylesheets are created and if we have an path.assets available then it will be added in the path of the stylesheets
here since the path of stylesheet is something like app/immutable/assets/something.css, so if condition will not get executed and our path will get prefixed with path.assets(line 212)
https://github.com/sveltejs/kit/blob/0fee61c571db253921d1a6503fc879235c6f3b60/packages/kit/src/runtime/server/page/render.js#L205-L213
and it will get statically added in the html markup
https://github.com/sveltejs/kit/blob/0fee61c571db253921d1a6503fc879235c6f3b60/packages/kit/src/runtime/server/page/render.js#L226-L243
so IMO an easy solution will to just comment out the assets path line during local build.

We should specify that they use the actual value if the page is prerendered. Otherwise, it does use the '/_svelte_kit_assets' value as the documentation suggests.

https://svelte.dev/docs/kit/$app-paths#assets

so how to resolve. i always get /_svelte_kit_assets

i dont know. so what i need do?


Switching themes refreshes the page

Bug description
YouTube is forcing a page refresh when the theme changes
Steps to reproduce the behavior

Set the appearance setting to dark or light in the ambient light setting menu, make sure that the theme is set to the opposite theme in the YouTube settings menu
When the theme changes, YouTube refreshes the page to force the theme set by YouTube

Browser
Chrome, Microsoft Edge, Opera, Firefox
Operating system
Windows, Apple macOS, Linux, Other
Extension version
2.37.24
The bug still happens in these conditions

[X] The bug still persist when I disable all other extensions (ex. in incognito mode with only this extension enabled)
[X] When I logged out of my YouTube account (ex. in incognito mode)
[X] In incognito mode

Additional context and/or screenshots
No response

Cause: YouTube has deprecated the flag kevlar_refresh_on_theme_change and instead decided to now always refresh the page.


Local PHPCS

This plugin already has PHP_CodeSniffer as a dependency, but the project itself should also be checked against code standards.
While PSR-2 is already included, it would be useful to also check that the code supports down to the PHP 5.3 version specified in the Travis CI config file.
The inclusion of the script is so that those developing this repo can easily register the PHPCompatibility standard.
This is a prelude to #39.

Let me begin by stating that I am not opposed to this. It makes sense and if there are no major trade-offs I don't see any reason why not to merge this.
I don't have time to discuss this with @frenck until after the weekend, so we'll get back to you in the coming week.

Approved, will update VersionEye to allow merging.


Unresponsive navbar

🐛 Bug Report

The navbar is not responsive at mobile view
Contact and login page don't have the same effect on toggle view

Add relevant screenshot or video (if any)
Not responsive:

Different Effects:

/assign

@harshita2216 Please label the issue so I can work upon this

please assign this issue to me. I will surely complete this.

please assign this issue to me. I will surely complete this.

Hey. This is already assigned at the moment. If the assigned person is unable to solve the issue for some reason, we'll be considering you next!
Thanks, @nik464.


Help command not working in Chrome browser

I'm using this jsconsole from chrome web browser and onload it shows that I can use help command to display helpful command list but it's not working. here is attached image:

For any misuse or my-side error you can comment @remy.

Thanks @F-loat update docs yet there are some that says that we only have to type help not :help

fixed only issue remaining is to update docs for those typos


Fix "Got packets our of order" errors on connect

When trying to upgrade to Trilogy 2.8.0, my application started raising errors when establishing connections to our database:
1156: Got packets out of order

Bisecting the changes between 2.7.0 and 2.8.0 indicated that the change to remove sequence number hardcoding introduced the bug.
Unfortunately, the issue was not easily reproducible locally, so I added a printf statement to try to understand what sequence number was being used instead of the previously hardcoded 1 (or 2). This log showed that in failure cases the sequence number was 0.
After that, adding more printfs helped provide a clearer picture of the sequence of events when the incorrect sequence number is used:
trilogy=init seq=0
trilogy-pre-try_connect seq=0
trilogy-connect_recv seq_was=0
trilogy-connect_recv seq=0
trilogy-connect_recv-read_packet seq=0
trilogy-connect_recv seq_was=0
trilogy-connect_recv seq=0
trilogy-connect_recv-read_packet seq=1
trilogy-connect_recv-seq_was=1
trilogy-connect_recv seq=0
trilogy-connect_recv-read_packet seq=0
trilogy-connect_recv-parse_handshake seq=0
trilogy=auth_send use_ssl=0, seq=0

My understanding of what happens here is that trilogy_connect_recv is getting called 3 times in the while loop inside try_connect.
The first time, it sets the packet_parser's sequence_number to 0 before it calls read_packet but only reads some amount up to the packet's sequence_number before exiting with TRILOGY_AGAIN.
trilogy_connect_recv gets called a second time, and again it sets the packet_parser's sequence_number to 0. This time read_packet consumes the packet's sequence_number and so packet_parser's sequence_number get incremented. However, this iteration also exits with TRILOGY_AGAIN before the packet is finished.
trilogy_connect_recv is then called a third time, and again it sets the packet_parser's sequence_number to 0. read_packet finally finishes consuming the packet and this iteration is finally able to parse the handshake from the completed packet.
Since the sequence_number is being reset on each loop, auth_send ends up incorrectly using a sequence number of 0 instead of 1 (or 2). Therefore it seems incorrect for each call to trilogy_connect_recv to reset the sequence_number since it is not guaranteed that the last call will be the one that consumes the handshake's sequence_numer and increments the value for use in auth_send.

I'm not sure how best to test this 😅
My thinking would be a test could open a connection to a socket, write part of the handshake packet (past the seq number) to the socket, call trilogy_connect_recv, finish writing the handshake packet, call trilogy_connect_recv again, and then assert the seq number ends up as 1. However I'm not sure exactly how I would do that in the C test suite or if that's a reasonable test to write.

I can't really see a way to end up in the situation where we'd re-call and end up anywhere near here while needing the reset (i.e. not on a fresh connection that's already zeroed).
But in principle, I think what makes the connect flow unique is the fact that its 'send' function doesn't actually send anything: I haven't checked the docs, but I guess the protocol says the server talks first.
So, every other packet type, prior to 'recv', gets its sequence reset by its builder, in its 'send', but this one does not.
Thus [even though I can't see any reason it wouldn't be safe to just delete it], I claim it would be most consistent for us to instead move this line up a bit, into trilogy_connect_send_socket: that's the moment that we send a zero-length sequence, skipping the builder involvement that would otherwise handle it.

That makes sense to me 👍 Happy to squash as well if you'd prefer

Thanks @skipkayhil!


Support functions for process lambda rework

Support functions for process lambda rework (see cirrus-geo/cirrus-geo#103).

Codecov Report

Merging #50 (f92c263) into main (4d491f1) will increase coverage by 2.68%.
The diff coverage is 90.90%.

@@            Coverage Diff             @@
##             main      #50      +/-   ##
==========================================
+ Coverage   73.01%   75.70%   +2.68%
==========================================
  Files           5        6       +1
  Lines         630      675      +45
==========================================
+ Hits          460      511      +51
+ Misses        170      164       -6

Impacted Files
Coverage Δ

src/cirrus/lib/logging.py
83.33% <42.85%> (-16.67%)
:arrow_down:

src/cirrus/lib/process_payload.py
50.00% <71.42%> (-0.63%)
:arrow_down:

src/cirrus/lib/errors.py
100.00% <100.00%> (ø)

src/cirrus/lib/utils.py
85.12% <100.00%> (+17.62%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

I intended this branch to include all the work for the 0.8.0 release, but after further consideration I will break up each chunk of work into a separate PR.

Note that the name of this branch is misleading; I intended to collect all changes for 0.8.0 here, but looking at the process ones and thinking about the rest, I think splitting them up is easy enough and make reviewing better.

Replaced by #56 per misleading branch name.


Can't run  classify_digits.py

Hi all,
I can't seem to be able to run the example. After installation with pip I got:
ImportError: No module named 'sklearn_hierarchical_classification.tests'
When I cloned the repo and manually copied tests to my venv, I got:
Classification Report:
               precision    recall  f1-score   support

           1       1.00      1.00      1.00        37
           3       1.00      1.00      1.00        41
           7       1.00      1.00      1.00        30
           8       0.97      1.00      0.99        36
           9       1.00      0.97      0.99        36

    accuracy                           0.99       180
   macro avg       0.99      0.99      0.99       180
weighted avg       0.99      0.99      0.99       180

Traceback (most recent call last):
  File "../sklearn-hierarchical-classification/examples/classify_digits.py", line 87, in <module>
    classify_digits()
  File "../sklearn-hierarchical-classification/examples/classify_digits.py", line 81, in classify_digits
    graph_,
  File "/r/tcal/work/maziar/work/zothers/cesar/aidarc/env/lib/python3.5/site-packages/sklearn_hierarchical_classification/metrics.py", line 234, in h_fbeta_score
    hP = h_precision_score(y_true, y_pred, class_hierarchy)
  File "/r/tcal/work/maziar/work/zothers/cesar/aidarc/env/lib/python3.5/site-packages/sklearn_hierarchical_classification/metrics.py", line 141, in h_precision_score
    y_true_ = fill_ancestors(y_true, graph=class_hierarchy)
  File "/r/tcal/work/maziar/work/zothers/cesar/aidarc/env/lib/python3.5/site-packages/sklearn_hierarchical_classification/metrics.py", line 102, in fill_ancestors
    y_[tuple(np.meshgrid(ix_rows, ancestors))] = 1
IndexError: arrays used as indices must be of integer (or boolean) type

Hi
two things,

how you copied? which env, etc.
try cloning, then pip install -e .

The second thing is basically here:
https://colab.research.google.com/drive/1JR9Y92LWOcsNf5z9oRns9vF90hzSNDkq#scrollTo=hTCuqtgbqIAf&forceEdit=true&offline=true&sandboxMode=true
In the colab env it will not work at first, you need to restart.
Resuming:

create env
activate env
git clone ...
pip install -e .

Hope this helps!

Thanks @fbenites.

how you copied? which env, etc.

I cloned the repo and then copied the "tests" folder of repo into my created virtual environment. This got rid of the first error.
For the second error, I was not using colab or jupyter environment. After reading your reply, I commented out the last part of example code and it worked.
Thanks again.

Marking as resolved per last comment! thanks @fbenites


feature: after the cluster deployed ,add retry when send the kubeconf, to avoid failures such as intermittent network disconnection

as title

It is expected to take time to deal with it in September

i met the same issue. Check cluster is ok:


Implemented function for summing a list of expressionables

A preliminary test showed me that the speed-up could be significant doing pl.concat on all the expresionnables' data instead of one by one as in an explicit sum e1 + e2 + e3.
In [10]: m.z = pf.Variable(pl.DataFrame({"p": np.arange(2000)}), pl.DataFrame({"t": np.arange(200)}))
In [11]: %timeit m.x + m.y + m.z
586 ms ± 40.9 ms per loop (mean ± std. dev. of 7 runs, 1 loop each)
In [12]: %timeit pl.concat([m.x.to_expr().data + m.y.to_expr().data + m.z.to_expr().data], how="vertical_relaxed")
85.8 ms ± 4.11 ms per loop (mean ± std. dev. of 7 runs, 10 loops each)

This PR proposes a function sum_list(Iterable[SupportsToExpr]) that implements this.

Gracias! Me parece bien. The size of the speedup is larger than I would've guessed so this is great! Eventually I'll try to re-route this __add__ to use this as well (to avoid duplicated code) and I might suggest renaming some of the api (I'm thinking perhaps the other should be called sum_over and this should be called sum or quicksum)

Great! I think the naming you suggests makes sense. I am also curious to see how you would modify __add__ to work with a sequence of additions. I guess you could have self maintain a list of other Expression object that has been added to it, and only do the final sum over the list when it is needed. Like a lazy evaluation.


Fix build workflow

Description

Type of change

[ ] Docs change / dependency upgrade
[x] Configuration / tooling changes
[ ] Refactoring
[x] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)
[ ] Requires changes in customer code

High-level change(s) description - from the user's perspective

Related Issue(s)
Fixes
Related pull request(s)

we definitely want to remove the publishing step? I don't see it added anywhere

You mean for the chain abstraction sdk? There was a duplicate action, publish happens here: https://github.com/connext/monorepo/pull/4269/files#diff-22f49dea8896855b65ec7f98c2dccafa1b7317f851952fc98ee59f29d84f8af5R227


AdditionalUrls for the MXChip

Added AdditionalUrls for the MXChip to appear in the Arduino Board Manager

@marknhenry : Thanks for your contribution! The author(s) have been notified to review your proposed change.


Fixes Issue Bug Datetime Format

Accounts for the fact that pydriller commits and GitHub issues use different datetime formats and converts both to UTC format before comparing them. This caused an issue during the suspect filtering of issue event bugs.

Is there a specific reason why you need an external time library? Python's datetime should be able to handle timezones.


latest update to conda and I started getting this issue:  TypeError: slice indices must be integers or None or have an index method

I was able to execute the code on theano0.9.0 on windows and then I update the latest conda package: conda update --all and this issue..
... training
Process Process-1:
Traceback (most recent call last):
File "C:\Users\arjun\Anaconda2\lib\multiprocessing\process.py", line 258, in _bootstrap
self.run()
File "C:\Users\arjun\Anaconda2\lib\multiprocessing\process.py", line 114, in run
self._target(*self._args, **self._kwargs)
File "D:\Rough\random\xxx\xxxxxyyyyyy\xx\yy\xxxxxyyyy\train.py", line 127, in train_net
recv_queue=load_recv_queue)
File "D:\Rough\random\xxx\xxxxxyyyyyy\xx\yy\xxxxxyyyy\train_funcs.py", line 166, in train_model_wrap
batch_img = crop_and_mirror(batch_img, param_rand, flag_batch=flag_batch)
File "D:\Rough\random\xxx\xxxxxyyyyyy\xx\yy\xxxxxyyyy\proc_load.py", line 75, in crop_and_mirror
crop_ys:crop_ys + cropsize]
TypeError: slice indices must be integers or None or have an index method

@aryanbhardwaj
Which backend are you using?
Maybe you want to try the pygpu branch to use the new Theano backend.
There are some commits addressing this int conversion in that branch.

@hma02
Thank you for the quick reply, I am using "Theano 0.9.0 ".


Bad behavior in nested context managers or exception handling

I tried to run pychroot 0.10.4 inside a context manager that mounts and umounts a filesystem using subprocess.run, and the result is odd: the unmount call fails because the filesystem is busy, and the context ending method is called multiple times. The same thing happens when calling pychroot inside an equivalent try/finally block.
My initial attempt was on a filesystem containing a valid OS tree, but this simpler example illustrates what's happening:
print("mount")
subprocess.run(["/bin/mount", "-ttmpfs", "none", "/mnt"])

try:
    with contextlib.suppress(SystemExit), pychroot.Chroot("/mnt"):
        pass
finally:
    print("finally umount")
    subprocess.run(["/bin/umount", "/mnt"])

The snippet above returns:
mount
finally umount
umount: /mnt: target is busy.
finally umount
Traceback (most recent call last):
  File "./w2.py", line 16, in <module>
    subprocess.run(["/bin/umount", "/mnt"])
  File "/usr/lib/python3.8/subprocess.py", line 489, in run
    with Popen(*popenargs, **kwargs) as process:
  File "/usr/lib/python3.8/subprocess.py", line 854, in __init__
    self._execute_child(args, executable, preexec_fn, close_fds,
  File "/usr/lib/python3.8/subprocess.py", line 1637, in _execute_child
    self.pid = _posixsubprocess.fork_exec(
OSError: [Errno 12] Cannot allocate memory
finally umount

Note that the finally block runs three times and actually works in the third attempt, but the result is very ugly. Is that a known problem or expected behavior when using pychroot? Any advice on how to handle this situation?

The reason for the multiple finally handlers is that they're running in different processes, so exiting those that are not the one we were previously running seems to solve this issue. Thanks @cjp256 for investigating this!

Well, ideally this process leak should be handled internally by pychroot so I'll keep this open.


Copy/paste from Windows unreliable

Steps to reproduce
Copy text from Visual Studio or Notepad and try to paste it in your app.
Sometimes it works and sometimes it does not. You end up pasting nothing or an older version of the clipboard content.
Though it seems I found a workaround by doing Win+V to display the clipboard history and clicking the most recent entry.
✔ Expected Behavior
Current clipboard content should be pasted
❌ Actual Behavior
Outdated clipboard content is pasted
Other Software
Fulguris Web Browser
Please specify the version of Windows Subsystem for Android
2307.40000.3.0

I've been seeing similar weird copy and paste behavior - it's been duplicating the paste input into WSA applications.  I filed feedback here: https://aka.ms/AAnm4g0

I've had those duplicated paste issues myself lately. It did not used to do that when I filled that report.

I was doing some additional investigation into a different bug that was reported against my application on WSA and it looks like what is happening is that WSA and Windows are each separately pasting in text - the first copy carries with it all of the formatting applied to the original text source (bolding, italics, etc), while the second is just the plain text instead.

Would be nice to see progress on that issue guys.

I had an issue where I couldn't copy and paste from Windows into an app. Restarting the subsystem fixed the issue. Not sure if this was a simple one-time thing or part of the same issue.


Project Title Consideration: OpenUlmus vs. ULMUS:LP

Recommendation
As an alteranative, I would like to recommend ULMS:LP instead of OpenUlmus
(LP = Learning Platform)
If Ulmus is going to be a platform which may eventually offer paid PaaS services (and support...?), does it make sense to include 'Open' in the name?
Observation
As we start knocking out the items on our OpenUlmus Beta Release, the actual branding of the phrase 'OpenUlmus' keeps coming back to my head in a less than positive connotation.
I believe a more brandable name may create more opportunities for current Sponsorship and greater opportunities in the future for sustainability.
Reasoning
Brand Recognition
For those familiar with the ELMS:LN SaaS project, OpenUlmus seems to only vaguely have a relation, which could detract from possible Sponsorship.
Long-Term Sustainability
Based on what I've learned since starting to organization some of the Proj Mgmt documentation, the end-of-the-line goal is for the 'Ulmus' system to be a self-funded and sustainable PaaS system (possibly even with paid Support via Mentor/Mentee pairs who would be paid via OpenCollective...?).
Naming Connotations
The 'Open' in the name 'OpenUlmus' gives the connotation of providing an OpenSource project which is re-usable (like Node.js, Drupal, WordPress, Python, etc.).  However, ELMS:LN is the OpenSource project. Instead, it seems like Ulmus should be a managed platform where an instance of the project exists.
For comparison, WordPress has WordPress.org (for the OS and 'Community' version of the software) and WordPress.com for the Paid/Enterprise version of the software. Ulmus' model is a little difference, due to the goal/aim of keeping everything transparent and open, but the ideals are the same.

Voting Comment - For Leadership Team
Please add your votes here (or comments below)

+1 = Agree
-1 = Disagree
Confused = See comments

hmm...
a possible resolution:
ULMUS:LP (not in love w/ LP btw but it makes sense) - is the thing that can help power and monetize a community
openulmus - an open deployment, white-labeled much like the other ones but who's sole focus is on being completely open

I've never been bothered with sites/brands with the name 'open' (which you probably are aware since most of our platforms or partners are 'opensomething'). Most of which either are a for-profit biz (i.e. Open Collective) and/or have some sort of service model to help sustain their OSS software - think

Open Social https://www.getopensocial.com/pricing
and another SaaS offering coming to your town (when we have an actual product) http://getopenproducer.com/

Also... assuming we'll be releasing openulmus as a stand-alone product/drupal distro... if we don't run our own SaaS offering.. somebody else will.
Ulmus was something I really didn't get, but when you check out https://en.wikipedia.org/wiki/Elm it totally makes sense!
After rambling here and thinking about it... I feel really good about moving forward with the name and vision intact!

Ideas: ULMUS:TN (Ulmus Training Network)


MIxS 5 urogenital disorder vs urine/urogenital tract disorder

In MIxS 5, urogenital disorder has the definition:
History   of urogenitaltract disorders; can include multiple disorders

and  urine/urogenital tract disorder has the definition:
History   of urogenital disorders, can include multiple disorders

However, when I look these up on the internet both terms seem to be about the same thing. Does anyone know the difference between urogenital disorder and urogenital tract disorder?
cc @lschriml @cmungall @only1chunts @ramonawalls

These are two distinct terms.
We can improve the definitions to clarify the distinction, and to align with other MIxS disease terms
Review notes:
The genitourinary system, or urogenital system, are the organs of the reproductive system and the urinary system. In anatomy, the system is subdivided into tracts. The urogenital system - is divided into the urinary tract and the genital tract.
Further review of other 'disorder' terms across the packages, I've noted below MIxS 'disorder' terms, where their definitions can be updated to point users to the associated disease terms.
It would be correct to change the names of these terms to 'disease' rather than 'disorder', however, as these Package Item names have been in place for many years, I would instead just update the definition to provide more detailed guidance to users.
I've made these updates in the MIxS 6 term updates google doc.
Cheers,
Lynn
NOTES:
In human vaginal package:
[row 397]
urogenit_disord
urogenital disorder
definition:  History of urogenital disorders, can include multiple disorders
--> adding to the definition:
The terms should be chosen from the DO (Human Disease Ontology) at http://www.disease-ontology.org, reproductive system disease (https://disease-ontology.org/?id=DOID:15) or urinary system disease (https://disease-ontology.org/?id=DOID:18).
In human_associated package:
[row 275]
urogenit_tract_disor
urine/urogenital tract disorder
definition:  History of urogenitaltract disorders; can include multiple disorders
  --> definition update, urogenital tract should be two words [DONE]
     Also, looking at the usage of this term, it has been used to record UTIs

[row 274]
kidney_disord
urine/kidney disorder
definition: History of kidney disorders; can include multiple disorders
[rows 266-268]
pulmonary_disord
lung/pulmonary disorder
definition: History of pulmonary disorders; can include multiple disorders
nose_throat_disord
lung/nose-throat disorder
definition: History of nose-throat disorders; can include multiple disorders
blood_blood_disord
blood/blood disorder
definition: History of blood disorders; can include multiple disorders
History of blood disorders; can include multiple disorders.  The terms should be chosen from the DO (Human Disease Ontology) at http://www.disease-ontology.org, hematopoietic system disease (https://disease-ontology.org/?id=DOID:74).
human-gut package
[row 287]
gastrointest_disord
gastrointestinal tract disorder
definition: History of gastrointestinal tract disorders; can include multiple disorders
[row 288]
liver_disord
liver disorder
definition: History of liver disorders; can include multiple disorders
human-oral package
[row 321]
nose_mouth_teeth_throat_disord
nose/mouth/teeth/throat disorder
definition: History of nose/mouth/teeth/throat disorders; can include multiple disorders
human-skin package
[row 354]
dermatology_disord
dermatology disorder
definition: History of dermatology disorders; can include multiple disorders
human vaginal package
[row 396]
gynecologic_disord
gynecological disorder
definition: History of gynecological disorders; can include multiple disorders

Status: already updated in MIxS v6.0, 'MIxS6 packages - to edit'


Support using aws CLI's eks update-kubeconfig command

👋🏽 Hey @koslib what are your thoughts on leveraging update-kubeconfig as per Amazon's Create kubeconfig documentation? I'd be happy to contribute if it's something you're interested in.
We'd be able to optionally use this over KUBE_CONFIG_DATA using a few new arguments under with: like so:

cluster_name which is passed into the update-kubeconfig command's --name argument.
update_kubeconfig_path which if supplied is passed into the update-kubeconfig command's --kubeconfig argument.

# generates kubeconfig in the default kubeconfig location
aws eks --region us-east-1 update-kubeconfig --name my-staging-cluster

# generates kubeconfig in the specified location
aws eks --region us-east-1 update-kubeconfig --name my-staging-cluster --kubeconfig kubeconfig-staging

Closing since this appears to be a functional way to add a simple step to accomplish my goal: https://github.com/WyriHaximus/github-action-helm3/issues/18#issuecomment-698582423
      - name: Generate kubeconfig
        id: generate-kubeconfig
        run: |-
          aws eks --region ${{ env.AWS_REGION }} update-kubeconfig --name ${{ env.CLUSTER_NAME }}
          KUBECONFIG="$(cat ~/.kube/config)"
          KUBECONFIG="${KUBECONFIG//'%'/'%25'}"
          KUBECONFIG="${KUBECONFIG//$'\n'/'%0A'}"
          KUBECONFIG="${KUBECONFIG//$'\r'/'%0D'}"
          echo "::set-output name=kubeconfig::$KUBECONFIG"

Since similar to how it is described in that issue this is a docker action I'll close this out. 😄

Hello @erran, this is actually great stuff! I hadn't thought of that at all to be honest, but it seems like a great option to have. Do you think contributing docs in this action for this would be useful for other users too? If yes, feel free to send in a PR and we can discuss further if "internal" support for this would make more sense in the future!
Thanks for the great idea once again!

I’d be happy to contribute a docs update around this and I’ll make sure to include how I was able to use the output with this action. 😃

Dropping this as a note to myself/others for tracking — I also found https://github.com/actions-hub/gcloud/issues/11 when I got an error from this action base64: truncated base64 input. My above snippet will need to be updated to base64 encode the output.

Sorry for not updating anyone sooner. In my use case I ended up using the built-in helm binary instead of this action due to issues using the KUBECONFIG environment variable regardless of what I tried with base64 decoding/replacing newlines.


Update platform capability to match the w3c spec

According to the spec, the capability platform has changed :

"platformName"
Lowercase name of the current platform as a string.

By the way, I think we could remove Windows XP since some drivers doesn't support it, as well as Microsoft..

Hi @paulbriton and thanks for the contribution!
FYI this pull request is now intentionally on hold. We cannot simply change features to support W3C protocol, as it could break current OSS JsonWire protocol (and won't be supported there either).
So this will be solved as part of #469 , where this will be part of W3C adapter (and will be untouched for JsonWire protocol).
So I'm keeping this PR open for now, will take care of it later.

any updates on this? there are many errors with UnknownCommandException with latest versions of Geckodriver, Firefox and Selenium web driver.
Any plan in near future or solutions to solve this errors
https://github.com/facebook/php-webdriver/issues/580

@dunglas , do you think this should be meged into #560 or done separately? Or this should be part of the Adapter layer?

@OndraM I've not looked at capabilities yet, I've no idea. If this change is compatible with Chrome, we may merge it separately?

This was superseded by https://github.com/facebook/php-webdriver/pull/678 - capabilities should be W3C compatible in upcoming release 1.8.0 :tada: .
Thanks @paulbriton and sorry for letting you wait :)


Import InceptionV3 throws "Invalid GraphDef" error

Hi,
I've tried to import the InceptionV3 using the following code:
var model = File.ReadAllBytes(modelFile);
var graph = new TFGraph();
graph.Import(model, "");
-- Unhandled exception of type TFException  "Invalid GraphDef"
It looks like for all graphs bigger than approx 70 Mb this exception is thrown.
Thx

Yeah, that seems to be a common problem with Tensorflow and Protobuf.   I believe someone suggested a way somewhere to recompile the underlying protocol buffer implementation in libtensorflow with a larger buffer size.   I do not recall where I saw that.
This is what stops one of our samples as well, the file is too large.

This is the tensorflow issue, it should be addressed if you upgrade your TensorFlow runtime:
https://github.com/tensorflow/tensorflow/issues/582

I have the same error, but my model less then 64MB.
How can i be sure, that TensorFlowSharp bindings are compatible with savedmodel file i have got?

My model is only 84KB and I have another that's 69KB and I get this error on both of them.  Latest version of TensorFlowSharp available in NuGet as of 2019-02-01 and TensorFlow 1.12.0.  I've not been able to get TensorFlowSharp to work at all.  Is there an alternative way to use a TensorFlow .pb model file from a C# app?

I have the same problem. I made a pb file with a teachable machine, but it seems to be a compatibility problem. I think it's 2.3 version of pb. Did you find a solution?

I recommend you now use TensorFlow.NET which is being actively developed.

I recommend you now use TensorFlow.NET which is being actively developed.

 Tensorflowsharp seems a lot easier to deal with, but I'm also running into the TFException "Invalid GraphDef" issue. You said this has to do with the version of TensorFlow used to create the model? Any tips for me? (I'm running a python project to train data, then I want to read it in Unity)


Update .eslintignore

Description:
Describe your changes.
Related issue:
Add link to the related issue.
Check list:

[x] Mark if documentation changes are required.
[ ] Mark if tests were added or updated to cover the changes.

Help me, teacher


if a group does not exists login will fail

If an active directory user has group which does not exist in the database it will not be created and the login will fail.

should be closed with release 0.2.0

is fixed by 0.2.1


Can't turn on GPU plugin using Pop!_OS

Describe the bug
Turning the GPU plugin turns it off again, as if my computer doesn't meet the requirements.
Environment (please complete the following information):

OS: Pop!_OS (Linux)
RuneLite version: 1.8.10
Launcher version: 2.1.5
GPU: Geforce GTX 1650

My graphics are set to always use nvidia graphics. I'm not sure if more info is needed so feel free to ask.

Reinstalling fixed the issue for me somehow


Check for a data attribute to turn off the video player

When using the govspeak component, all links to YouTube are converted to an embedded video player.
This PR allows links to YouTube which aren't converted to an embedded player.
Check for a data attribute data-youtube-player if its value is off
then don’t convert that link into an embedded player.
For example:
<a href="http://www.youtube.com/youtubevidid" data-youtube-player="off">
Watch this related video
</a>

Here's a demo:
http://codepen.io/gemmaleigh/pen/qZJmKB

cc. @AndrewVos @fofr @thehenster.

Is data-youtube-player an accepted attribute when publishing HTML in markdown in the service manual publisher?

lgtm

@fofr Not sure if I understand your question, but yes it's possible to add this sort of html to govspeak. See the first link here:  https://www-origin.integration.publishing.service.gov.uk/service-manual/spending-money-on-your-service/apply-for-approval-to-spend-money-on-a-service

I've updated the JS and here's a preview: http://codepen.io/gemmaleigh/pen/MyPqBm

Could we include a jasmine spec for the feature?

Hi @fofr, I've added a jasmine spec to test for links to youtube - either to be external links, or converted to a player.

Could someone with write access please merge this one?

cc. @dsingleton, @tvararu, @fofr.

Master is currently failing on CI. Could that be caused by this PR?
+ RAILS_ENV=test
+ bundle exec rake spec:javascript
Running `"phantomjs" "/home/jenkins/bundles/static_frontend_schema_tests/ruby/2.2.0/gems/jasmine-rails-0.10.8/lib/jasmine_rails/../assets/javascripts/jasmine-runner.js" "file:///home/jenkins/workspace/static_frontend_schema_tests/tmp/jasmine/runner.html?spec="`
Running: file:///home/jenkins/workspace/static_frontend_schema_tests/tmp/jasmine/runner.html?spec=
Starting...
Links to YouTube in govspeak content A YouTube link to be converted to an embedded player does not have a data attribute - data-youtube-player
  TypeError: 'null' is not an object (evaluating 't.container') in file:///home/jenkins/workspace/static_frontend_schema_tests/tmp/jasmine/static/jasmine-specs.js (line 14601)
    TypeError: 'null' is not an object (evaluating 't.container')
    at file:///home/jenkins/workspace/static_frontend_schema_tests/tmp/jasmine/static/jasmine-specs.js:14601
    at file:///home/jenkins/workspace/static_frontend_schema_tests/tmp/jasmine/static/jasmine-specs.js:14601
    at j (file:///home/jenkins/workspace/static_frontend_schema_tests/tmp/jasmine/static/jasmine-specs.js:14601)
    at file:///home/jenkins/workspace/static_frontend_schema_tests/tmp/jasmine/static/jasmine-specs.js:14601

Looks like it. This was a PR from a forked repository so branch builds didn't run. @gemmaleigh or @tvararu Can you revert?

👉 https://github.com/alphagov/static/pull/782


#49 Add generics to Anagram exercise

Closes issue #49.
@masters3d Let me know what you think of the style. This is the most common formatting I've seen.

Looks good. That's what I was thinking.


NoneType Object has no attribute 'GetLayer'

Hey there,
first, thanks for the work you put into creat_utfgrids. It's just what I was looking for.
I, however, get the following message trying to convert a shapefile into a UTFGrid. The EPSG is 4326:
Traceback (most recent call last):
File "c:\create_utfgrids.py", line 108, in
create_utfgrids(shppath, minzoom, maxzoom, outdir, fields)
File "c:\create_utfgrids.py", line 34, in create_utfgrids
layer = ds.GetLayer(layernum)
AttributeError: 'NoneType' object has no attribute 'GetLayer'
Do you have an idea what the issue could be here?
Thanks a lot!

Sorry for that. It was a question I asked too fast. The error is 1) not related to your script and 2) due to the fact that the shapefile was corrupted... :/ I closed the issue.


Question about LBC dataset

Hi, dian! Thanks for releasing this wonderful work. Currently I have some questions about the setup of LBC dataset (for training the cheating agent).
In your original paper, the expert of the privileged agent is autopilot policy. So I think the agent used to collect dataset should be autopilot agent.
But according to the README of LBC in this repo, the dataset follows RAILS' setup procedure and seems to be built by (1) collecting dataset with random agents (2) Q learning (3) collecting dataset with Q-agent. This procedure is different as specified in the original paper.
I'm wondering if I've misunderstood something. If yes, please kindly correct me. If not, does these two types of dataset bring performance gap on the privileged agent?

Thanks for your answer!


Bug: iOS and macOS feed lists don’t match (using iCloud)

I’m using the macOS app and the iOS app, both using iCloud as syncing. I’ve been trying to understand why the number of unreads on iOS is different to macOS, and came across this problem.
As an example, the first 10 feeds in my Subscriptions folder on macOS are as follows:

| More Than Human
| Peter Merholz
A Stick a Dog and a Box with Something In It
A Whole Lotta Nothing
Adactio: Journal
Adam Curtis Feed
Adam Greenfield
Addis Army Cricket
AI Weirdness
Alex McLean

The first 10 feeds in the same folder on iOS are as follows:

A Stick a Dog and a Box with Something In It
A Whole Lotta Nothing
Adactio: Journal
Adam Greenfield
Alex McLean
Applied Mythology
Articles on Smashing Magazine
Automatter
AVC
BLDGBLOG

Those aren't even close. Are you sure you are using the same Apple ID on your Mac as your iOS device?

Did you set up iCloud syncing in NetNewsWire? It’s not automatic — you have to go Preferences > Accounts and add an iCloud account.

Those aren't even close. Are you sure you are using the same Apple ID on your Mac as your iOS device?

Yup, definitely.

Did you set up iCloud syncing in NetNewsWire? It’s not automatic — you have to go Preferences > Accounts and add an iCloud account.

Yep, those are the steps I took.

I’m going to try

removing the iCloud account from iOS
exporting the subscriptions to OPML
removing the iCloud account from macOS
deleting the NetNewsWire files from iCloud, and
starting again.

OK, I did the above and loaded the OPML file back into my iCloud account (On My Mac is inactive). That gave me 10,000+ unreads, which I’ve marked all as read. I’ve re-added the iCloud account to iOS and it seems to have fixed it!

I have no idea what happened there. I've never seen anything like it before.
Since you got it resolved and there isn't any data to analyze, I going to call this one a fluke and close the issue.


[Rust]  Can not group by boolean columns (add  boolean to valid keys of groupBy)

Note: migrated from original JIRA: https://issues.apache.org/jira/browse/ARROW-9382
Currently we do not support boolean columns on groupBy.
Here is a reproducer:
{code}
alamb@MacBook-Pro:~/Software/arrow/rust$ echo "false" > /tmp/foo.csv
alamb@MacBook-Pro:~/Software/arrow/rust$ cargo run --bin datafusion-cli
Finished dev [unoptimized + debuginfo] target(s) in 0.14s
Running target/debug/datafusion-cli

create external table test(c1 boolean) stored as CSV location '/tmp/foo.csv';
0 rows in set. Query took 0 seconds.
select count(c1), c1 from test group by c1;
ArrowError(ExternalError(ExecutionError("Unsupported GROUP BY data type")))
{code}

The expected result is
{code}
1, false
{code}

Comment from Jorge Leitão(jorgecarleitao) @ 2020-07-09T05:49:23.958+0000:
PR: https://github.com/apache/arrow/pull/7687

This has been since fixed:
❯ create external table test(c1 boolean) stored as CSV location '/tmp/foo.csv';
0 rows in set. Query took 0.002 seconds.
❯ select count(c1), c1 from test group by c1;
+----------------+-------+
| COUNT(test.c1) | c1    |
+----------------+-------+
| 1              | false |
+----------------+-------+
1 row in set. Query took 0.017 seconds.


FlowAccumulationFullWorkflow not ignoring 'No Data'

When running the 'FlowAccumulationFullWorkflow' with a geotiff DEM input,  the flow pointer and flow accumulation processes produce data in the DEM 'NoData' areas.  The 'NoData' areas are recognized in both ArcGIS and GDAL.  This particular issue does not appear in WhiteboxGAT when using the same input DEM.
I did not test on the independent d8 flow pointer and d8 flow accumulation functions.
OS: Windows 10 Pro
Python Version: 3.60
Whitebox Tools Version: 0.70

I just ran the tool on a large data set with NoData sections and it seems to have worked okay. The file was in Whitebox raster format. The NoData sections were recognized.


How can i get the sentence representations from SBERT-WK

I would like to use the representations for a  custom data in downstream clustering. But i don't see how i can obtain the sentence representations using your method. Any help will be appreciated. Thanks in advance..

Hi John,
You can simply run ./example.sh to see the example for extracting sentence representation for an input sentence.
It should be easily edited for your specific task.

@BinWang28 thank you for responding. I have already tried the example.sh file and run it before. The default setting is to ask for 2 sentences and return a similarity score. However, I have 5000 record or tuples and would not enter this manually for each sentence. Moreover, what I am looking for are the sentence representations themselves, i.e., sentence vectors of my records and not the similarity score. Could elaborate a process in which the code could be modified? Thanks.

Hi John,
That's a good starting point if you can make the example code working. You do not need to to manually input all the sentences. What you need to do is (in python scripts):

Read all your 5000 records/sentences
Write a for loop to extract each of the record/sentence embeddings one by one. (simply modification on the example code)
Use the sentence embedding in the your applications


RES memory keeps on increasing and influxd crashes...

Using the influxd-1.2.0... The RES memory on that process is being increased gradually and finally influxd crashes....after a couple of hours.... Tried the patch v1.2.1-rc5.. too..but no use....
My system is a 32 core, 32 G RAM and Sles12 os...

@ambatigan Can you attach the saved curl output to the issue?  e.g. heap.txt, block.txt, etc..

Here is info that asked.. placed a gist here at https://gist.github.com/ambatigan/30b210c93d6b5faf73439da6dc8ee911

@ambatigan Can you run the same commands when RES is high and close to crashing?  The heap in these profiles in only 800MB.
Also, if it crashed was do you have a stack trace in the logs?

pl check the stack trace of .. two of the previous crash instances... at https://gist.github.com/ambatigan/63ce8939f5be940c778ad46a5334d714

the stack trace for another two similar instances...at https://gist.github.com/ambatigan/94abfb75736c51644bca18be212910ff

I'm used to have Influxdb OOM crashes...
Upgraded to 1.2 last week, and seeing huge Heap Idle usage and high CPU, while my usage is pretty basic :

telegraf on the same host
internal databe graphing
IoT sensors information

Here is the graph of the query :
SELECT mean("numSeries") FROM "database" WHERE $timeFilter GROUP BY time($interval), "database" fill(null)

As you can see I don't have much traffic...
Why is the Idle heap that huge ?
I'm running on Ec2 with low memory and it's close to crash...
I'll send crash log if it happen, but I would definitely like an explanation of why the Idle is so high, and what can be done to free this memory which is never used...
thanks

Please find the perf files..when the RES reached 1g+
block.txt
diagnostics.txt
heap.txt
goroutine.txt
iostat.txt
shards.txt
stats.txt
vars.txt

@ambatigan The heap in these snapshots is about 1.7GB.  I don't see anything unusual in these captures currently.  An OOM would occur when the heap is closer to 32GB.  Would you be able to grab these snapshot when the process RSS is closer to 32GB?
In the logs you attached, can you attach the full trace as well?  The snippet that is attached is not enough to determine what the cause might be.  It looks like there are two different types of crashes.  One is a fatal error: runtime: cannot allocate memory and another is unexpected fault address.

Another instance has come.. the RES has grown to huge memory.. to 3g...and the entire system has become unresponsive... Seems like it happened after executing a query from the webapp... We had to kill the influxd process....
block.txt
goroutine.txt
vars.txt
heap.txt
Seen an error in the log like - ERR: max-concurrent-queries limit exceeded(10, 10)
Warning: It is possible this error is due to not setting a database.
So..changed the value back to zero to disable the mx-concurrent-queries limit...
Also....got err : Error: max-select-point limit exceeed: (220566055/5000)
So changed its value back to zero...
Hmm... facing lot of pains...with influxd.. Anybody using it in production? Seems like influxd is not withstanding the exceptions from client end....rather than hanging itself down or needing itself to be killed.....

Have you checked for high-cardinality tags? These should be avoided (use fields instead).

pl give me some example configurations... thanks.

@ambatigan Can you describe how you are writing data and a little more about your env?

Are you overwriting points with the same timestamp?
Are you writing points into the past?
Are you deleting series or ranges of time?

The profiles show some work related to de-duplicating points in TSM files at query time which hints that you may be writing data in a way that is very expensive to query back.
It also looks like you have change the default data dir to something on /fnet/.  Can you describe how this filesystem is mounted?

Is this a directly attached SSD volume?
Is this using some kind of networked filesystem NFS, SAN, NAS?
Is this a RAID'd filesystem?

The config options you set are limits and will return an error when you exceed that limit.
max-concurrent-queries is config option to limit how many concurrent queries can be run at any given time.  If you set it to 10, then only 10 concurrent queries can be run and new ones will be prevented and return an error until one of the prior 10 completes.
max-select-point is a config option to limit how many points can be returned from a query.  If you set it to 5000, then it will return an error if more than 5000 points need to be returned.  In your case, you need tried to return 220M.
Can you list the queries you are running?  Returning 220M values in a single query seems odd and might hint that the OOMs you see could be due to a bad query.
If the process ever crashes, can you please attach the full stack trace from the logs.  Without that, we don't have much insight into what is causing it to crash.  From your prior comments, there are at least 2 different sources of a crashes that we need the traces from to investigate further.
If the influxd process is ever hung or unresponsive, please send it a sigquit signal which will cause it to crash with a stack trace and attach the full trace to this issue.

Here are the answers to your questions -
Are you overwriting points with the same timestamp? No.
Are you writing points into the past? At series level, I believe we are writing in ascending order by time. We can enable write trace to confirm.
Are you deleting series or ranges of time? No.

Is this a directly attached SSD volume? No. directly attached HDD.
Is this using some kind of networked filesystem NFS, SAN, NAS? No.
Is this a RAID'd filesystem? Yes.

Whenever we are trying to execute the below query from the console seeing the below output with error (the same query we are using in our app as well..)…
"SELECT sum(ms_000_099) as _100, sum(ms_100_199) as _200, sum(ms_200_299) as _300, sum(ms_300_399) as _400, sum(ms_400_499) as _500, sum(ms_500_599) as _600, sum(ms_600_699) as _700, sum(ms_700_799) as _800, sum(ms_800_899) as _900, sum(ms_900_999) as _1000, sum(ms_1000_inf) as _1100 FROM latency WHERE time >=<PHONE_NUMBER>738000000 and time <=<PHONE_NUMBER>738000000 AND flavor = 'onl_qa' GROUP BY time(900s)"
The console output is -
1488910500000000000 8195017<PHONE_NUMBER> 1966 2087 1658 1534 1433 1636 1161  9915
1488911400000000000 23726028<PHONE_NUMBER> 7044 5234 4848 4644 4589 4369 811   3734
1488912300000000000 21404314<PHONE_NUMBER> 5390 5105 4247 4721 5112 1289 22    83
1488913200000000000 11906048<PHONE_NUMBER> 2298 2317 2356 2303 2946
1488914100000000000 1025845  16452  121  194  178  112  34   125
1488915000000000000
1488915900000000000
1488916800000000000
1488917700000000000
1488918600000000000
1488919500000000000
1488920400000000000
1488921300000000000
1488922200000000000
1488923100000000000
1488924000000000000
1488924900000000000
1488925800000000000
1488926700000000000
1488927600000000000
1488928500000000000
1488929400000000000
1488930300000000000
1488931200000000000
1488932100000000000
1488933000000000000
1488933900000000000
1488934800000000000
1488935700000000000
1488936600000000000
1488937500000000000
1488938400000000000
1488939300000000000
1488940200000000000
1488941100000000000
1488942000000000000
1488942900000000000
1488943800000000000
1488944700000000000
1488945600000000000
1488946500000000000
1488947400000000000
1488948300000000000
1488949200000000000
1488950100000000000
1488951000000000000
1488951900000000000
1488952800000000000
1488953700000000000
ERR: max-select-point limit exceeed: (69026355/5000)
We expect only ~50 records for our above query, but we are seeing the error which has ~60M records.
Is it something like, it is getting 60M+ records before the GroupBy happens?
Btw, tried to run sigquit (kill -3) on the influx pid, but core file is not being formed though core pattern is configured correctly.. Dont know why.. But tried 'gcore' on the influx pid when it was unresponsive but core file is of very huge size (roughly 22G), i cant share it with you...

closing due to age. please try again with the latest version of influx and open a new issue if you are still have this problem.

exactly the same issue here with version 1.7.9.

I use influx only for my home automation and it crashes on regular bases. I will try now the 2 settings mentionned above:
max-concurrent-queries10
max-select-point 5000
Influx runs on a Synology NAS VMM and was rock solid before I updated from 1.6.4 to 1.7.9. Since then it is just a matter of times till it crashes the VMM.
=> Query average is at 12min!! according to the stats

I tried TSM and TSI and saw no difference.

Changing the settings and a restart of InfluxDB shows this...

So there seems to be a recursive request? A loop?
Avg Query duration went up to 69min but is going down rapidly.

Seems to work better, but this all does not look healthy... must be a bug in there.

and it crashes again... I try now to downgrade to version 1.6.4


[mobile] Cookie preferences button overlaps back-to-top button

Description
When viewing the carbon platform website on a mobile device, the cookie preferences button overlaps the back-to-top button and can be seen after scrolling down a bit on a page.

@jeanservaas @kingtraceyj do we move up the back to top so it doesn't overlap?

Instead, it should just be a link in the footer. Like IBM.com.

https://github.com/carbon-design-system/carbon-for-ibm-dotcom-website/blob/main/src/gatsby-theme-carbon/components/Footer/index.js


Sparsity constraint in channel exchanging

Hello,
Thank you for your very interesting work! I was planning on experimenting with CEN but I couldn't seem to find the implementation of the sparsity constraint in channel exchanging, as mentioned in Section 3.3, that channel exchanging is only performed in different (disjoint) sub-parts for different modalities. Would you be able to point me to where in the model is this implemented?
Thanks.

Hi, for semantic segmentation, the sparsity constraint is implemented at:
(1) different (disjoint) sub-parts,
https://github.com/yikaiw/CEN/blob/158e31338165f9200dd0e2f64694463fd8a2efd0/semantic_segmentation/main.py#L396-L400
(2) adding the loss of the sparsity constraint,
https://github.com/yikaiw/CEN/blob/158e31338165f9200dd0e2f64694463fd8a2efd0/semantic_segmentation/main.py#L282-L283
For image-to-image translation, the sparsity constraint is implemented at:
(1) different (disjoint) sub-parts,
https://github.com/yikaiw/CEN/blob/158e31338165f9200dd0e2f64694463fd8a2efd0/image2image_translation/main.py#L112-L119
(2) adding the loss of the sparsity constraint,
https://github.com/yikaiw/CEN/blob/158e31338165f9200dd0e2f64694463fd8a2efd0/image2image_translation/main.py#L208-L213

Thank you for your reply! However I am still confused as to where the sparsity constraint in terms of channel exchanging is implemented, as the sections of code you referenced seem to be applying the sparsity constraint to the loss calculation.
I am mainly confused about
https://github.com/yikaiw/CEN/blob/158e31338165f9200dd0e2f64694463fd8a2efd0/semantic_segmentation/models/modules.py#L12-L15
which seems to exchange channels within all of x[0] and x[1], instead of disjoint sub-parts of them.

Hi, take semantic segmentation as an example:
We apply the sparsity constraints on disjoint sub-parts of BN scaling factors in,
https://github.com/yikaiw/CEN/blob/158e31338165f9200dd0e2f64694463fd8a2efd0/semantic_segmentation/main.py#L396-L400
In the case of two modalities, we divide channels into two disjoint sub-parts, which is implemented by adding param[:len(param) // 2 and param[len(param) // 2:] to slim_params. Followed up by the sparsity loss on slim_params, which means only the sub-parts in slim_params are constrained by L1.
We find if a channel is out of the sparsity constraints (L1), its BN scaling factor can be hardly lower than the small threshold during training. Therefore we check the criteria for channel exchanging directly on the whole channels,
https://github.com/yikaiw/CEN/blob/158e31338165f9200dd0e2f64694463fd8a2efd0/semantic_segmentation/models/modules.py#L12-L15
Since constraining half (disjoint sub-parts) of the channels is already implemented in the optimization part, checking the exchanging criteria on the whole channels is almost equivalent to on disjoint sub-parts.

Hi, take semantic segmentation as an example:
We apply the sparsity constraints on disjoint sub-parts of BN scaling factors in,
https://github.com/yikaiw/CEN/blob/158e31338165f9200dd0e2f64694463fd8a2efd0/semantic_segmentation/main.py#L396-L400
In the case of two modalities, we divide channels into two disjoint sub-parts, which is implemented by adding param[:len(param) // 2 and param[len(param) // 2:] to slim_params. Followed up by the sparsity loss on slim_params, which means only the sub-parts in slim_params are constrained by L1.
We find if a channel is out of the sparsity constraints (L1), its BN scaling factor can be hardly lower than the small threshold during training. Therefore we check the criteria for channel exchanging directly on the whole channels,
https://github.com/yikaiw/CEN/blob/158e31338165f9200dd0e2f64694463fd8a2efd0/semantic_segmentation/models/modules.py#L12-L15
Since constraining half (disjoint sub-parts) of the channels is already implemented in main.py, checking the exchanging criteria on the whole channels is almost equivalent to disjoint sub-parts.

That makes sense. Thank you for your detailed explanation!

@yikaiw 你好 我不是特别理解用L1norm来惩罚 scale factor 在loss function 的意义，这一项在loss function里不就是让 scale factor 越来越小么 简单的来说。能不能稍微解释一下呢， 谢谢🙏


Problems changing the defaults

Hello,
I'm not able the change the default configuration.
i tried with the folowing code:
import vueDirectiveTooltip from 'vue-directive-tooltip';

Vue.use(vueDirectiveTooltip, {
    delay: 200,
    placement: 'right',
    class: 'tooltip-red', // ex: 'tooltip-custom tooltip-other-custom'
    triggers: ['hover', 'focus'],
    offset: 5
});

When I use v-tooltip the placement is left and the color black.
What am I doing wrong?

You did not do anything wrong and there was a bug.
Thank you for reporting it, that is useful.
It should be fixed now.


Pass full state/occupation to getTransitions.

The backend expects the full state name, so updating things to pass the full objects so that the implementation can pull the required info out.

@alexjball @timtraversy , this has been outstanding for 3 days and looks fine. I'm merging.


Normalisation of quantum state in QuantumModel

Hi,
I've noticed that the normalisation of the quantum state done in the following lines of the QuantumModel._normalise_vector function
https://github.com/CQCL/lambeq/blob/f6fa5a70d241e3eeff81d8125ce1629bbe94e3be/lambeq/training/quantum_model.py#L70-L71
seems to be missing a square along with the absolute value, i.e. it should be something like
predictions = backend.abs(predictions)**2 + self.SMOOTHING
return predictions / predictions.sum()

so that the resulting probabilities match those one would get from measuring the quantum state in the specified basis.

I totally agree that we should be consistent with the TketModel here. Needs to be changed soon!
The original reason why we did not square the absolute value of the amplitudes was that they used this as a metric in the "QNLP in practice" paper (if I'm not mistaken).

As discussed internally, this has meaning only for the NumpyModel (not the TketModel). There will be a fix included in the next release.
The issue will be now closed.


Change password hashing

Since people are starting to make pull requests for anything, I should join the fun.
This pull changes how passwords are hashed on the board, making use of the password hashing API that appeared in PHP 5.5 with a compatibility library for past versions of PHP.
This also has the side effect of bumping the minimal version to 5.3.7 or greater and the installer has been edited to reflect this.
This change converts all ABXD passwords when the user logs in again so users should log out and log in to have their password changed to the new hashing.
Note: It also blanks pss on every user when converting the password but I don't know what it could affect on the board.

Fixed an obvious issue and restored pss. I'm not going to risk it so I'm leaving it alone.

You broke the installer by the way because I tried to install your ABXD version here and it says 'You need php 5.3.7 or greater and you are running 5.3.27' which is an obvious bug...

It lives!

Oh wow, what. Oh well.


Allow to set float number as mirror timeout.

I noticed some inconsistency in mirror timeout setting during playing
with gemstash. Default value is 0.1, but when I set timeout value to
0.5 it behaved as with 0 value. It set proper timeout only when I
set 1 as timeout value. I think it is also not proper behaviour with
0.1 default and while setting cast it to Fixnum.

I think the issue with this might be that Settings only stores ints and not floats? But I could be wrong

Yeah, Settings only stores ints for number fields, so I think in the place this is set, it wont work

@segiddins could you explain it more to me? In lib/bundler/mirror.rb there is defined Bundler::Settings::Mirror class defined. Why Settings would be a problem in this case. Is this connected with config defined in bundle config mirror.https://rubygems.org.fallback_timeout 0.5 way?

Because bundle config reads and writes to the Settings class, where it appears we only store integers and not floats

Can this finding be turned into clarified documentation, if it can not be allowed to have floats in settings?

@olleolleolle sure!

@olleolleolle @segiddins I can adjust documentation in this case. bundler, bundler-site and gemstash need to be adjusted or something else?

Just man/bundle-config should be necessary -- it's where all the settings are documented

Closing in favor of https://github.com/bundler/bundler/pull/5417 -- thanks for bringing this us @seban !


Format and Doc question

Hi there,
Can somebody please explain what the time measurement or each * entry below?  Can the answer to my question be reflected in the main README.md .
*/2 * * * * * * ls 2>/dev/null
Cheers

Hello,  the README for Supercronic already links to the library used for parsing the crontrab under the heading "Crontab format":

First, Supercronic supports second-resolution schedules: Under the hood, Supercronic uses the cronexpr package, so refer to its documentation to know exactly what you can do.

There you will find the following definition of the format:
Field name     Mandatory?   Allowed values    Allowed special characters
----------     ----------   --------------    --------------------------
Seconds        No           0-59              * / , -
Minutes        Yes          0-59              * / , -
Hours          Yes          0-23              * / , -
Day of month   Yes          1-31              * / , - L W
Month          Yes          1-12 or JAN-DEC   * / , -
Day of week    Yes          0-6 or SUN-SAT    * / , - L #
Year           No           1970–2099         * / , -


fix Modify README.md
Change ‘kafka_default_offset’ to ‘kafka_default_offsets’.

Proposed changes
Issue Number: close #xxx

Further comments
If this is a relatively large or complex change, kick off the discussion at<EMAIL_ADDRESS>by explaining why you chose the solution you did and what alternatives you considered, etc...

run buildall


Any progress for pytorch 1.5?

Hi, do you have any ideas for running the code for pytorch v1.5 with data parallel?

Yup, I have pushed a branch named "pytorch-1.5" for the repo. Please pull the repo, do git checkout pytorch-1.5 and train the model there. Also, see the updated README on what's been changed.
Let me know if it works!

Thanks! And I'm confused about the 'func_copy' model. It seems that we need to use 2x GPU memory because of this implementation. Is there a more efficient way of implementing the backward method?

Yes, that is a design choice due to PyTorch's nn.DataParallel. If you use only 1 GPU (i.e., no nn.DataParallel), then you are able to do the actual implicit differentiation all in the backward() in deq.py and without func_copy. You can simply do it through one layer, as we hoped.
However, the weird thing we found was, once nn.DataParallel was invoked, the parameter gradients on the replica will all vanish. In other words, the gradients computed in the backward() will disappear. This happened in PyTorch 1.4, I'm not so sure about 1.5. But anyway, that was the rationale behind this design choice; we found no good choice but to leave a func_copy there for the Jacobian-vector product part computation.
Indeed, once we are able to solve this issue, we will have much better memory efficiency than the ones reported in our paper.

Thanks! I'm waiting for the better implementation!


node.js-error ECONNREFUSED when killing a broker

I have the same or at least very similar issue as in #116 . I opened a new one because 116 is closed. I have 2 kafka broker (<IP_ADDRESS>) and 1 zookeeper instance, all on the same vm and two client applications (producer and consumer) with kafka-node (0.5.6) on my local machine.
I was expecting the clients to automatically reconnect to a running broker when I kill the one, that is used. I do catch the 'error'-event in both the producer and consumer and the thrown error isn't a kafka-node error but a node.js one, I guess.
events.js:154
      throw er; // Unhandled 'error' event
      ^

Error: connect ECONNREFUSED <ip_of_vm>:9092
    at Object.exports._errnoException (util.js:856:11)
    at exports._exceptionWithHostPort (util.js:879:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1057:14)

The broker I killed used port 9092, zookeeper uses default port 2181. Code of producer-client below:
var kafka = require('kafka-node'),
    client = new kafka.Client('<ip_of_vm>:2181/', 'producer-client'),
    producer = new kafka.Producer(client),
    payload = [{
      topic: 'replicated-topic',
      messages: ['it works!!']
    }];

producer.on('ready', () => {
  producer.send(payload, (err, data) => {
    console.log(data);
  });
});

producer.on('error', err => {
  console.log(err);
});

Any help is appreciated!
Thanks.

have you let it run and see if it recovers? Connection errors will throw errors but there's logic that will attempt to reconnect while the zk watch will refresh the brokers once it realized that killed broker is offline.

The node-application crashes, the process stops.

oh my....you're right! It does recover. Thank you for that hint. Kind of embarrassing lol
Thanks for the quick support.

@hyperlink  No , it doesnt recovered , I have listened to both consumer & producer's 'error' event .
Anything I missed ?
Here is my code . PS:  just my custom logging function .
`const kafka = require('kafka-node');
const client = new kafka.Client('<IP_ADDRESS>:2181');
const Producer = new kafka.Producer(client);
const Offset = kafka.Offset;
const offset = new Offset(client);
let RcnoConsumer = new kafka.Consumer(client, [ { topic: 'streamingUpdateOrders', partition: 0 }], { autoCommit: false });
client.once('connect', () => {
cm.logSuc('[KAFKA] Client Connected')
});
RcnoConsumer.on('message', (data) => {
cm.logSuc('[KAFKA] Topic: RCNO');
console.log(data);
});
RcnoConsumer.on('error', (err) => {
cm.logErr('[KAFKA] Topic: RCNO Error');
console.log('error', err);
});
RcnoConsumer.on('offsetOutOfRange', (topic) => {
topic.maxNum = 2;
offset.fetch([topic], function (err, offsets) {
if (err) {
return console.error(err);
}
var min = Math.min(offsets[topic.topic][topic.partition]);
RcnoConsumer.setOffset(topic.topic, topic.partition, min);
});
});
// Testing Producer :
let payloads = [
{ topic: 'streamingUpdateOrders', messages: 'Hello Joe 0012543~', partition: 0 }
];
Producer.on('ready', () => {
cm.logSuc('[KAFKA] Producer is Ready');
});
Producer.on('error', err => {
cm.logErr('[KAFKA] Producer Error')
console.log(err);
});`

Hi, I am hoping PR #758 will resolve your issue.

@hyperlink  New error ...  from Consumer.on('error);
BrokerNotAvailableError: Could not find the leader     at new BrokerNotAvailableError (/Users/joelee/studies/kafka-test/node_modules/kafka-node/lib/errors/BrokerNotAvailableError.js:11:9)     at Client.sendToBroker (/Users/joelee/studies/kafka-test/node_modules/kafka-node/lib/client.js:565:17)     at Client.send (/Users/joelee/studies/kafka-test/node_modules/kafka-node/lib/client.js:520:10)     at Client.sendFetchRequest (/Users/joelee/studies/kafka-test/node_modules/kafka-node/lib/client.js:208:8)     at Consumer.fetch (/Users/joelee/studies/kafka-test/node_modules/kafka-node/lib/consumer.js:181:15)     at Consumer.resumeTopics (/Users/joelee/studies/kafka-test/node_modules/kafka-node/lib/consumer.js:297:21)     at Timeout._onTimeout (/Users/joelee/studies/kafka-test/bin/www:216:22)     at ontimeout (timers.js:365:14)     at tryOnTimeout (timers.js:237:5)     at Timer.listOnTimeout (timers.js:207:5) message: 'Could not find the leader' }
Here is my use-case :
I am connection Kafka server (zookeeper) by IP (remotely), the problem is : if the remote Kafka server shutdown / re-open or connection lost ---
(1) It will crash my node by not handling client.on('close') event .
_events.js:160
throw er; // Unhandled 'error' event
^
Error: connect ECONNREFUSED <IP_ADDRESS>:9092_
(2) After I handle the client.on('close') event , I must call Producer.close()  . It still will show
BrokerNotAvailableError: Could not find the leader
I need my client / Consumer / Producer recover after Kafka server re-open .
Can you show me the example code using in production ?? Just consumer ,  maybe there's something I did wrong .
I've followed READ.me & example/consumer.js .
I've go over every issue in this repository . 謝謝您

Node  will crash when you don't listen to the error event coming from your Producer or Consumer or other classes that use Client.
Direct usage of the Client should listen to the error on the client instance. Other classes will proxy error from the client so listening to the client error won't be necessary in those cases.
Hope that helps.


Allow pathlib.Path object in av.open()

Overview
av fails when pathlib.Path object is provided with ValueError.
MWE:
import av
from pathlib import Path
# works
container = av.open('file.mp4')
# fails
container = av.open(Path('file.mp4'))

Desired Behavior
I don't want to bother casting the path variable to str.
Example API
container = av.open(Path('file.mp4'))

should work.
Additional context

Sure, a PR for this is welcome.


Pass char parameter to function

Is this possible?
Method signature:
public IQueryable<string> Split(string value, char delimiter)
Throws:
The type 'System.Char' of the parameter 'delimiter' of function 'Split' is invalid. Parameters can only be of a type that can be converted to an Edm scalar type.

EDM does not define the char type and there is no built-in mapping for char. I think you need to make delimiter string instead of char.


Channel's with hyphens in the name - PHP cannot process?

I'm continuing my search but thought I'd drop a note here.  Most of the over-the-air stations I would like to change to have a hyphen in the name.  e.g., KTVI-DT, KMOV-HD, KSDK-5.  These are the names returned when pulling back a list.
From what I am finding, PHP does not like the use of hyphens at all.  I'm trying to find some alternatives.  Have you run into this?  Thoughts?
Thanks,
chris

Update and question.  First, to my initial issue, I think I've found a way by creating a json variable to store the info and call it back.  When using this method, I get no complaints about the hyphen.  Pasting my draft below as FYI or comment.
Second, if I try to just make a call to change the channel to the name, it fails.  But if I follow your example and have it match against all existing channels first, then changing, it works.  Not sure why that would be required?
Finally, I keep testing and reviewing all other methods and calls.  Do any of the commands allow you to just switch from an external connection to the over-the-air "TV"?  I've tried switching to a defined channel, but the window pops up to confirm switching to the TV - I've added in the "left" and "ok" commands, but it doesn't actually do anything in this instance.  Maybe it's a certain "app" I can call?
Partial draft exampel with the json try:
$chanjson = '{"abc":"KTVI-DT","cbs":"KMOV-HD","nbc":"KSDK-5"}';
$jsonobj = json_decode($chanjson);
if (isset ($_POST["tvair"])) {
switch ($_POST["tvair"]) {
case "abc":
$tvairchan = $jsonobj->{'abc'};
break;
case "cbs":
$tvairchan = $jsonobj->{'cbs'};
break;
case "nbc":
$tvairchan = $jsonobj->{'nbc'};
break;
}
// Get channel list
$channels    = $tv->queryData(TV_INFO_CHANNEL_LIST);
// Channel name
$channelName = $tvairchan;
// Search for channel $channelName
foreach ($channels as $channel) {
if ($channel->chname == $channelName) {
// Change channel
$tv->processCommand(TV_CMD_CHANGE_CHANNEL, $channel);
break;
}
}
}
Previously, I would get errors similar to this:
[Sun Jul 23 17:13:14.132717 2017] [:error] [pid 11069] [client 192.168.x.y:49318] PHP Fatal error:  Uncaught exception 'Exception' with message 'Error (400): Bad Request' in /var/www/html/test/smartTV.php:167\nStack trace:\n#0 /var/www/html/test/smartTV.php(142): SmartTV->sendXMLRequest('/roap/api/comma...', '<?xml version="...')\n#1 /var/www/html/test/test.php(153): SmartTV->processCommand('HandleChannelCh...', 'WORLD')\n#2 {main}\n  thrown in /var/www/html/test/smartTV.php on line 167, referer: http://192.168.x.z/test/test.php
Thanks!

I resolved my movement issues of moving left/right and clicking ok.  Seems that a 1-2 second delay is needed in between.  I'm good with using JSON to get to the channels with hyphens, but if you do have any comment on that, it'd be great.  Thanks!


Watch module ZNC

Hello,
I just added watch module on my ZNC.
When I join or leave a channel *highlight and *status open a window : [*status] No such module highlight
and in highlight I have the join or leave information.
How to disable it please ?
Thanks !

You need to setsource <id> priv.
[21:42:54] <KindOne> list
[21:42:54] <*watch> You have no entries.
[21:42:56] <KindOne> add * *highlight *%nick%*
[21:42:59] <KindOne> list
[21:43:00] <*watch> +----+----------+------------+----------+---------+-----+--------------------+---------------------+
[21:43:00] <*watch> | Id | HostMask | Target     | Pattern  | Sources | Off | DetachedClientOnly | DetachedChannelOnly |
[21:43:00] <*watch> +----+----------+------------+----------+---------+-----+--------------------+---------------------+
[21:43:00] <*watch> | 1  | *!*@*    | *highlight | *%nick%* |         |     | No                 | No                  |
[21:43:00] <*watch> +----+----------+------------+----------+---------+-----+--------------------+---------------------+
[21:43:03] <KindOne> setsources 1 priv
[21:43:03] <*watch> Sources set for Id 1.
[21:43:06] <KindOne> list
[21:43:06] <*watch> +----+----------+------------+----------+---------+-----+--------------------+---------------------+
[21:43:06] <*watch> | Id | HostMask | Target     | Pattern  | Sources | Off | DetachedClientOnly | DetachedChannelOnly |
[21:43:06] <*watch> +----+----------+------------+----------+---------+-----+--------------------+---------------------+
[21:43:07] <*watch> | 1  | *!*@*    | *highlight | *%nick%* | priv    |     | No                 | No                  |
[21:43:07] <*watch> +----+----------+------------+----------+---------+-----+--------------------+---------------------+

https://wiki.znc.in/Watch
P.S. You can try the IRC channel irc.libera.chat #znc for a possibly faster responce time.

I do :  setsources 1 private
I don't see the HL when AFK and back again.

Sorry I forgot channel but now still :
[13:52:15] [*status] No such module highlight

I made a mistake in the example. The priv is for private messages/ctcps.
Enter this, it should fix the issue. setsources 1 #* that will make the module work on all channels.
I only get <*status> No such module highlite when I message the module.

Still the same I join or part of a channel :
[15:02:01] [*highlight] * ... parts ...
[15:00:01] [*status] No such module highlight
[14:59:58] [*highlight] * ... parts ...
[15:00:01] [*status] No such module highlight
Someone HL me :
[15:03:23] [*status] No such module highlight

[15:05:03] [X] Setsources 1 #*
[15:05:04] [*watch] Sources set for Id 1.


Any way to get it to NOT create alt text in various languages?

It would be really nice for me if I could configure it as 'en' => 'alt' and leave it at just that.  Is there a way for me to disable the auto creation in other locales?  Really cool package btw.  Thanks!

Hi @isaackearl,
please try this configuration in your config/aida.php file:
// config/aida.php

<?php

return [

  // ...

  'alt_field_mapping' => [
    'en' => 'alt'
  ],

  // ...

];

?>

(Ensure that the configuration file is published first: php artisan vendor:publish --tag="aida-config")
With this configuration A.I.D.A will only generate alt texts for your en site and save them on the alt field. It will not generate alt texts for any other site/language.

awesome that totally worked thanks!  Funny part is that I thought I did that yesterday but I must have had a caching issue or something.  I went to record a video today so I could show you the bug, and sure enough it just worked as expected.  Thanks!


Improved FancyZones transitions - dock <-> laptop: Treat Virtual Desktops like multiple monitors in FancyZones

Description of the new feature / enhancement
I really love the quick layout switch and use it often to rearrange windows between working time and meeting time and it works really slick! The catch is when I transition from a high resolution or multi-monitor setup, to my laptop alone. I use Virtual Desktops to accommodate organization, but it's far from seamless, as my 6+ zones get compressed into 3 on the primary session and I can't identify additional zones (i.e. 4, 5, 6) in a virtual desktop space.
The feature I have in mind primarily is allowing a user to define additional virtual desktops as if they were additional monitors, in the layout editor. I could see this implemented in various ways. You could have a flag on a virtual desktop layout that says "treat this virtual desktop as a separate monitor", which begins counting the zones from the last zone on the main desktop and conversely, you could add a flag for multi-monitor sessions that says "extend to a virtual desktop session, when multi-monitor is not present."
Scenario when this would be used?
This would be a big time saver when transitioning between high and low pixel workspaces. i.e. moving between an ultra-wide/multi-monitor setup, to a stand alone laptop. While I might define 6 or 7 zones to break out my work into one view in high pixl workspaces, I can't fit that many zones usefully into a single, low-resolution laptop and thus I add 1 or 2 virtual desktops to manage the fleet. Unfortunately, because FZ treats each Virtual Desktop like it's own session, I can't seamlessly transition into those VD's. I have to rearrange windows and move them to their appropriate virtual sessions and snap them into their designated zones. Transitioning back, provides the same challenges. I have 3 virtual sessions, each with a zone 1,2, etc, and FZ doesn't know how to integrate those back into a 7 zone layout on a single workspace. (See workflow example in Supporting info section below)
Supporting information
Workflow example. Each bold item is a transition step, with the state of zones, virtual desktops, and apps defined w/in it.
Docked Session
Ultra/wide or multi-monitor session:
Zones:
1: App 1
2: App 2
3: App 3,4
4: App 5
5: App 6
6: App 7
Convert to Laptop
(low rez, can't support as many zones)
Zones:
1: App 1
2: App 2
3: App 3,4,5,6,7
Create VDs and rearrange
Main Desktop Zones:
1: App 1
2: App 2
3: App 3,4
Virtual Desktop 1 Zones:
1: App 5
2: App 6
Virtual Desktop 2 Zones:
1: App 7
Return to Docked Session
Ultra/wide or multi-monitor session:
Zones:
1: App 1
2: App 2
3: App 3,4
Virtual Desktop 1 Zones:
1: App 5
2: App 6
Virtual Desktop 2 Zones:
1: App 7
Transfer all apps from VDs to main desktop, then re-snap to appropriate zone
Zones:
1: App 1
2: App 2
3: App 3,4
4: App 5
5: App 6
6: App 7
Proposed Feature
In an ideal world FZ treats the VDs like additional monitors and transitions seamlessly. (note the zone numbers in Virtual desktops don't restart but are sequential to the previous desktops)
If we were to transition to the laptop from the state directly above, we would get:
Main Desktop Zones:
1: App 1
2: App 2
3: App 3,4
Virtual Desktop 1 Zones:
4 App 5
5: App 6
Virtual Desktop 2 Zones:
6: App 7
Now, if I transition back to a layout with 7 zones, FZ can convert these, zone per zone, to their correct designations with no leg work on the user's behalf!

This does appear to be a duplicate of #2849. It’s been a minute since 2020 however so perhaps there’s more potential here now??


[1.x] Changed column header to "Input file" in Notebook Job Definitions (#496)

Changed column header to Input file in Notebook Job Definitions

Update list-jobs.tsx for column header change in Notebook Jobs table

Changed the column headers for the inout file in both Notebook Jobs and Notebook Job Definitions to 'Input filename" - we choose “filename” over “file” is because we don’t show the absolute or relative path, just the name of the file in any directory.

Updated E2E snapshots for test

Thank you @srdas.

Kicking CI


IoU a beer

@sksamuel  I see from your profile that you live in London and also like beer. The library is awesome and has helped Arrow immensely, so you get a free beer from us anytime :D

Yeah man I live in Wembley. KotlinTest is just a small library. Arrow is the awesome library that's making Kotlin a real alternative to things like Scala.

After following your issues for several days, I'm pretty sure you're the largest most used library. And you definitely need a beer :D Hit me up whenever you want!

Been meaning to add these for a while, but have started adding Arrow matchers.
https://github.com/kotlintest/kotlintest/blob/master/kotlintest-tests/src/test/kotlin/com/sksamuel/kotlintest/tests/assertions/arrow/EitherMatchersTest.kt

https://github.com/kotlintest/kotlintest/blob/master/kotlintest-tests/src/test/kotlin/com/sksamuel/kotlintest/tests/assertions/arrow/OptionMatchersTest.kt

We should refactor the Arrow tests to include these new matchers for sure!
@sksamuel is there room in this new module for Functor, Applicative, Monad instances for Gen so we can use Arrow monad comprehensions and applicative builders to build generic generated values for arbitrary types inside type constructors such as IO, Deferred, etc... ?
I had at some point a GenK wrapper that I was using to encode polymorphic programs over any F:
fun <F> Applicative<F>.program(): Gen<Kind<F, Int>> = Gen.create { just(Gen.int().generate()) }

forAll(Option.applicative().program()) { fa: Option<Int> -> TODO() }
forAll(IO.applicative().program()) { fa: IO<Int> -> TODO() }
forAll(Either.applicative<Throwable>().program()) { fa: Either<Throwable, Int> -> TODO() }

This would enable us to encode abstract generators in terms of Applicative and Monad that could be used for any of the data types that provide instances for those which are a lot including integrations with popular libraries such as Rx2, Kotlin Coroutines, etc.

Yes I don't see why not. This module depends on arrow's typeclass and data dependencies so anything they provide can be used. I could add effect also if needed.

Awesome! let us knows if you want us to help with contributions or clarify anything related to Arrow. Reading this issue made my day! :beers:

Completely unrelated, I once wrote a REST backend to https://github.com/sksamuel/scrimage for fun

Did you. That's pretty cool. Do you know why I wrote scrimage originally.

It was a Play app to do stuff like
images/transform/c_thumb:150:150,c_limit:150:150/image.png?url=remoteimage

Had most effects and params encoded in a single url and could cache, load and act as proxy to scrimage

That's briliant. So I host a pub quiz (trivia night) at my local pub. And I wanted to do really neat picture rounds based on quiz shows. So that was the basis for the library. It allowed me to write programs to generate these picture rounds from raw unsized/unprocessed images. Otherwise it was far too time consuming.

Try matchers added. Closing issue as preparing for 3.1 snapshot.

B-b-b-but the beer.

Definitely. I'm away in Japan from Thursday but once I'm back ? Are you going to KotlinConf btw? I'm tempted to submit a talk on KotlinTest.

Sure, find me here, on gitter, or on Slack!
Please do submit the talk, it's a really good library :D As for myself, I still haven't figured out what to send that doesn't conflict with the other maintainers', and if I don't speak I probably won't get the time off to attend.

Any suggestions on what you think might be a good part of the library to talk about. Standard unit tests is a bit passe I think.

Property-based testing is a novel concept in the Android world. Have something like this mentioned or in the lib and you have an upper hand over every other competitor.

In what way? Using product in property testing to allow arbitrary testing of any data class ?

From a Tuple2 or HList can I get the types of the arguments?

What would be most useful in testing is,
assertAll<Account> {
  it.name shouldBe "wibble"
  it.id shouldBe gt(0)
}

Allowing the library to build you an account from base generators automatically, instead of manually supplying the generator types, like I have here:
https://github.com/kotlintest/kotlintest/blob/master/kotlintest-assertions/src/main/kotlin/io/kotlintest/properties/Gen.kt#L128-L210
For that to work, I'd need to be able to turn the Account into a tuple (maybe the user has to supply that).

You can try with extfuns and inline, they're resolved statically and allow for partially applied generics.
fun <A> Tuple2<Int, A>.thing() = 1

fun <A> Tuple2<String, A>.thing() = 12

Tuple2(1, "1").thing()
// 1

Tuple2("1", "1").thing()
// 12


Updating documentation for KF 1.3 on Openshift

This is an update to the documentation for KF 1.3 on OCP

/lgtm


Find a way to ignore gogoproto annotations in the IDL

Requirement - what kind of business use case are you trying to solve?
Use model/model.proto to generate code in other languages.
Problem - what in Jaeger blocks you from solving the requirement?
The model/model.proto currently contains a lot of gogoproto options needed to make the internal domain model types more efficient. While these annotations are optional for other languages, the file does not compile if the compiler does not have access to the gogoproto IDLs.
Proposal - what do you suggest to solve the problem or improve the existing situation?
There are two ways we can go about solving this problem:

Write a script that strips the gogoproto annotations before compiling the IDL in other languages.
Create a reusable Docker image for generating code in all languages, which includes all the dependent IDLs, including gogoproto.

So once gogoproto IDL is included generation to other languages work?

I think so.

While testing a Docker image to solve https://github.com/jaegertracing/jaeger-idl/issues/55, it definitely seems so.

@yurishkuro - Pinging to check if we can go ahead and fork.

Go ahead

Have created https://github.com/jaegertracing/docker-protobuf for this.
Will update the repository with corresponding repository versions in jaeger/master.

@annanay25 can be this closed?

I don’t think so. We need to move the proto files to idl repo and change the build to use the new Docker image.

I thought there was a different ticket for it and this just deal with gogo annotations to which we agreed to put all dependencies into classpath and use https://github.com/jaegertracing/docker-protobuf

If someone can take up the migration task https://github.com/jaegertracing/jaeger-idl/issues/55 I can update the build to use the docker image.

I suggest we do the build change first.


stateless session creation policy (gh-345)

test in two VMs

Testing was done in two VMs without any issues.


Batch mode slowing down query

mysqljs version 2.X (tried on 2.15,2.8,2.0,2.1)
I run a query (without using streams) which returns around 10K rows .This query returns in 3-4 seconds but for  a particular time range this query is taking 180+ seconds .The number of bytes and rows returned for this time range is same (10K rows) .The same query when run on mysql workbench takes 3-4 seconds only .
On enabling debug logs in mysqljs I see the slow running query gets a batch of rows ,waits and starts again -
<-- RowDataPacket
{ row_1: 'val_1',
row_2: val_2,
row_3: val_3}
<-- RowDataPacket
{ row_1: 'val_4',
row_2: val_5,
row_3: val_6}
.
.
.
.
.
.
<waits for around 15 seconds>
starts again.
This is leading to almost 60x increase in time .Queries for other time ranges get all the rows in a single burst .
Is there a way I can change/control this behavior through a config or code changes ?

There is no batch behavior coded into this module, so I don't know whay you are referring to. Can you point to where in the source code this barch mode is? Maybe we know it by a different name or something.

I have not had the chance to look at the source code but I was suspecting the module switches to a batch mode given the log pattern - a burst of RowDataPacket's , wait time and then the next burst .

Gotcha. There isn't any such mode or code in this module I'm aware of, so really have no idea why that would happen. If you can provide all the following so I can reproduce the issue, I can debug through the issue to see what is going on internally:

Version of this module
Version of Node.js
Version of your MySQL server
Complete code that can just be pasted and run.
DDL and data to load in order to support the queries in the code and reproduce the issue
Instructions on how to setup, how to run, and what you see / what you're expecting to see.

Thanks!

Mysql version is 5.6
Node version v4.7.2
Version of mysqljs 2.14.1
Came across a very strange behavior ->
A query containing the clause
BETWEEN '2017-11-09T00:00:00.000Z' AND '2017-11-09T00:30:59.999Z'
took nearly 3 minutes on this module with mysql scanning 400 million rows !
Query_time: 188.565439 Lock_time: 0.000192 Rows_sent: 10801 Rows_examined: 484872297
The same query in mysql workbench took less than 3 seconds .
Increasing the date range makes the query work on the mysqljs module
BETWEEN '2017-11-07T00:00:00.000Z' AND '2017-11-09T00:30:59.999Z'
with mysql scanning around 4 million rows
Query_time: 2.908461 Lock_time: 0.000313 Rows_sent: 10832 Rows_examined: 4274901
I tried various versions of the query like CAST but to no avail
BETWEEN CAST ('2017-11-09T00:00:00.000Z' AS datetime) AND CAST ('2017-11-09T00:30:59.999Z' AS datetime)
In my case rounded up dates could also be used and converting the query to
BETWEEN '2017-11-09' AND '2017-11-09'
brought down the execution time to 3 seconds !

@dougwilson thanks for the fast response .Ill find some time and try to create the setup for you where this issue can be replicated

All this module does is send the query text to SQL. I can try to debug it for you, just need to be able to reproduce it, otherwise I don't really have any idea why this would be happening.

If you run the query first in Node and then in Workbench, it seems workbench got the result from the mysql-server query cache.
Run a new query with different timestamps, work bench first then the exact query string in Node, the  time taken should be reversed.
It seems to me the mysql-server does a table scan for your query (It reads all rows from the harddisk to determin, if a row goes into the result set.)
Have you created an index for the date field? Over 400 million rows without an index means a lot of harddisk I/O and it takes, depending on your hardeware, a few minutes to execute the query.
The type-casting you did took place on the server-side and your examples so far, leads me to believe, this is a server or DB-Schema issue not an issue with mysqljs.

Issue is persistent on mysqljs - running 5 queries on mysqljs and 5 on workbench in random order always results in mysqljs taking 180+ seconds and workbench taking 3+ seconds.
Field is indexed and even casting did not help.Changing 2017-11-09T00:00:00.000Z to 2017-11-09 worked

Thanks for the follow up. I'm going to close it on our end because no reproduction steps have materialized thus far for us to have something to look into.