Make pyDFCSR into an installable Python package

Description

Added pyproject.toml to make pyDFCSR installable. setuptools-scm is used for versioning.
Added environment.yaml with the necessary conda dependencies to install the package
Added a basic import test that will be run on GitHub Actions to ensure that the package remains at least importable going forward

It'd be good to add some more tests in the future. I can offer suggestions on how to do this, if you like.

Adjusted notebooks to use the installed module instead of modifying the Python path
Added instructions on how to use the project to README.md
Removed files that were mistakenly committed (__pycache__ and other notebook checkpoints)
Fixed path joining for non-windows systems (\ is a windows-only path separator)
Fixed imports to not use "star imports" (import *)

This is an important one so that we can see what functions and classes come from which pyDFCSR module and developers can use tools to detect errors
(See a post like this for more information)

I'd recommend you take a look at the example notebooks and ensure everything still works as expected.
There may still be some import statements that need fixing there as I did not run every notebook from start to finish.
cc @christophermayes

Hi Ken, thanks a lot for reviewing the codes and making it installable! And I would appreciate suggestions on more importing tests!
I was working on a new version in parallel with this PR. And after I committed the new version, there are too many conflicts to resolve and merge in the web. So I pulled your repo, solve the conflicts locally and check it out via command line. I tested all examples and it works fine. I am not sure if it is the right way to give credit to your work. If not, please let me know.

Hi Kne,
Thanks a lot for the message. Bmadx is from https://github.com/bmad-sim/Bmad-X and it is not a released conda package.
My sincere apologies for manually merging your PR. I am not very familiar with github and it is my first time merging PR. Please let me know if there is a way to fix it. Maybe I can roll back somehow and you can make a new PR?
Best,
Jingyi
From: Ken Lauer @.>
Sent: Tuesday, June 18, 2024 9:31 AM
To: jy-tang/pyDFCSR @.>
Cc: Jingyi Tang @.>; Comment @.>
Subject: Re: [jy-tang/pyDFCSR] Make pyDFCSR into an installable Python package (PR #4)
Click on the red X to check the failure, it will lead you here:
https://github.com/jy-tang/pyDFCSR/actions/runs/9559159892/job/26349065958
Looks like you added a new dependency:
../../../miniconda3/envs/pydfcsr/lib/python3.12/importlib/init.py:90: in import_module
return _bootstrap._gcd_import(name[level:], package, level)

pyDFCSR_2D/init.py:7: in
from .CSR import CSR2D

pyDFCSR_2D/CSR.py:3: in
from bmadx import  Drift, SBend, Quadrupole, Sextupole

E   ModuleNotFoundError: No module named 'bmadx'
You need to keep track of all the dependencies in environment.yml for the basic tests to work.
—
Reply to this email directly, view it on GitHubhttps://github.com/jy-tang/pyDFCSR/pull/4#issuecomment-2176518065, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AMVEMLZ2UQVJN2R2E6P5D33ZIBOF7AVCNFSM6AAAAABJJJFLPWVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDCNZWGUYTQMBWGU.
You are receiving this because you commented.Message ID: @.***>


Fix done redirect not working in subdir

If piper recording studio is running in a folder such as example.com/piper-record/ then the redirect at the end was going to example.com/done.html.
This change makes it go to example.com/piper-record/done.html

Thanks!


Search page: don't show "edit on" links

This page is autogenerated, so it doesn't have "a real page".
Fixes https://github.com/readthedocs/sphinx_rtd_theme/issues/934

0.5 is out, merging this now


base58: improve encode and decode performance

Individual operations on big.Int values are slow, hence do computations up to 58^10 using an uint64. This makes the code roughly 10x faster.

Anything we can do to get this reviewed?

@onyb hopefully, that's sufficient.

@onyb ping, is there anything else that needs to be improved?

@egonelbre Thanks for the reminder. I got busy with reviewing some of btcd PRs. Will take a deeper look today or tomorrow, and most likely have it merged on Tuesday (during our weekly sync meeting).

One last thing  - could you please pull in the latest test cases from Bitcoin Core? Here's the link: https://github.com/bitcoin/bitcoin/blob/master/src/test/data/base58_encode_decode.json

@onyb ping.

Just going to add that most of the time we prefer to squash to single commits but in this case I think the three commits make very logic sense so leaving them un-squashed is good.
And thanks!


Layout Mode in settings is gone!

I'm using Atom v1.17.0 on Windows 10 x64.
Atom was recently updated to 1.17 and caused the One Dark theme to automatically switch layout to what I believe is the Compact mode. When I checked the settings to revert it back to Auto, I couldn't find the Layout Mode anywhere.
The font size of the text on the left tree view pane has also been reduced.
Here is a screenshot:

Any ideas how can I revert back to Auto or Spacious layout modes?

Duplicate of #198


⚠ ClamAV has degraded performance

In f636acb, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 67 ms

Resolved: ClamAV performance has improved in 41feae1 after 5 minutes.


xsim simulation : impossible to display waveforms of signals outside the top level

When opening the xsim simulator, multiples warnings as the following one:

WARNING: Simulation object /top/a0/snap_core_i/dma/read_ctrl_reg/cl_calc_v was not traceable in the design for the following reason:
Vivado Simulator does not yet support tracing of VHDL variables.

It is confirmed that none of the waveform of signals outside the top can be displayed

Hello Bruno,
a VHDL variables could not be displayed in XSIM nor in IES. This works as expected. Please do not mix VHDL variables with VHDL signals!!

ok Thomas agree. My apologize! you are perfectly right, please forget about the warning messages related to variables, BUT......i'm still not able to display a waveform of any signal if they are not at the top level with xsim while i can easily do it with irun.
For example : no signal from DMA core is displayable with xsim while it works ok with irun
Is there a setting i'm missing ?

I built an xsim model in Vivado 2017.4 with KU3,hdl_example,DRAM and ran snap_maint and some small app.  I was able to see signals from different units (jobmgr, dma, ...) in the waveform viewer, when running 'xsim top.wdb -gui' from hardware/sim/xsim/latest. This is the directory, where top.wdb resides.
So I cannot reproduce your problem.
There is a core dump, which is created, after I finish xsim. This is being analyzed separately, and there is currently no information, that this is related to your missing signals.

SR10426813 written to Xilinx to get guidance for the "real-time waveform update" feature.

Thanks to sharing the way we work, we understood the issue.
There is no issue to display waveforms if the xsim gui is opened once the simulation completed.
All the tests done  to display waveforms interactively during the simulation, to reload the top.wdb file (which size is increasing in size) drives to the same "no waveforms values displayed" keeping a 6ps width displayed screen.
Closing the xsim after simulation is completed, displays the waveform ok

Status update Feb16 from Xilinx for this request:
I don't believe it is possible to have two instances of Xsim read the same database concurrently, but I am still awaiting a definite answer. I'll push again this morning. It may be something that could be included in a later release of the tools. As soon as I receive a reply either way I will be in touch.
This means: run_sim opens one xsim session to simulate, and the user runs another xsim session to look into the waveform. As a circumvention I could look into adding an option to run_sim, where the waveform GUI is opened together with simulation start, so that no second xsim instance is needed.
@bmesnet  Do you want such an option ?

Well, being able to display dynamically the data that are being generated is what irun does. I guess they are indeed able to open 2 instances and manage that.
But this is right. If the issue with xsim is that 2 instances may not be able to run the same waveform it may be just the way we use it. We need to try that differently and see what we can do
But if xsim could work as irun, meaning able to look to waveforms at any time even after having started a simulation, this could be a great option.

We use ~snap/hardware/sim/run_sim script to run the xsim simulator. Is there a way to add in that script the gui option to display the waveform during the simulation ?

I tried in run_sim to pass the argument -gui to xsim, but in this case the Vivado GUI is opened for the simulator, it opens the IP socket for PSLSE, but doesn't pass control back to run_sim to start PSLSE.
This means, no xterm appears, in which we can pass our applications.
No easy solution, on how to start the batch execution AND start the GUI

Feedback from Xilinx: You can't start the waveform GUI after starting the simulation. Xilinx has no plan to get this fixed. @bmesnet Please close

ok good to know. Thx. So the only solution as of today, is then to open the simulator to look to the waveform after the simulation is completed and exited.


mouse.location() coordinates do not equal mouse.move() coordinates

I used the mouse.location() method to figure out where I needed to automate moving the cursor, but when I plugged the values into mouse.move(), it always threw a ValueError exception due to it being "out of bounds." Long story short, I used code to figure out that the mouse.location() coordinate system is exactly 25% greater than the system mouse.move uses. This seems to be a rather large oversight. If the coordinate systems are for some reason not meant to be equal, please update the documentation to mention this decision. Thanks.

Thanks for the report. Can you add which platform this was on so I can try reproducing? And also the value of screen.scale().

This is now fixed upstream by https://github.com/autopilot-rs/autopilot-rs/commit/2bc5bb140923b2711e29b78bc5300a01407d3970, will be deploying a new release shortly.

Included in version 3.0.1.


Agda: add opaque and unfolding keywords

The keywords were added in Agda 2.6.4, see https://agda.readthedocs.io/en/v2.6.4/language/opaque-definitions.html
The current list of keywords is at https://github.com/agda/agda/blob/84b0c60b418476d63d5287a5751da43ceab33735/src/full/Agda/Syntax/Parser/Lexer.x#L159-L200

Merged, thanks!


cell-sets from gene scores

Hi, I have a question to your example script in docs/examples/code/run_example.sh.
In there there is a way to calculate the cell-sets using gene scores. This is done by first computing the gene scores via the script wot gene_set_scores .... This create several two-column lists for each of the clusters which can than be used in the script
wot cells_by_gene_set --score LIST_of_SCORES ...
But unfortunately this is not working anymore, as the script complains about missing files:
wot cells_by_gene_set --score gene_set_scores.txt_Cluster10.txt --score gene_set_scores.txt_Cluster11.txt ... --score gene_set_scores.txt_Cluster9.txt --out cell_sets_scores.gmt
usage: cells_by_gene_set.py [-h] --matrix MATRIX --gene_sets GENE_SETS
                            [--out OUT] [--format {gmt,gmx,txt}]
                            [--quantile QUANTILE]
cells_by_gene_set.py: error: the following arguments are required: --matrix, --gene_sets

Is there a way to test this way of calculating cell-sets? Why was this function defunct?

Hi, I have a question to your example script in docs/examples/code/run_example.sh.
In there there is a way to calculate the cell-sets using gene scores. This is done by first computing the gene scores via the script wot gene_set_scores .... This create several two-column lists for each of the clusters which can than be used in the script
wot cells_by_gene_set --score LIST_of_SCORES ...
But unfortunately this is not working anymore, as the script complains about missing files:
wot cells_by_gene_set --score gene_set_scores.txt_Cluster10.txt --score gene_set_scores.txt_Cluster11.txt ... --score gene_set_scores.txt_Cluster9.txt --out cell_sets_scores.gmt
usage: cells_by_gene_set.py [-h] --matrix MATRIX --gene_sets GENE_SETS
                            [--out OUT] [--format {gmt,gmx,txt}]
                            [--quantile QUANTILE]
cells_by_gene_set.py: error: the following arguments are required: --matrix, --gene_sets

Is there a way to test this way of calculating cell-sets? Why was this function defunct?

Please install from the master branch. We will push an update to pip soon.

I don't understand. The setup.py script in the main folder contains only version 0.5.6. This is also the version I got using pip.
How do I install it from the master branch?

git clone https://github.com/broadinstitute/wot.git
cd wot
pip install -e .

this works. thanks a lot.


Fix Broken CTA in the 'Connect Dataset' modal

This PR fixes the CTA in Connect Dataset modal.
Related to https://github.com/CartoDB/cartodb/issues/14036.

Looking good!


Typo "Azure DB for PostgreSQL"→"Azure Database for PostgreSQL"

https://learn.microsoft.com/en-us/azure/container-apps/services
https://github.com/MicrosoftDocs/azure-docs/blob/main/articles/container-apps/services.md
#PingMSFTDocs

@craigshoemaker

Can you review this PR?
IMPORTANT: When this content is ready to merge, you must add #sign-off in a comment or the approval may get overlooked.

#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

Thanks, @hyoshioka0128!
#sign-off


[Feat] Accept JSON file to inject unknown or runtime CSS variables that cannot be parsed using CSS source files

Something like the following should provide a good way to inject CSS variables into the extension cache, to populate variables that extension is unable to figure out statically (for e.g CSS variables that are generated dynamically during runtime).
// dyn-css-variables.json
{
  "--variable-name": "variable value"
}

Users can then pass this file into cssvar.files source files list:
{
  "cssvar.files": ["**/*.css", "dyn-css-variables.json"]
}

I would like to propose a few changes/ideas.
Firstly, I would like the option of using a JS/CJS/MJS file too, so you're able to do some scripting. This way, it's easier to dynamically create variable names and values. Let's say you have lots of color variables and you also want to create variables for their HSL values. It would be a tedious task to write them all down manually (even though this could be automated in user land, more on this below).
Secondly, I feel like it'd be nicer to not (only) define variables and their values, but also their original definition location, so when clicking through on a CSS variable, one would go to the original definition, instead of the JSON file. Sometimes, it would even be hard and extra work to get the actual value of the CSS variable. I suggest using something like this format instead, where path and value are nullable or omissable:
{
  "--color-red": {
    "path": "/path/to/file:66:3",
    "value": "#f00"
  }
}

Custom JSON regeneration logic
One might want to automate the creation of this config JSON file by watching files, reading, parsing or regexing them, and then recreating the JSON file dynamically. It'd be nice to document some ways to do this. I assume the config file will be watched and reloaded on change?
A benefit of dynamically creating the config file is that this creates a way to read your own CSS/SCSS/Sass/Less/etc files and scan for specific patterns to get the location and/or values of CSS variables. For example, I sometimes use a mixin to create multiple CSS variables at once: see #109.

Having manually managed configs can quickly become an overhead, especially when the source and script(or JSON data) are approx. duplicates.
Having a JS script is a good idea, but its maintenance can be tiring (unless it's auto-generated)(the same applies to a JSON file as well), but I can also not think of any other (less complex, easy to manage) solution for this issue.
Anyway, appreciate your inputs. I will look into this in the future, as I am occupied with a lot of other stuff these days 👍🏽 (Unless you have time to work on this 😉)


derivative works license question

I made a tool called Protractor Recorder that is based on your "Katalon Recorder". It's an open source software. Due to your recorder is not a MIT license, I'd like to confirm that is it okay to provide derivation work based on your software? If this is not allowed, I'll remove my project. Hope to get your response. Thanks!

Thank you @doggy8088 for your question. You can keep and maintain your project. If possible, please consider contributing the changes back to this project.


Add a way of writing unbalanced braces

Technically speaking, we do not allow unbalanced braces at all in our syntax anymore. We really need a way of representing them in source.

Obviously some kind of escape sequence or verbatim span-like construct would work. Scribble allows @"some lisp string", so we could do something like that.

We have the relevant \{\} escapes, so this is no longer necessary.


Update IdentifyKMLFeaturesSample.java

Description
In recent updates, core introduced a condition to return an empty string for the balloons/KML nodes that doesn't have description or extended data. The data source in the Identify KML features doesn't provide a description for each significant weather condition, thus empty balloons are displayed in the callout.
If description is absent for a placemark, this PR adds a placeholder so that the content of the balloon can be displayed.
Before: the popup for any feature in the map is empty
In this PR: the popup should show HTML content
@jenmerritt could you take a look please?

thanks @jenmerritt : good spot with the webview, as you say it looks like we are limited by the html. I experimented with styling of the Webview component but without spending too much more time on it I couldn't fix anything up obviously. Something to come back to!


bumped core version to 0.12.4 in opam files

The opam files also need to bump the core dependency 0.11 to 0.12.4. This PR performs this bump.

Thanks!


Add ThemePark to Docker image for intro_to_r

Summary
In order for #544 to pass, we need the ThemePark library to be added to this docker image.

Awesome! Does the docker build manually from this branch?

Docker build success! https://hub.docker.com/layers/jhudsl/intro_to_r/1.1.1/images/sha256-8ef9d122fa125c46ee386200ed0d14458aea522af652e70cfb4ca22d002eff51?context=repo


Migrate usage of dart:html to package:web to support WASM

To support using this fundamental library in WASM it can't use dart:html which only works when compiled to JavaScript not WASM.
Enable working in a WASM environment usages of dart:html need to be migrated to package:web.
Usages of dart:html:
https://github.com/search?q=repo%3Adart-lang%2Fi18n+"dart%3Ahtml"+path%3A%2F^pkgs\%2Fintl\%2Flib\%2F%2F&type=code
Migration guide:
https://dart.dev/interop/js-interop/package-web

There is one issue with moving from dart:html to package:web (or another WASM ready option).
We need to remove dart:html from https://github.com/dart-lang/i18n/blob/main/pkgs/intl/lib/src/http_request_data_reader.dart#L11.
There are a couple of options:

Use package:web and use the deprecated HttpRequest class of package:web:

Positive: It supports WASM
Positive: It uses XMLHttpRequest for maximum compatibility
Downside: It's a deprecated method
Downside: It doesn't support timeouts

Option 1.1 (no timeout)

class HttpRequestDataReader implements LocaleDataReader {
  /// The base url from which we read the data.
  String url;

  HttpRequestDataReader(this.url);

  @override
  Future<String> read(String locale) {
    return HttpRequest.getString('$url$locale.json');
  }
}

Option 1.2 (artificial timeout):

class HttpRequestDataReader implements LocaleDataReader {
  /// The base url from which we read the data.
  String url;

  HttpRequestDataReader(this.url);

  @override
  Future<String> read(String locale) {
    return Future.any([
      Future.delayed(Duration(seconds: 5)).then((_) {
        throw TimeoutException('Timeout while reading $locale');
      }),
      HttpRequest.getString('$url$locale.json')
    ]);
  }
}

Use package:web and use the Fetch API:

Positive: It supports WASM
Positive: It allows timeouts using the AbortSignal
Positive: It uses modern web APIs
Downside: It does not support Browsers released in 2015/1016

Option 2:

class HttpRequestDataReader implements LocaleDataReader {
  /// The base url from which we read the data.
  String url;

  HttpRequestDataReader(this.url);

  @override
  Future<String> read(String locale) {
    final controller = AbortController();

    Future.delayed(Duration(seconds: 5)).then((_) {
      controller.abort();
    });

    return window
        .fetch(
          '$url$locale.json'.toJS,
          RequestInit(
            method: 'GET',
            signal: controller.signal,
          ),
        )
        .toDart
        .then((response) {
      // Note: file:// URIs have status of 0.
      if ((response.status >= 200 && response.status < 300) ||
          response.status == 0 ||
          response.status == 304) {
        return response.text().toDart.then((text) => text.toDart);
      } else {
        throw Exception('Failed to load locale data for $locale');
      }
    });
  }
}

Use package:http:

Positive: It supports WASM
Positive: It uses XMLHttpRequest for maximum compatibility
Downside: It does not support timeouts (currently) https://github.com/dart-lang/http/issues/424

Option 3

class HttpRequestDataReader implements LocaleDataReader {
  /// The base url from which we read the data.
  String url;

  HttpRequestDataReader(this.url);

  @override
  Future<String> read(String locale) {
    final Client client = Client();
    return client.get(Uri.parse('$url$locale.json')).then((response) {
      if ((response.statusCode >= 200 && response.statusCode < 300) ||
          response.statusCode == 0 ||
          response.statusCode == 304) {
        return response.body;
      } else {
        throw Exception('Failed to load $locale');
      }
    });
  }
}

Use package:http use Future.delayed and ignore the request if it takes too long (accept that the request might not be timed out):

Positive: it supports WASM
Positive: It uses XMLHttpRequest for maximum compatibility
Positive: We can close the connection after 5 seconds

Option 4

// Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

/// This contains a reader that accesses data using the HttpRequest
/// facility, and thus works only in the web browser.

library http_request_data_reader;

import 'dart:async';
import 'dart:js_interop';
// todo: Rework this to use the http package once https://github.com/dart-lang/http/issues/424 is resolved.
import 'package:http/http.dart';
import 'intl_helpers.dart';

class HttpRequestDataReader implements LocaleDataReader {
  /// The base url from which we read the data.
  String url;

  HttpRequestDataReader(this.url);

  @override
  Future<String> read(String locale) {
    final Client client = Client();
    return Future.any([
      Future.delayed(Duration(seconds: 5)).then((_) {
        client.close();
        throw TimeoutException('Timeout while reading $locale');
      }),
      client.get(Uri.parse('$url$locale.json')).then((response) {
        if ((response.statusCode >= 200 && response.statusCode < 300) ||
            response.statusCode == 0 ||
            response.statusCode == 304) {
          return response.body;
        } else {
          throw Exception('Failed to load $locale');
        }
      }),
    ]);
  }
}


cmd/go: go get golang/x/tools/...: no matching versions for query "latest"

Please answer these questions before submitting your issue. Thanks!
What did you do?
If possible, provide a recipe for reproducing the error.
A complete runnable program is good.
A link on play.golang.org is best.
go get golang.org/x/tools/...
What did you expect to see?
success
What did you see instead?
⎣ ⇨ go get -u -v golang.org/x/tools/...
Fetching https://golang.org/x/tools?go-get=1
Parsing meta tags from https://golang.org/x/tools?go-get=1 (status code 200)
get "golang.org/x/tools": found meta tag get.metaImport{Prefix:"golang.org/x/tools", VCS:"git", RepoRoot:"https://go.googlesource.com/tools"} at https://golang.org/x/tools?go-get=1
go: finding golang.org/x/tools/... latest
Fetching https://golang.org/x/tools?go-get=1
Parsing meta tags from https://golang.org/x/tools?go-get=1 (status code 200)
get "golang.org/x/tools": found meta tag get.metaImport{Prefix:"golang.org/x/tools", VCS:"git", RepoRoot:"https://go.googlesource.com/tools"} at https://golang.org/x/tools?go-get=1
go: finding golang.org/x/tools latest
Fetching https://golang.org/x?go-get=1
Parsing meta tags from https://golang.org/x?go-get=1 (status code 200)
Fetching https://golang.org?go-get=1
Parsing meta tags from https://golang.org?go-get=1 (status code 200)
go get golang.org/x/tools/...: no matching versions for query "latest"
System details
go version go1.11 darwin/amd64
GOARCH="amd64"
GOBIN=""
GOCACHE="/Users/scott/Library/Caches/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="darwin"
GOOS="darwin"
GOPATH="/Users/scott/Dev/zic"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/darwin_amd64"
GCCGO="gccgo"
CC="clang"
CXX="clang++"
CGO_ENABLED="1"
GOMOD="/Users/scott/Dev/zic/src/zikichombo.org/sound/go.mod"
GOROOT/bin/go version: go version go1.11 darwin/amd64
GOROOT/bin/go tool compile -V: compile version go1.11
uname -v: Darwin Kernel Version 17.7.0: Thu Jun 21 22:53:14 PDT 2018; root:xnu-4570.71.2~1/RELEASE_X86_64
ProductName:	Mac OS X
ProductVersion:	10.13.6
BuildVersion:	17G65
lldb --version: lldb-9<IP_ADDRESS>
  Swift-4.1

Same is happening here:
$ go get -u github.com/go-critic/go-critic/...
go: finding github.com/go-critic/go-critic/... latest
go: finding github.com/go-critic/go-critic latest
go get github.com/go-critic/go-critic/...: no matching versions for query "latest"
$ go version
go version go1.11 darwin/amd64

I think the go tool is ending up interpreting the /... as part of the package path instead of a pattern.
Note that in module mode, ... patterns match packages in active modules, so it doesn't really make sense to go get -u one of those patterns unless you've already got those packages in your module dependencies. It would be helpful to see the output of go list golang.org/x/tools/... or go list github.com/go-critic/go-critic/... before you ran go get -u.

@ivanalejandro0 I would be surprised if an issue fixable by go clean -modcache is the same as the one involving ... patterns.

@ivanalejandro0 I would be surprised if an issue fixable by go clean -modcache is the same as the one involving ... patterns.

Yeah, I agree.
My problem didn't involve any ..., but @wsc1 said that with "GO111MODULE=off works ok", so I figured it may be worth mentioning.

I can confirm @rkuska's issue with go-critic and have it documented here: https://travis-ci.org/mastertinner/clong

I've seen this error in the wild, given some packages include go get foo/... in their install instructions.
That said, the official documentation seems to claim that this works.  In particular, go get golang.org/x/perf/cmd/... is actually cited as example in the official documentation for 'Module aware go get', but if you try that example from the doc, it fails with error no matching versions for query "latest":
From https://tip.golang.org/cmd/go/#hdr-Module_aware_go_get

Note that package patterns are allowed and are expanded after resolving the module versions. For example, 'go get golang.org/x/perf/cmd/...' adds the latest golang.org/x/perf and then installs the commands in that latest version.

Here is that example from the doc from scratch:
$ mkdir -p /tmp/scratchpad/gogetellipsis
$ cd /tmp/scratchpad/gogetellipsis
$ go mod init example.com/me/hello
$ go get golang.org/x/perf/cmd/...
go: finding golang.org/x/perf/cmd/... latest
go: finding golang.org/x/perf/cmd latest
go: finding golang.org/x/perf latest
go get golang.org/x/perf/cmd/...: no matching versions for query "latest"

Not that you can get it to work though if you first do go get golang.org/x/perf/cmd/benchstat, and then repeat the exact previously failing command.
Continuing prior example:
$ ls $GOPATH/bin/bench* | wc -l
0

# install benchstat first
$ go get golang.org/x/perf/cmd/benchstat
go: finding golang.org/x/perf/cmd/benchstat latest
go: finding golang.org/x/perf/cmd latest
go: finding golang.org/x/perf latest

# previously failing command now works (and also installs benchsave)
$ go get golang.org/x/perf/cmd/...
go: finding golang.org/x/perf latest
go: finding golang.org/x/oauth2 latest
go: finding golang.org/x/oauth2/google latest
go: finding golang.org/x/net/context/ctxhttp latest
go: finding golang.org/x/net/context latest
go: finding golang.org/x/net latest
go: finding cloud.google.com/go/compute/metadata latest
go: finding cloud.google.com/go/compute latest

I'm guessing that second example works because golang.org/x/perf becomes part of the active modules prior to doing go get golang.org/x/perf/cmd/....

Having the same problem with a package providing bindings for v8:
go get github.com/augustoroman/v8: no matching versions for query "latest"

@bcmills any brief thoughts on whether or not this is too big for 1.12 at this point?
Also, it is not clear to me if this is working as designed, vs. a bug.  For example, from my comment above https://github.com/golang/go/issues/27215#issuecomment-427672781:

the official documentation seems to claim that this works. In particular, go get golang.org/x/perf/cmd/... is actually cited as example in the official documentation for 'Module aware go get', but if you try that example from the doc, it fails with error no matching versions for query "latest"

This is still on my radar for 1.12, but depending on the fix will likely slip to 1.13.

FYI, I am still getting this in 1.12 beta1 and can only make things work if I go back to the gopath.
build github.com/Comcast/kuberhealthy/cmd/kuberhealthy: cannot load golang.org/x/crypto/ssh/terminal: cannot find module providing package golang.org/x/crypto/ssh/terminal

go clean -modcache gives the same error, strangely enough.
GO111MODULE=off go get -v golang.org/x/crypto/ssh/terminal works.
GO111MODULE=on go get -v golang.org/x/crypto/ssh/terminal does not work with the following error:
go get golang.org/x/crypto/ssh/terminal: no matching versions for query "latest"

For what it's worth, the following succeeds only after the first attempt to get without "..."

In my case, the first line is necessary for the following to succeed:
//go:generate go get github.com/go-bindata/go-bindata
//go:generate go get -u github.com/go-bindata/go-bindata/...
//go:generate go-bindata -pkg $GOPACKAGE -o assets.go -prefix assets/ assets/...

Hope this helps anyone else.

This breaks the workflow of installing go from source because installing additional tools doesn't work if GO111MODULE=on has been set. I ran into this when re-installing Go from source and my work around was to turn off the setting first first, install & then turn it back on. While not many folks will run into this, a note should probably be added to the documentation on installing from source noting the issue.

Commenting to confirm that running go get without the /... pattern first, then running go get with the /... pattern works. But I second the earlier comments that this is not in agreement with the documentation.

@bcmills @jayconrod Any quick thoughts  on whether a fix for this might be small enough to be a 1.12 back port candidate?
@mvdan asked a similar question a bit ago in #29363,  which I think might be a duplicate of this one.
This issue is fairly awkward given the number of readmes out there that use /... as part of their installation instructions.  Of course, it might make more sense to wait until 1.13  based on the nature of a fix,  competing priorities, etc.

The example I had listed in https://github.com/golang/go/issues/27215#issuecomment-427672781 seems to be fixed in tip now that #29363 is fixed.
Is anyone else seeing an issue here if you try with tip? (go get golang.org/dl/gotip && gotip download is a handy way to try with the latest from Go tip).

I think this can be closed after CL 174099 and other fixes to go get landed. go get golang.org/x/tools/... should work now.
Sorry I don't think there was anything in here that could be backported to 1.12. The changes to go get semantics were pretty substantial. In general, go get in 1.13 in module mode should have similar semantics to go get in GOPATH mode.

so, how to solve this kind of problem?
"no matching versions for query "latest"

@hexiao04 This is an old closed issue. If there is a problem, please file a new issue, and reference this one if you think it's relevant.


Copy dumpfile, not the intermediate tarfile

Oops just noticed the checks hadn't finished before I hit merge!
This isn't tested, so it won't be an issue here. Sorry though!


Fix include for gcc 4.7.

It looks like "off_t" is no longer gotten for free so unistd.h must be explicitly included.

LGTM, I will merge it.

For visual studio / windows, unistd.h is not available, but sys/types.h is portable and seems like it would solve this issue.

I was just wondering what effect this would have on Windows.  I'll switch to sys/types.h instead.  Safe everywhere?

Merged.

Yup, worked for me too :)


[DO NOT MERGE] Adding three ORL examples

This is an on-going PR that will include three notebook example trying to solve operational research problems using reinforcement learning. Would like to gather some feedbacks along the way.
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Thanks, @bbalaji-ucsd.
@yijiezz Can you please merge this PR?


BRAKING CHANGE: Fix downstream direction

The direction of the downstream was different from the context of the infrastructure configuration diagram.
Fixed downstream to face itself.
<Example
    name="ExampleA"
    upstream={["ExampleB"]}
    downstream={["ExampleC"]}
/>

The behavior so far was as follows.

ExampleC <- ExampleA -> ExampleB

From now on, the behavior will be as follows.

ExampleC -> ExampleA -> ExampleB

If you want to draw the same figure, please modify it to use the position attribute below.
<Example
    name="ExampleA"
    upstream={["ExampleB", { destination: 'instance3', position: "ExampleC" }]}
/>

// or

<Example
    name="ExampleA"
    upstream={[{ destination: 'ExampleB', position: "forward" }, { destination: 'ExampleC', position: "backward" }]}
/>

close #145

https://github.com/kamiazya/rediagram/pull/171


Document how to disable JGroups

This is related to https://github.com/Jasig/uPortal/issues/1739 .
Adopters would like to disable JGroups with minimal effort.
Generate documentation on how use the file from uP#1739 to disable JGroups.

For overridesContext.xml, add a custom cacheManager which is the same as the default in uPortal, but with the depends-on="systemPropertySetter" instead of depends-on="systemPropertySetter, authDao":
 <bean id="cacheManager" class="org.springframework.cache.ehcache.EhCacheManagerFactoryBean"
          depends-on="systemPropertySetter"
          p:shared="true"
          p:configLocation="classpath:/properties/ehcache.xml" />

Copy uPortal uPortal-webapp/src/main/resources/properties/ehcache.xml to uPortal-start overlays/uPortal/src/main/resources/properties/ehcache.xml.
Then make the following edits:

Remove or comment out the following:

     <cacheManagerPeerProviderFactory
         class="net.sf.ehcache.distribution.jgroups.JGroupsCacheManagerPeerProviderFactory"
         properties="file=properties/jgroups.xml" />

remove all JGroupsCacheReplicatorFactory entries:

         <cacheEventListenerFactory
             class="net.sf.ehcache.distribution.jgroups.JGroupsCacheReplicatorFactory"
             properties="replicateAsynchronously=true,
                 replicatePuts=false,
                 replicateUpdates=true, replicateUpdatesViaCopy=false,
                 replicateRemovals=true "/>

ehcache-no-jgroups.txt


chore(*): Updated year in licence

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Updates the copyright notices to include the current year.
What is the current behavior? (You can also link to an open issue here)
N/A
What is the new behavior (if this is a feature change)?
N/A
Does this PR introduce a breaking change?
No
Please check if the PR fulfills these requirements

[x] The commit message follows our guidelines: https://github.com/angular/angular.js/blob/master/CONTRIBUTING.md#commit-message-format
[x] Tests for the changes have been added (for bug fixes / features)
[x] Docs have been added / updated (for bug fixes / features)

Other information:

(Also updated the home page: angular/angularjs.org@6d0c0f1)


fix translate

[ ] I have read freeCodeCamp's contribution guidelines.
[ ] My pull request has a descriptive title (not a vague title like Update index.md)
[ ] My pull request targets the master branch of freeCodeCamp.
[ ] None of my changes are plagiarized from another source without proper attribution.
[ ] My article does not contain shortened URLs or affiliate links.

If your pull request closes a GitHub issue, replace the XXXXX below with the issue number.
Closes #XXXXX

Thank you for contributing. Please don't make duplicate pull requests. Please delete any previous pull requests(#20176, #20155, #20145, #20063).

Quality Standards
In line with Hacktoberfest value #2 (Quantity is fun, Quality is key), we have provided examples of the quality standards we encourage. This applies mainly to beginners.

PRs that are automated e.g. scripted opening PRs to remove white space / optimize images.
PRs that are disruptive e.g. taking someone else's branch/commits and making a PR.
PRs that are regarded by a project maintainer as a hindrance vs. helping.
Something that's clearly an attempt to simply +1 your PR count for October.

Learn more at https://hacktoberfest.digitalocean.com/details

Language: russian.


Example https://github.com/bcgov/cas-ciip-portal/blob/develop/.github/workflows/commitlint.yml

CLOSED - #62 finishes this issue


Segmentation fault even do nothing on Debian 9.1

Steps to reproduce
$ powershell

Expected behavior
Works properly.

Actual behavior
Works only 10-60 seconds and then exit with segmentation fault.
Doesn't matter if execute cmdlets or just wait.

$ strace64 -p 14649
strace64: Process 14649 attached
futex(0xb84334, FUTEX_WAIT_PRIVATE, 9, NULL) = ?
+++ killed by SIGSEGV +++

Environment data

> $PSVersionTable

Name                           Value
----                           -----
PSVersion                      6.0.0-beta
PSEdition                      Core
GitCommitId                    v6.0.0-beta.4
OS                             Linux 4.11.0-2-amd64 #1 SMP Debian 4.11.11-1 (2017-07-22)
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

I have also experienced this problem on Debian 9 and on Kali. Have a suspicion that this is related to #4320. How did you install libicu55 on Debian 9?

I had try two ways. First i had install separated libicu55 and powershell for ubuntu 16.04, second way was as described in README for Debian. Offcourse i had removed libicu55 before install package for Ubuntu 14.04.

@mrDSide Thanks for your report! We don't still support Debian 9. Please continue the discussion in #4320


Active Channels missing from m3u

Please first read the documentation. Problems affecting the client, e.g. Plex or Emby should be reported there in the forum.
Describe the bug
Active channels are not being included in the generated threadfin.m3u file.
Server (please complete the following information):

OS docker (ubuntu host)
Arch: inter x64
Threadfin Version and Build: 1.2.7 (also tested on 1.2.6)

To Reproduce
Steps to reproduce the behavior:

Go to '...'
Click on '....'
Scroll down to '....'
See error

Expected behavior
The active channels should be present in the threadfin.m3u file.
Screenshots

Duplicate #374


🐛 Bug Report: Parameter 'term' must be url encoded.

📜 Description
When clicking on Search and trying to search with a space on the name text text (white space between both text strings) getting an error 400 back.
👍 Expected behavior
Search is able to be done with space in it
👎 Actual Behavior with Screenshots

👟 Reproduction steps

Backstage Home Page
Top left panel click Search
type text text into the search

📃 Provide the context for the Bug.
Not able to search with a whitespace in the text.
OS: vf-cep-backstage-597db888f4-8qddm: Linux 5.10.210-201.855.amzn2.x86_64 - linux/x64
Resources: Memory: 4703/31737MB - Load: 2.00/2.10/2.16
node: v18.20.0
backstage: 1.25.1
Dependencies:
@backstage/backend-app-api: 0.5.10, 0.5.14, 0.5.8, 0.6.2
@backstage/backend-common: 0.19.10, 0.19.9, 0.20.1, 0.21.3, 0.21.6
@backstage/backend-dev-utils: 0.1.2, 0.1.3, 0.1.4
@backstage/backend-openapi-utils: 0.1.0, 0.1.6
@backstage/backend-plugin-api: 0.6.13, 0.6.16, 0.6.7, 0.6.9
@backstage/backend-tasks: 0.5.12, 0.5.14, 0.5.18, 0.5.21
@backstage/catalog-client: 1.4.6, 1.5.2, 1.6.0, 1.6.3
@backstage/catalog-model: 1.4.3, 1.4.4, 1.4.5
@backstage/cli-common: 0.1.13
@backstage/cli-node: 0.1.5, 0.2.0, 0.2.2, 0.2.3, 0.2.4
@backstage/cli: 0.23.1
@backstage/config-loader: 1.5.3, 1.6.1, 1.6.2, 1.7.0
@backstage/config: 1.1.1, 1.2.0
@backstage/e2e-test-utils: 0.1.0
@backstage/errors: 1.2.3, 1.2.4
@backstage/eslint-plugin: 0.1.3
@backstage/integration-aws-node: 0.1.12, 0.1.8, 0.1.9
@backstage/integration: 1.7.2, 1.8.0, 1.9.0, 1.9.1
@backstage/plugin-auth-backend-module-gcp-iap-provider: 0.2.1
@backstage/plugin-auth-backend-module-github-provider: 0.1.4
@backstage/plugin-auth-backend-module-gitlab-provider: 0.1.4
@backstage/plugin-auth-backend-module-google-provider: 0.1.4
@backstage/plugin-auth-backend-module-oauth2-provider: 0.1.4
@backstage/plugin-auth-backend: 0.19.4
@backstage/plugin-auth-node: 0.4.1, 0.4.11, 0.4.3, 0.4.8
@backstage/plugin-azure-devops-backend: 0.5.1
@backstage/plugin-azure-devops-common: 0.3.2
@backstage/plugin-catalog-backend-module-azure: 0.1.26
@backstage/plugin-catalog-backend-module-github: 0.4.5
@backstage/plugin-catalog-backend-module-scaffolder-entity-model: 0.1.4
@backstage/plugin-catalog-backend-module-unprocessed: 0.3.6
@backstage/plugin-catalog-backend: 1.15.0
@backstage/plugin-catalog-common: 1.0.18, 1.0.20
@backstage/plugin-catalog-node: 1.5.0, 1.6.1
@backstage/plugin-devtools-backend: 0.2.6
@backstage/plugin-devtools-common: 0.1.8
@backstage/plugin-events-node: 0.2.16
@backstage/plugin-linguist-backend: 0.5.4
@backstage/plugin-linguist-common: 0.1.2
@backstage/plugin-permission-backend: 0.5.32
@backstage/plugin-permission-common: 0.7.10, 0.7.12, 0.7.13
@backstage/plugin-permission-node: 0.7.18, 0.7.20, 0.7.24, 0.7.27
@backstage/plugin-proxy-backend: 0.4.5
@backstage/plugin-scaffolder-backend: 1.19.1
@backstage/plugin-scaffolder-common: 1.4.3
@backstage/plugin-scaffolder-node: 0.2.8
@backstage/plugin-search-backend-module-catalog: 0.1.11
@backstage/plugin-search-backend-module-pg: 0.5.22
@backstage/plugin-search-backend-module-techdocs: 0.1.11
@backstage/plugin-search-backend-node: 1.2.11, 1.2.17
@backstage/plugin-search-backend: 1.4.7
@backstage/plugin-search-common: 1.2.8, 1.2.10
@backstage/plugin-tech-insights-backend-module-jsonfc: 0.1.48
@backstage/plugin-tech-insights-backend: 0.5.30
@backstage/plugin-tech-insights-common: 0.2.12
@backstage/plugin-tech-insights-node: 0.4.15, 0.5.2
@backstage/plugin-techdocs-backend: 1.9.0
@backstage/plugin-techdocs-node: 1.10.0
@backstage/plugin-todo-backend: 0.3.5
@backstage/release-manifests: 0.0.10
@backstage/repo-tools: 0.6.3
@backstage/types: 1.1.1
🖥 Your Environment
All pour environments are affected by this issue
👀 Have you spent some time to check if this bug has been raised before?

[X] I checked and didn't find similar issue
Maybe similar to this https://github.com/backstage/backstage/issues/19499 but not the same.

🏢 Have you read the Code of Conduct?

[X] I have read the Code of Conduct

Are you willing to submit PR?
None

This might be related to OpenAPI (cc @aramissennyeydd)

Hi @joaquin386, it's really helpful to include your environment details by running yarn backstage-cli info, it would tell us what version you are on as well as the package versions. Can you please do that?
The Backstage Demo site is on the latest weekly release - 1.26.0-next.0 - and does not have this issue: https://demo.backstage.io/. There might be more to this error, I suspect it may have been fixed in a newer version though but without those details I can't say for sure.

@awanlin Sorry just added all the package information now to the OP.

Thanks @joaquin386! So as I mentioned this works fine on the demo site. You are on the latest version but you also have many cases where multiple versions of the same packages are being used. I'm wondering if running yarn dedupe might help? Can you try that and see?

Yeah, I think this is related to the OpenAPI tooling. @joaquin386 Do you have a custom search frontend? Can you share your frontend package versions?

Thanks guys for the support, I will try to dedupe as mention by @awanlin. I do not have a custom FrontEnd just the standard Bakcstage one but in the future we plan to customise it (not yet). Will let you know about the dedupe and see if it helps.

Checking a bit more from the FE I send correctly the request (from the DeveloperTools):
Request
:method: GET
:scheme: https
:authority: website.com
:path: /api/backstage/api/search/query?term=dop%20hello&types%5B0%5D=software-catalog

Response:
Response
:status: 400

Then inside the BE container:
$ curl http://<IP_ADDRESS>:7007/api/search/query?term=dop+hello
{"error":{"name":"InputError","message":"Parameter 'term' must be url encoded. Its value may not contain reserved characters."},"request":{"method":"GET","url":"/query?term=dop+hello"},"response":{"statusCode":400}}

$ curl http://<IP_ADDRESS>:7007/api/search/query?term=dop%20hello
{"results":[]}

It should be including %20 as that's an encoded space.

Just a heads up, I have a PR out to allow the +, #23998.

We have this setup:
WAF->CloudFront->FE S3 Bucket->AWS API Gw -> BE k8s -> Any third party service.
So the problem from our side is that the AWS API GW will always return a + for a whitespace, I did open a ticket to AWS API Gw Team Support on AWS and they confirm me this behaviour and it is how the output to the BE works with spaces.
So the PR is pretty handy because it is the only way this issue can be solve (if there was a direct connection FE,BE then this issue would not have been present but adding extra layers does show up this limitation).
Thanks

See discussion in the PR - I do argue that handling + as spaces should always have been the default without extra settings (it's quite correct in the query part - + has always been the default choice as far as I knew!) so I'm a bit confused. :) But yeah no matter how the technical bits turn out, the end result should be that we accept those pluses just fine.

FYI tested and working as expected now. Thanks for the quick response.


Show account name and node alias in navbar

Type of change (Remove other not matching type)

New feature (non-breaking change which adds functionality)

Describe the changes you have made in this PR -
Until now we only showed the node alias in the NavBar. This change also show the name there.
We might want to refactor the NavBar component sometime and make that one load the account details from the AuthContext?
Screenshots of the changes (If any) -

Checklist:

[x] My code follows the style guidelines of this project and performed a self-review of my own code
[x] New and existing tests pass locally with my changes
[x] I checked if I need to make corresponding changes to the documentation (and made those changes if needed)

Is this fixing #732 or randomly covers this at least a bit?

Ah ja, it actually covers part of it. Not changing the icon, but at least the name.

Looking forward to this being merged! 👍


How to handle boundary conditions nicely? User-friendly API + kernels that support multiple BCs.

Would be nice to have a nice and user-friendly API for setting boundary conditions. What boundary conditions should we be supporting? What should this API look like? Just starting a discussion around this that I've had with @SandreOuza and @glwagner.
@glwagner made the point that the user should just have to specify whether they'd like Dirchlet, Neumann, or Robin boundary conditions. Periodic should be another option. We don't have to support all combinations.
But in finite volume boundary conditions are converted into conditions on the fluxes.
Right now we have something like this
model.boundary_conditions = BoundaryConditions(x=:periodic, y=:periodic, top=:free_slip, bottom=:free_slip)

and all the ugliness is swept under the rug.
This may involve refactoring some of the difference and interpolation operators as they might have been implicitly assuming that free-slip is being imposed. Will have to confirm with @jm-c.
PS: Assigning multiple people as I don't have much experience around this (just to get your attention) Would be good to talk and figure out what kind of API works for all of us.
Pinging: @SandreOuza

I propose that we develop a type that corresponds to a boundary conditions. I think the following user code will be nice:
...
surface_flux(x, y, z, t) = F_b * exp(-x^2 / 2L^2) * cos(σ*t)
bottom_flux = N^2

top_bc = DirichletBoundaryCondition(:T, :z; :right, surface_flux)
bottom_bc = DirichletBoundaryCondition(:T, :z, :left, bottom_flux)

model = Model(... bcs=[top_bc, bottom_bc])

(The names of the types are certainly up for debate: we might also have ConstantDirichletBoundaryCondition and VariableDirichletBoundaryCondition, and either expose it to the user or hide this layer from from the user and use multiple dispatch to parse between user-inputs.)
We can propose default boundary conditions that are deployed whenever a boundary condition is not specified.

That's a beautiful API! Users shouldn't have to worry about how to impose boundary conditions in a finite volume (or discontinuous Galerkin) formulation. The boundary conditions should be specified as you would specify them mathematically (I'm just repeating what you're saying).
Instead of :right and :left did you mean :top and :bottom?
+1 to using default boundary conditions when they're not specified. Could be mentioned in the docs and log #71 to alert the user that this was done.

I did not mean top or bottom — every coordinate comes with a sense of direction, so the words “left” and “right” are generally applicable to every coordinate system. There is no need for a special syntax for certain directions.

Ah maybe I'm misunderstanding but why does a boundary condition on the surface top_bc = DirichletBoundaryCondition(:T, :z; :right, surface_flux) need to know something about :left or :right?

A “boundary condition” is a condition that applies at one of the ends of a certain coordinate. So a boundary condition can be applied at the “right” (positive end) or “left” (negative end) of Cartesian x, y, and z, latitude, longitude, buoyancy coordinate etc.

Ah I see your point now. I still feel that using :left and :right for the x and y directions and :top and :bottom for the z-direction is clearer but this is a minor point.

We can design a functionality that just uses left and right (which is
simple and general) and then write an additional layer over that to allow
users to use top and bottom in their scripts should they feel that is
better.
On Thu, Feb 28, 2019 at 9:53 AM Ali Ramadhan<EMAIL_ADDRESS>wrote:

Ah I see your point now. I still feel that using :left and :right for the
x and y directions and :top and :bottom for the z-direction is
clearer but this is a minor point.
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/ali-ramadhan/Oceananigans.jl/issues/86#issuecomment-468301754,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AOkIBouO9TFg22xuLABdn7LbNTBjYoOEks5vR-1fgaJpZM4bVnpG
.

@glwagner should this be closed now that #118 has been merged?

Yes.


How to make new canvas layer z-compatible with Perfect Vision?

hi - I'm working on a new module called Dungeon Draw (https://github.com/mcglincy/dungeondraw-foundry-vtt) that adds a new DungeonLayer to the canvas, using zIndex -1 in layerOptions() to show the layer underneath the BackgroundLayer (and under any placeable tiles and tokens).
However, when Perfect Vision is enabled, tokens are getting drawn underneath my dungeon layer. I confirmed via the console that my layer is still zIndex -1. I started to dig into the Perfect Vision code, but realized it is non-trivial and thought it might be easier to just ask.
Any ideas how I can make my new layer play nice with Perfect Vision?
In case it matters, I'm drawing my dungeon layer using PIXI.Graphics lineTo or drawPolygon calls, and using PIXI.TilingSprite for optional floor textures.
thanks!

Hello! I'm getting rid of PV's crazy separate layer system with the Foundry v9 release, and then I no longer need to add compatibility code for your module and others. I can add some compatibility code to make Dungeon Draw work with PV in v8. I'll take a look tomorrow.

Awesome, thanks so much!
Let me know if there's anything I should add to my layer setup to make v8 compatibility easier, or for v9 future-proofing.

Fixed in 2.10.8.
In v9 there won't be compatibility code required anymore.


Compatibility issue with case-sensitive operating systems.

Adding the Nuget package for NATS.Client on Linux results in getting a NATS.Client.DLL file.  This file cannot be found when attempting to load assemblies unless it is renamed NATS.Client.dll.

@niarbeht , thank you for raising this issue; I'll look into it.

Check nuget/NATS.Client.nuspec, look for the lines:
<file src="lib\net45\NATS.Client.DLL" target="lib\net45\NATS.Client.DLL" /> <file src="lib\net45\NATS.Client.XML" target="lib\net45\NATS.Client.XML" /> <file src="lib\netstandard1.6\NATS.Client.DLL" target="lib\netstandard1.6\NATS.Client.DLL" /> <file src="lib\netstandard1.6\NATS.Client.XML" target="lib\netstandard1.6\NATS.Client.XML" />
Consider changing to:
<file src="lib\net45\NATS.Client.DLL" target="lib\net45\NATS.Client.dll" /> <file src="lib\net45\NATS.Client.XML" target="lib\net45\NATS.Client.xml" /> <file src="lib\netstandard1.6\NATS.Client.DLL" target="lib\netstandard1.6\NATS.Client.dll" /> <file src="lib\netstandard1.6\NATS.Client.XML" target="lib\netstandard1.6\NATS.Client.xml" />
I would try re-building with this change myself, but currently I'm at work, and I noticed this problem with a non-work project, so I can't do much more right now.

Further information:
$ mono --version
Mono JIT compiler version 5.0.0 (Stable <IP_ADDRESS>/9667aa6 Wed Jul 12 17:00:30 UTC 2017)
Copyright (C) 2002-2014 Novell, Inc, Xamarin Inc and Contributors. www.mono-project.com
	TLS:           __thread
	SIGSEGV:       altstack
	Notifications: epoll
	Architecture:  amd64
	Disabled:      none
	Misc:          softdebug
	LLVM:          supported, not enabled.
	GC:            sgen (concurrent by default)

Thank you @niarbeht , I'll get to this soon, likely tomorrow.

@niarbeht , I'm setting up an environment to test this.  Would you happen to have a small project that reproduces this error, or maybe a docker file that demonstrates this?
Thanks,
Colin

I can try to get something together for you tonight or tomorrow. For
now, Everything Is On Fire at work.  It was all fine yesterday morning,
and now nothing works, even though I didn't change anything.
It's definitely one of those days right now...
On 8/25/2017 11:46 AM, Colin Sullivan wrote:

@niarbeht https://github.com/niarbeht , I'm setting up an
environment to test this. Would you happen to have a small project
that reproduces this error, or maybe a docker file that demonstrates this?
Thanks,
Colin
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/nats-io/csharp-nats/issues/176#issuecomment-324975250,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AEQUlWh-EMNiSAtymv0DG69QfrObS9pqks5sbvp8gaJpZM4O-JR2.

@niarbeht , Sorry to hear that; good luck putting out fires.  Whenever you get to it is fine here - no rush.  I'll look into to this further later today or tomorrow AM.  I did verify the NuGet package does work on MacOS X.

@niarbeht , I did verify that mono doesn't like the case sensitivity.  I'll make a fix.  Is this holding you back from production at the moment?

@ColinSullivan1 It's a home project, so don't worry about it too much, just be aware that it will probably bite someone someday.  I can work around it personally for now by just leaving a properly-named .dll file in my deployed environment.
Also, sorry for not assisting more, I'm in Houston, and it's a bit wet outside right now.

OK, thanks, and good luck there in Houston - try and stay dry!
Agreed - someone may run into this, I appreciate your raising this issue.  Whenever time permits, would you mind giving this NuGet package a shot to verify?  (just remove the .zip postfix).
NATS.Client.0.8.1.nupkg.zip


typewriter doesn't handle nested RESTful routes properly

Hi Fredrik
I am trying to use Typewriter for the first time. I have to say I am impressed with the tool and the concept of the tool. Great job!
I have run into a problem where typewriter isn't handling a nested RESTful API properly. In my interface, I have a court group, which has a list of courts. So the API for the court groups is handled properly with the  route extension.
Here is the first method of my court group controller:
    [Authorize]
    [RoutePrefix("api/CourtGroups")]
    public class CourtGroupsController : OurBaseApiController
    {

        /// <summary>
        /// Returns the list of Court Groups.
        /// </summary>
        /// <returns>an array of CourtGroup objects</returns>
        [HttpGet]
        public IList<CourtGroup> GetAllCourtGroups()
        {

and typewriter correctly turned it into:
module Api.CourtBooking {

    export class CourtGroupsService {

        // get: api/courtGroups/
        public static RouteGetAllCourtGroups = () => `api/courtGroups/`;
        public static getAllCourtGroups(): JQueryPromise<CourtGroup[]> {
            return $.ajax({
                url: CourtGroupsService.RouteGetAllCourtGroups(),
                type: 'get',
                data: null
            });
        }

My .tst file looks like this:
${
    using Typewriter.Extensions.WebApi;

    string ReturnType(Method m) => m.Type.Name == "IHttpActionResult" ? "void" : m.Type.Name;
    string ServiceName(Class c) => c.Name.Replace("Controller", "Service");
    string ParentServiceName(Method m) => ServiceName((Class)m.Parent);
}

module Api.CourtBooking {
    $Classes(SquashSpider.API.Controllers.CourtBooking.*)[
    export class $ServiceName {
        $Methods[

        // $HttpMethod: $Url
        public static Route$Name = ($Parameters(p => p.Type.IsPrimitive)[$name: $Type][, ]) => `$Url`;
        public static $name($Parameters[$name: $Type][, ]): JQueryPromise<$ReturnType> {
            return $.ajax({
                url: $ParentServiceName.Route$Name($Parameters(p => p.Type.IsPrimitive)[$name][, ]),
                type: '$HttpMethod',
                data: $RequestData
            });
        }]
    }]
}

I stole this .tst file from this article:
http://kamranicus.com/blog/2016/02/04/typewriter/
Now what happens when I have a nested REST interface, one for courts that live within a court group is this:
here is my controller:
    [Authorize]
    [RoutePrefix("api/CourtGroups/")]
    public class CourtsController : OurBaseApiController
    {
        /// <summary>
        /// Returns the list of Courts for a CourtGroup.
        /// </summary>
        /// <param name="GroupId">the id of the court group</param>
        /// <returns>an array of Court objects</returns>
        [Route("{GroupId}/Courts")]
        [HttpGet]
        public IList<Court> GetAllCourts(int GroupId)
        {

and here is what typewriter outputs:
        // get: api/CourtGroups/${GroupId}/Courts?groupId=${groupId}
        public static RouteGetAllCourts = (groupId: number) => `api/CourtGroups/${GroupId}/Courts?groupId=${groupId}`;
        public static getAllCourts(groupId: number): JQueryPromise<Court[]> {
            return $.ajax({
                url: CourtsService.RouteGetAllCourts(groupId),
                type: 'get',
                data: null
            });
        }

Notice the double parameters in the $url. I think the capitalization is my problem. But the double GroupId is the problem. I originally had the {GroupId} in the RoutePrefix but the output from Typewriter was the same. I would prefer to have it in the RoutePrefix since {GroupId} shows up in every one of my Court controller's URLs.
This seems to be a valid route case that the WebAPI extension doesn't handle properly.
Any suggestions?
Thanks
Greg

As a quick follow up, I was looking at a different web service on the same courts controller and noticed another problem. Here is the controller:
        [HttpPost]
        [Route("{GroupId}/Courts/")]
        public IHttpActionResult AddCourt(int GroupId, Court court)
        {

and this is what was generated:
        // post: api/CourtGroups/${GroupId}/Courts/
        public static RouteAddCourt = (GroupId: number) => `api/CourtGroups/${GroupId}/Courts/`;
        public static addCourt(GroupId: number, court: Court): JQueryPromise<void> {
            return $.ajax({
                url: CourtsService.RouteAddCourt(GroupId),
                type: 'post',
                data: { groupId: groupId, court: court }
            });
        }

Notice in the data, there is an extra groupId: groupId. There should only be a court: court because the groupId is sent as part of the Url. I think this is all related but I wanted to point out this case as well.
Thanks
Greg

Hi @gregveres
It seems Typewriter incorrectly camel-cases the route parameters when creating the url, I'll add a fix for this.. Meanwhile you should be able to get working by camel-casing the route parameters and the method parameters e.g.
[HttpPost]
[Route("{groupId}/Courts/")]
public IHttpActionResult AddCourt(int groupId, Court court)
{

Hi @frhagn
Yes the camel case is one issue, but that can be worked around. Did you notice the other issue where it doesn't handle a parameter in the route? It generated the URL as:
       public static RouteGetAllCourts = (groupId: number) =>api/CourtGroups/${GroupId}/Courts?groupId=${groupId};
Notice the groupId in there twice, once as part of the URL path and once as a parameter. That is the issue that I don't see a way to work around.
I just wanted to make sure you saw that issue too.
Thanks
Greg

I think camel casing the parameters should solve the second issue as well.. Do you still get the extra quert string parameter even after camel casing?

Ah I see what you mean. You are correct. Once I changed the first letter of my parameters from upper case to lower case, typewriter started to behave perfectly. Thank you very much for the full work around while I wait for an update.
I love this tool. It has made things so much simpler. Thank you!

Cool, I'm working on the fix now so it'll be available soon

I just came across another instance where it isn't creating the proper URL, I think. I might be missing something though.
Here is my controller:
[Authorize]
  [RoutePrefix("api/[Controller]")]
  public class CourtGroupsController : OurBaseApiController
  {
      [HttpPost]
      [HttpPut]
      public IHttpActionResult EditCourtGroup(int groupId, CourtGroup group)
      {
      }
 }

and my .tst file:
${
    using Typewriter.Extensions.WebApi;

    string ReturnType(Method m) => m.Type.Name == "IHttpActionResult" ? "void" : m.Type.Name;
    string ServiceName(Class c) => c.Name.Replace("Controller", "Service");
    string ParentServiceName(Method m) => ServiceName((Class)m.Parent);
}

module Api.CourtBooking {
    $Classes(SquashSpider.API.Controllers.CourtBooking.*)[
    export class $ServiceName {
        $Methods[

        // $HttpMethod: $Url
        public static Route$Name = ($Parameters(p => p.Type.IsPrimitive)[$Name: $Type][, ]) => `/$Url`;
        public static $name($Parameters[$Name: $Type][, ]): JQueryPromise<$ReturnType> {
            return $.ajax({
                url: $ParentServiceName.Route$Name($Parameters(p => p.Type.IsPrimitive)[$Name][, ]),
                type: '$HttpMethod',
                data: $RequestData
            });
        }]
    }]
}

it generated:
module Api.CourtBooking {

    export class CourtGroupsService {

        // post: api/courtGroups/
        public static RouteEditCourtGroup = (groupId: number) => `/api/courtGroups/`;
        public static editCourtGroup(groupId: number, group: CourtGroup): JQueryPromise<void> {
            return $.ajax({
                url: CourtGroupsService.RouteEditCourtGroup(groupId),
                type: 'post',
                data: { groupId: groupId, group: group }
            });
        }

Notice that groupId is pushed down as a body parameter rather than a URL parameter.  I have to admit I don't really know how Visual Studio knows that groupId should be a URL parameter, but it does. Even the API Help pages catch it as a URL parameter.
But as a work around, I can rename groupId to just id and then Typewriter knows that id should be a URL parameter. So I will go with that for now.

I have tried this in 1.7.4 and it is all working now.
Thanks for the fix!
Greg


feat: add claim erc-20 tokens button on your balance in tokens section

Current dependencies on/for this PR:

main

PR #4178   👈

This stack of pull requests is managed by Graphite.

@wraeth-eth looks good! Should we consider:

Only show the link to users who have claimable tokens.
Remove "Claim tokens as ERC-20" from the ... menu next to this link.


default value for sharedData

Version
3.0.3
Node and OS info
node 8.12.0 / npm 6.4.1 /  osx 10.12.6
Steps to reproduce
i have some sharedData like ：
  const pkg = JSON.parse(fs.readFileSync(api.resolve('package.json'), 'utf-8'))
  api.setSharedData('net.istrong.pkg', pkg)

i get it in ui-addon like：
  sharedData () {
    return {
      pkg: 'net.istrong.pkg'
    }
  }

and use it ：
<p>{{pkg.name}}</p>

What is expected?
my project's name is rendered with tag p
What is actually happening?
all going well in browser， but got a error Cannot read property 'name' of null， it maybe template got a null before sharedData callback.

it can be deal by {{pkg && pkg.name}} ,  but dirty.   so can set some default value for sharedData?uh, like props.

@Akryum  That's it.  but some hack like _pkg () { return this.pkg || {}} of computed property is not a good experience.
and I find that the value of sharedData is not  on  deep watch. so I should map every  property of pkg when I want all data can be updated auto.
have some way to updated data concise ?  especially in some form tag like input
<VueInput v-model="pkg && pkg.name" />
...
...
sharedData () {
  return {
    pkg: 'net.istrong.pkg'
  }
},
computed: {
      name: {
        get () {
          return this.pkg && this.pkg.name
        },
        set (val) {
          this.pkg = Object.assign(this.pkg, {name: val})
        }
      },
}

or map the data what I need in server one by one  is better ?


Keep BC in ChainOptimizer

As described in https://github.com/psliwa/image-optimizer/pull/47.

@psliwa Can you please take a look?

@psliwa Ping.

@psliwa Pong.

My reasoning about not accepting this PR is here: https://github.com/psliwa/image-optimizer/pull/47#issuecomment-363890458. It would introduce BC-break once again when I release it as 1.1.x or even as 1.2.x. Releasing this as 2.x.x won't improve anything, because cleaner constructor signature is IMHO without default parameters. In the future I will be more strict about BC-breaks and semantic versioning, even if I didn't commit to semantic versioning before (my idea was to have minior.patch.bug-fix approach, but probably it is less intuitive for the users).

OK, thanks. But I still think this BC break was unnecessary. :)


markersize should be specified in axis coordinates by default

To the best of my understanding markersize for scatter gives the size to data coordinates by default.
This is very confusing and makes it difficult to choose good marker sizes for different data.
I suggest the scale of this thing to be by default the axis scale e.g.
let's say from both x and y axis pick the biggest one and assume its size to be 1.0 .Then markersize corresponds to these units from 0 all the way to 1.0.

The current convention is very helpful for some tasks (e.g. https://gist.github.com/mschauer/a58e5ccab971a617ec965253ac3407bf) it would be nice to leave it as an option. Whether markersize as a fraction of the axis length (as I understand you) is a good default, I cannot say. A different option would be to link the marker size to the size of text elements of the plot.

I think marker size as a fraction of the axis length is the best default. It is also the only way you can guarantee a good default value for it. Otherwise the current default value, whatever it may be, it cannot be good for all data.

As I also said on discourse I think it makes sense to distinguish between dimensionless points that have no size but are shown by a marker which has a size in the display window; and spheres that have a size in the coordinate system. It would be possible to plot both with scatter, but the common convention (and my recommendation) is for scatter to have dimensionless points with markers by default (as also suggested by @Datseris ). If you want spheres like in @mschauer 's example you can pass a Sphere object to marker.
An alternative solution (which I think is clearer) is to have coordinate-system objects in meshscatter and always just points in scatter.
I don't think the markers should be in units of the axis length, I think they should be in Pt or whatever pixel implementation is used for font sizes and axis line widths.

I don't think the markers should be in units of the axis length, I think they should be in Pt or whatever pixel implementation is used for font sizes and axis line widths.

Yeap this is fine and probably what I meant... I am not really familiar with how PyPlot does it, but it is a dimensionless number, independent of the data. I guess it is this "Point" which corresponds to some pixel points.

Somehow related: it seems that the radius is missing at HyperSphere Radius or is it on purpose?

I don't think the markers should be in units of the axis length, I think they should be in Pt or whatever pixel implementation is used for font sizes and axis line widths.

If we want a "pixel-like" measure we could follow android with the dip https://en.wikipedia.org/wiki/Device-independent_pixel so that things would work on HighDPI screens. This would seem to be the relatively non-breaking option.
Alternatively we could go with the typographic pt or similar which might be more well defined in the long run.

If the idea is to be resolution-independent (which I think would be great) it seems like a real physical measurement that represents on-screen size (like pt or mm) would be better than that device-independent pixel thing. It seems like the DIP measurement is an awkward half-step where it's supposed to be resolution-independent but you still need to know the pixel conversion factor for it to have any meaning.
Just wanted to :+1: this in general though. I just spent some time trying to figure out why my scatter markers weren't showing up, and it turned out they were just really tiny because my data goes from 0-2000 and I was plotting them over an image, so they were difficult to see.

I started this here:
https://github.com/JuliaPlots/AbstractPlotting.jl/pull/91
Hope I can find some time to merge it soon!

it seems like a real physical measurement that represents on-screen size (like pt or mm) would be better than that device-independent pixel thing

The problem with distance units is that they do not (and cannot) go far enough: they don't consider the distance of the user to the screen. What really matters perceptually is the angular size of the features that the user sees on the screen.
Of course, you may make an assumption that the user is sitting a "normal distance" to a monitor, but this falls down in various situations:

Presentations on large screens
Posters
Handheld vs desktop

Given these difficulties I'm not convinced that baking in a strict specification of distance is a good idea: it's not even measuring features in the right units!
I feel like the DIP might be a simple concession to these kind of concerns, in that it can be considered an angular unit and defined appropriately per device or per screen based on typical viewing distance.

To expand on the argument for using an angular unit (or interpreting the DIP as one):
Imagine you're making a presentation for display on a projector, you might guess that people will be 5 m away from the screen, and the correct size in mm (eg, for line width) can then be calculated by knowing the viewing distance and also knowing the size of the projector screen.
But generically written recipes should never care about this kind of calculation because they should work equally well if the display is a handheld device or a normal desktop monitor!
So having thought about the above examples I feel confident that we should not encourage distance units for generic plotting purposes, especially not in generic recipes. We need something like the DIP or equivalent which people are familiar-enough with, but can be consistently interpreted as an angular unit.
Having done that, the size of the DIP can be scaled as appropriate based on the ratio of the screen width to view distance, and this should be be handled in exactly on place: the screen configuration.

Just specifying marker sizes and line widths in the same unit as the plot fonts is imho transparent and produces expected results. Taking extra steps on considering mean monitor resolution / size / viewing distance seems a bit overengineered to me.

well, what unit will you specify the font size? :D It's currently also in world units...

Also, any non world unit is difficult for the plotting pipeline right now - but when we solve units, a unit like DIP is trivial ;)

What units is marker size actually in? It doesn't seem to be data units:
julia> scatter([1, 2], [1, 2], [1, 2], markersize=100)

I would have expected that markersize=1 would have given spheres of radius 1 in data units (reaching nearly to the other point), but instead with markersize=1 they are so small you can barely see them. With markersize=100 (100%?) they are still smaller than I expected.

It's actually in pixel at the moment! You can change it to data units, withmarkerspace=SceneSpace():
http://makie.juliaplots.org/dev/plotting_functions.html#scatter (almost documented 😅 )

Thanks! But I get this:
julia> SceneSpace()
ERROR: MethodError: no method matching SceneSpace()
Closest candidates are:
  SceneSpace(::T) where T at /home/tim/.julia/packages/AbstractPlotting/Q2ju2/src/units.jl:38
Stacktrace:
 [1] top-level scope at REPL[19]:1

Oh woops :D This is a bit of a mess ...


[Website] Ads over website content

Steps

Open https://semantic-ui.com/elements/button.html
Click '11 Themes'
Content of dropdown appears behind the advertisement so  2nd item of the dropdown is blocked

Expected Result
Ad should be behind the content of the dropdown
Actual Result

Version
2019-12-25
Testcase
Win 10 Ent, Firefox 71.0, Chrome 79.0.3945

I believe this is a repeat of #6909 and should be closed.


Fixed main_screen ui issue

@Adityabhaumik Please squash your commits and provide a screenshot of the screen after the fix.

@harchani-ritik  is it fine now?


Just copy the Rust lib instead of having a submodule.

Just to simplify development, I suggest we have the sources directly in this repository instead of having to deal with a submodule.

One downside is that we lose Travis CI, but I think this is worth it. What do you think?

Agree it will be easier. I was thinking about Travis as well, also for the tutorial part, and I cannot imagine having 2 subprojects for this reason - so at some point we will have to find a solution for the whole of Thrift. I will open an issue to address this.

Hmm, is there a way on github to open an issue on a fork of a project? Maybe it is a bit too early in the morning...

You have to enable issues in the project settings first.

Thanks!
https://github.com/maximg/thrift/issues/3
On Thu, Jan 15, 2015 at 1:11 PM, Simon Génier<EMAIL_ADDRESS>wrote:

You have to enable issues in the project settings first.
—
Reply to this email directly or view it on GitHub
https://github.com/maximg/thrift/pull/2#issuecomment-70077091.


ERROR: Could not find a version that satisfies the requirement mpi4py-mpich (from xtuner[all]) (from versions: none)

Hi All,
I am trying to follow the quick start installation and once I follow the steps, I see the error as below.
This is the full error :
(xtuner-env) yoojinchoi@Yoos-MacBook-Pro xtuner % pip install -e '.[all]'
Obtaining file:///Users/yoojinchoi/Desktop/Yoo%20Jin%20Choi/python/xtuner
Preparing metadata (setup.py) ... done
Requirement already satisfied: bitsandbytes>=0.40.0.post4 in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.42.0)
Requirement already satisfied: datasets>=2.16.0 in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (2.19.1)
Requirement already satisfied: einops in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.8.0)
Requirement already satisfied: lagent>=0.1.2 in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.2.2)
Requirement already satisfied: mmengine>=0.10.3 in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.10.4)
Requirement already satisfied: openpyxl in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (3.1.2)
Requirement already satisfied: peft>=0.4.0 in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.11.1)
Requirement already satisfied: scikit-image in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.23.2)
Requirement already satisfied: scipy in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (1.13.0)
Requirement already satisfied: SentencePiece in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.2.0)
Requirement already satisfied: tiktoken in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.7.0)
Requirement already satisfied: torch in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (2.3.0)
Requirement already satisfied: torchvision in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.18.0)
Requirement already satisfied: transformers!=4.38.0,!=4.38.1,!=4.38.2,>=4.36.0 in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (4.41.0)
Requirement already satisfied: transformers_stream_generator in /Users/yoojinchoi/miniforge3/envs/xtuner-env/lib/python3.10/site-packages (from xtuner==0.1.19) (0.0.5)
Collecting deepspeed>=0.12.3 (from xtuner==0.1.19)
Using cached deepspeed-0.14.2.tar.gz (1.3 MB)
Preparing metadata (setup.py) ... done
INFO: pip is looking at multiple versions of xtuner[all] to determine which version is compatible with other requirements. This could take a while.
ERROR: Could not find a version that satisfies the requirement mpi4py-mpich (from xtuner[all]) (from versions: none)
ERROR: No matching distribution found for mpi4py-mpich
this is the command that I ran:
conda create --name xtuner-env mpi4py python=3.10 -y
529  conda activate xtuner-env
530  pip install -U xtuner
531  git clone https://github.com/InternLM/xtuner.git
532  cd xtuner
533  pip install -e '.[all]'
534  conda install conda-forge::py-cpuinfo
535  pip install -e '.[all]'
536  conda install conda-forge::pydantic
537  pip install -e '.[all]'
I also ran 'brew install mpi4py'
but none of these are working. Can someone please help me on this?
Please let  me know any further details needed.

Currently, XTuner only supports NVIDIA devices and does not support the Mac system. @eugine5

gotcha, I will test it out with the NVIDIA devices. Thank you @pppppM !!


Question about  chestmnist dataset

When I use the chestmnist dataset, I found:
class c = 0: 70472 real images
class c = 1: 7996 real images
class c = 2: 0 real images
class c = 3: 0 real images
class c = 4: 0 real images
class c = 5: 0 real images
class c = 6: 0 real images
class c = 7: 0 real images
class c = 8: 0 real images
class c = 9: 0 real images
class c = 10: 0 real images
class c = 11: 0 real images
class c = 12: 0 real images
class c = 13: 0 real images

However, it seems that the chestmnist dataset has multi-label:
Dataset ChestMNIST of size 28 (chestmnist)
    Number of datapoints: 78468
    Root location: /home/user3/.medmnist
    Split: train
    Task: multi-label, binary-class
    Number of channels: 1
    Meaning of labels: {'0': 'atelectasis', '1': 'cardiomegaly', '2': 'effusion', '3': 'infiltration', '4': 'mass', '5': 'nodule', '6': 'pneumonia', '7': 'pneumothorax', '8': 'consolidation', '9': 'edema', '10': 'emphysema', '11': 'fibrosis', '12': 'pleural', '13': 'hernia'}
    Number of samples: {'train': 78468, 'val': 11219, 'test': 22433}
    Description: The ChestMNIST is based on the NIH-ChestXray14 dataset, a dataset comprising 112,120 frontal-view X-Ray images of 30,805 unique patients with the text-mined 14 disease labels, which could be formulized as a multi-label binary-class classification task. We use the official data split, and resize the source images of 1×1024×1024 into 1×28×28.
    License: CC BY 4.0
===================
Dataset ChestMNIST of size 28 (chestmnist)
    Number of datapoints: 22433
    Root location: /home/user3/.medmnist
    Split: test
    Task: multi-label, binary-class
    Number of channels: 1
    Meaning of labels: {'0': 'atelectasis', '1': 'cardiomegaly', '2': 'effusion', '3': 'infiltration', '4': 'mass', '5': 'nodule', '6': 'pneumonia', '7': 'pneumothorax', '8': 'consolidation', '9': 'edema', '10': 'emphysema', '11': 'fibrosis', '12': 'pleural', '13': 'hernia'}
    Number of samples: {'train': 78468, 'val': 11219, 'test': 22433}
    Description: The ChestMNIST is based on the NIH-ChestXray14 dataset, a dataset comprising 112,120 frontal-view X-Ray images of 30,805 unique patients with the text-mined 14 disease labels, which could be formulized as a multi-label binary-class classification task. We use the official data split, and resize the source images of 1×1024×1024 into 1×28×28.
    License: CC BY 4.0

How can I use the multi-label instead of just binary-class?

Hi @nightrain-vampire，
For multi-label binary-class datasets, the labels are represented in an array with shape N x L, where L denotes the number of task labels in the multi-label dataset. Hence, the label array of chestmnist is with shape N x 14.
In other words, each sample has a label of 14 binary values, denoting positive (1) or negative (0) for each of the 14 diseases. You can use the following code to check the labels:
train_dataset = medmnist.ChestMNIST(split='train', download=True)
print(train_dataset.labels.sum(axis=0))

Hi @nightrain-vampire，
For multi-label binary-class datasets, the labels are represented in an array with shape N x L, where L denotes the number of task labels in the multi-label dataset. Hence, the label array of chestmnist is with shape N x 14.
In other words, each sample has a label of 14 binary values, denoting positive (1) or negative (0) for each of the 14 diseases. You can use the following code to check the labels:
train_dataset = medmnist.ChestMNIST(split='train', download=True)
print(train_dataset.labels.sum(axis=0))

I understand! Thank you very much!


The drop-down menu will not automatically disappear after clicking on the mobile phone

Environment

<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>platform: macOS
browser:  Chrome 117.0.5938.149 (Official Build) (x86_64) (Open dev tools, select mobile view)

🐛 Bug Report
The drop-down menu will not automatically disappear after clicking on the mobile phone, but this will not happen on the desktop version.
To Reproduce
https://github.com/shiyiya/oplayer/assets/8630635/e0c4df73-72a8-459a-aa59-4a341044099e
Expected behavior
https://github.com/shiyiya/oplayer/assets/8630635/0ee475db-ef7a-4a0b-9776-9b8386a5d16e
Link to repl or repo (highly encouraged)
Please provide a minimal repository on GitHub.
Issues without a reproduction link are likely to stall.

putting it in the settings


Bratseth/document parsing error messages

@geirst please review. The changes are in the first commit.

Please mr. Merge Stop Enforcer


Transformed 0 PHP types to TypeScript

I'm running the script on windows 11 with PHP version 8.2.7 I've also tried several approaches without success:
set up a project with only "spatie/typescript-transformer" v2 installed... 0 TypeScript code generated.
create a Laravel project and publish the configuration of "spatie/laravel-typescript-transformer" v2... 0 TypeScript code generated.
+-----------+-------------------+
| PHP class | TypeScript entity |
+-----------+-------------------+
Transformed 0 PHP types to TypeScript

I've tested both approaches to commenting my PHP classes.
/** @typescript */

and
#[TypeScript]

I'm a little desperate
my composer.json
{
    "name": "laravel/laravel",
    "type": "project",
    "description": "The skeleton application for the Laravel framework.",
    "keywords": ["laravel", "framework"],
    "license": "MIT",
    "require": {
        "php": "^8.1",
        "guzzlehttp/guzzle": "^7.2",
        "laravel/framework": "^10.10",
        "laravel/sanctum": "^3.2",
        "laravel/tinker": "^2.8",
        "spatie/laravel-typescript-transformer": "^2.3"
    },
    "require-dev": {
        "fakerphp/faker": "^1.9.1",
        "laravel/pint": "^1.0",
        "laravel/sail": "^1.18",
        "mockery/mockery": "^1.4.4",
        "nunomaduro/collision": "^7.0",
        "phpunit/phpunit": "^10.1",
        "spatie/laravel-ignition": "^2.0"
    },
    "autoload": {
        "psr-4": {
            "App\\": "app/",
            "Database\\Factories\\": "database/factories/",
            "Database\\Seeders\\": "database/seeders/"
        }
    },
    "autoload-dev": {
        "psr-4": {
            "Tests\\": "tests/"
        }
    },
    "scripts": {
        "post-autoload-dump": [
            "Illuminate\\Foundation\\ComposerScripts::postAutoloadDump",
            "@php artisan package:discover --ansi"
        ],
        "post-update-cmd": [
            "@php artisan vendor:publish --tag=laravel-assets --ansi --force"
        ],
        "post-root-package-install": [
            "@php -r \"file_exists('.env') || copy('.env.example', '.env');\""
        ],
        "post-create-project-cmd": [
            "@php artisan key:generate --ansi"
        ]
    },
    "extra": {
        "laravel": {
            "dont-discover": []
        }
    },
    "config": {
        "optimize-autoloader": true,
        "preferred-install": "dist",
        "sort-packages": true,
        "allow-plugins": {
            "pestphp/pest-plugin": true,
            "php-http/discovery": true
        }
    },
    "minimum-stability": "stable",
    "prefer-stable": true
}

my typescript-transformer.php
<?php
/*
 * Copyright (c) 2023 La Maison Fantastique - All Rights Reserved
 */

declare(strict_types=1);

use Spatie\LaravelTypeScriptTransformer\Transformers\DtoTransformer;
use Spatie\LaravelTypeScriptTransformer\Transformers\SpatieStateTransformer;
use Spatie\TypeScriptTransformer\Collectors\DefaultCollector;
use Spatie\TypeScriptTransformer\Collectors\EnumCollector;
use Spatie\TypeScriptTransformer\Formatters\PrettierFormatter;
use Spatie\TypeScriptTransformer\Transformers\EnumTransformer;
use Spatie\TypeScriptTransformer\Transformers\InterfaceTransformer;
use Spatie\TypeScriptTransformer\Transformers\SpatieEnumTransformer;

return [
    /*
     * The paths where typescript-transformer will look for PHP classes
     * to transform, this will be the `app` path by default.
     */

    'auto_discover_types'       => [app_path('/../../../www/app')],

    /*
     * Collectors will search for classes in the `auto_discover_types` paths and choose the correct
     * transformer to transform them. By default, we include a DefaultCollector which will search
     * for @typescript annotated and ![TypeScript] attributed classes to transform.
     */

    'collectors'                => [
        DefaultCollector::class,
        EnumCollector::class,
    ],

    /*
     * Transformers take PHP classes(e.g., enums) as an input and will output
     * a TypeScript representation of the PHP class.
     */

    'transformers'              => [
        DtoTransformer::class,
        EnumTransformer::class,
        InterfaceTransformer::class,
        SpatieEnumTransformer::class,
        SpatieStateTransformer::class,
    ],

    /*
     * In your classes, you sometimes have types that should always be replaced
     * by the same TypeScript representations. For example, you can replace a
     * Datetime always with a string. You define these replacements here.
     */

    'default_type_replacements' => [
        // DateTime::class               => 'string',
        // DateTimeImmutable::class      => 'string',
        // Carbon\CarbonImmutable::class => 'string',
        // Carbon\Carbon::class          => 'string',
    ],

    // The package will write the generated TypeScript to this file.
    'output_file'               => resource_path('/../../../www/src/@types/generated.d.ts'),

    /*
     * When the package is writing types to the output file, a writer is used to
     * determine the format. By default, this is the `TypeDefinitionWriter`.
     * But you can also use the `ModuleWriter` or implement your own.
     */

    'writer'                    => Spatie\TypeScriptTransformer\Writers\ModuleWriter::class,

    /*
     * The generated TypeScript file can be formatted. We ship a Prettier formatter
     * out of the box: `PrettierFormatter` but you can also implement your own one.
     * The generated TypeScript will not be formatted when no formatter was set.
     */

    'formatter'                 => PrettierFormatter::class,

    /*
     * Enums can be transformed into types or native TypeScript enums, by default
     * the package will transform them to types.
     */

    'transform_to_native_enums' => false,
];

I deliberately targeted a project outside the scope of Laravel because I don't use it in my project and I didn't want to pollute it with a Laravel installation.

are you sure you want app_path('/../../../www/app')
start a tinker and test that expression, to see if it returns what you expect it to return.


Cannot create ArPayment API

I am trying to create ArPayment against an invoice.
But always got an error. What part of my execution is wrong?
This is the invoice screen shot :

And this is the create function with error:

You are using TRX_INLINEAMOUNT which is an inline credit, so you will likely need to supply the INLINEKEY and/or INLINEENTRYKEY.  If you just meant to make a normal payment, then use TRX_PAYMENTAMOUNT instead of TRX_INLINEAMOUNT.


Smaato: DSA support

Added a test for Smaato adapter to ensure that DSA object is being sent and forwarded back

@tetianaatsmaato
our change https://github.com/prebid/prebid-server/pull/3646 has been merged
you might want to rebase your branch here


bfloat16 not supported on Google Colab T4

I'm trying to get this working in Google Colab based on the info in the readme, but I get the following error:
  File "/content/metavoice-src/fam/llm/sample.py", line 696, in <module>
    smodel, llm_first_stage, llm_second_stage = build_models(
  File "/content/metavoice-src/fam/llm/sample.py", line 571, in build_models
    llm_first_stage = Model(
  File "/content/metavoice-src/fam/llm/sample.py", line 81, in __init__
    nullcontext() if device_type == "cpu" else torch.amp.autocast(device_type=device_type, dtype=ptdtype)
  File "/usr/local/lib/python3.10/dist-packages/torch/amp/autocast_mode.py", line 305, in __init__
    raise RuntimeError(
RuntimeError: Current CUDA Device does not support bfloat16. Please switch dtype to float16.

Yes, this is expected. bfloat16 is not supported on Nvidia T4s. See here for similar issue.
Would love if you can open a PR to handle this edge case?
PyTorch has an API to check for this: torch.cuda.is_bf16_supported()

I got the reference implementation script to run by including the flag --dtype=float16, but I got an out of memory error on the T4 GPU. I'm just trying to get this working on Colab, and I'm not sure how to proceed from here.

The model needs ~20GB of memory today. Therefore, a GPU with >= 24GB of memory will be required. Try using an a10 GPU
I'll add this to the README.md shortly.

Hello @DePasqualeOrg
I was able to run it in colab using A100 High Ram.
Here is a link to colab

Could you make a PR on setting up google colab up? It would be incredibly helpful to others

Done @sidroopdaska


TensorBoard logdir assignment issue

Dear all,
As instructed I type
$tensorboard --logdir=/tmp/tensorflowlogs --debug
but the debug message showing that the tensorboard logdir is still in my working dir.
INFO:tensorflow:TensorBoard path_to_run is: {'/home/USER_NAME/Documents/workspace/python_dir/tensor_test/=': None}
However after I deleted the "=" sign and replace it with a space
$tensorboard --logdir /tmp/tensorflowlogs --debug
the debug message show the right direcory
INFO:tensorflow:TensorBoard path_to_run is: {'/tmp/tensorflowlogs': None}
I don't know its a typo or something in the instruction.
So just FYI

@ToxidoLiu When you say "As instructed I type $tensorboard...", what are you referring to?  Can you provide a link to the documentation that you're following?
That'll help us identify if there is a problem, and fix it up if so.  Thanks!

@tatatodd
I check the instruction in the following link, first section
https://github.com/tensorflow/tensorflow/blob/master/tensorflow/tensorboard/README.md#my-tensorboard-isnt-showing-any-data-whats-wrong
Thanks!

@ToxidoLiu I cannot reproduce your problem.  Can you provide the following information, which is also the default template when you click on the green "New issue" button:

Environment info
Operating System:
Installed version of CUDA and cuDNN:
(please attach the output of ls -l /path/to/cuda/lib/libcud*):
If installed from binary pip package, provide:

A link to the pip package you installed:
The output from python -c "import tensorflow; print(tensorflow.__version__)".

If installed from source, provide

The commit hash (git rev-parse HEAD)
The output of bazel version

@ToxidoLiu based on #4832 I'm assuming you're running TensorFlow version 0.8.  Please try the latest version of TensorFlow 0.11, since 0.8 is quite old at this point:
https://www.tensorflow.org/versions/r0.11/get_started/os_setup.html#download-and-setup

Closing due to inactivity.


Split core into stand alone package.

I am working this weekend to split the rules from ember-cli-template-lint into ember-template-lint which has a simple JS API (and is unrelated to ember-cli). This library would then consume that external lib, and work exactly the same as it does today.
This will unlock a number of things:

Writing the reverse of sourceForNode (ala rewriteNode or something).
Add a command line invocation (outside of ember-cli land)
Use both of those things and add a --fix command to rewrite mechanical refactors (aka {{each foo in bar}} to {{each bar as |foo|}}). This could be used like (or from) ember-watson.

/cc @fivetanley

this thing gon'na be great. when do you plan to start with it?
and i have a suggestion. i'm not sure why on the rules files we export a function that returns a class?
maybe it would be a simpler to change the rules so we just export the class:
var buildPlugin = require('./base');

var LogTripleCurlies = module.exports = buildPlugin('triple-curlies');

LogTripleCurlies.prototype.parseConfig = function(config) {···};

//···

the addonContext will be added in the constructor which not seem to be in used by the plugins anyway, and in ES6 it would be even prettier:
var buildPlugin = require('./base');

module.exports = class LogTripleCurlies extends buildPlugin('triple-curlies') {
  parseConfig(config) {
    //···
  }
};

The current structure is required because of internal details of the AST parsing. Currently, HTMLBars / Glimmer call plugin = new Plugin(); plugin.syntax = someSyntaxThing each time we compile a file.  So the current "return a function that returns a class" thing is needed so that the addon context can be provided (since we can't pass instances to the build config).
It is definitely possible to fix this, it just hasn't been a super high priority yet...

i've just said that, because it's a great timing for making API changes.
and for the first question i've asked :) when do you plan to start this project? i'd like to help in what i can

I am still working on some refactors but the new repo is at https://github.com/rwjblue/ember-template-lint.


CSS

CSS
User Story
As a boot camp student
I want the prework notes to be structured on a webpage
So that I can easily find and read the information
Acceptance Criteria
GIVEN a Prework Study Guide website
WHEN I view the study guide
THEN I see a dark blue header and footer, and four boxes with a shadow

Added CSS to the project.

Added CSS to the project.


Add extra nginx conf for Static

This adds extra nginx configuration for static to set up a redirect for the crown logo and robots.txt. These rules are used by the asset domain. The configuration has been copied from govuk-puppet.

Closed in favour of https://github.com/alphagov/govuk-helm-charts/pull/754