Non-english characters are encoded

Reported as https://github.com/aspnet/Razor/issues/409 by @anfomin
Every non-english character is encoded. For example:
@{
    string s = "Добрый день"; // this is Russian text
}
@s

The result is something like:

Characters displayed correct, but page size increased significantly :-1: Also MVC 5 rendered unicode symbol correctly in HTML source.

Actually MVC 5 would have done the same if you'd switched to AntiXSS as the encoder.
By design.

What API are you complaining about?

Ah,  IHtmlEncoder

@blowdart however in MVC 5 it was a choice and the default HTML encoder provided readable source or a reasonable size.

The standard Russian characters should have been safe listed with the new encoder.
You'll need to examine the whitelist generation to see why they're not.

@blowdart from the HtmlEncoder source, the default escaped range is UnicodeRanges.BasicLatin which has this convenient comment:
/// A <see cref="UnicodeRange"/> corresponding to the 'Basic Latin' Unicode block (U+0000..U+007F).

Are you suggesting a different default?

I though it was changed, but ok. And no, let's be honest, I'd encode everything by default to avoid certain utf7 badness. Customer can use the Default property to widen their safe list as needed.

Every character encoding brings another problems. Sometimes we use <script> generation in razor pages like:
<script>
	$(function() {
		var someVariable = "@thisIsDotNetVariable";
		// other code goes here
	});
</script>

So JavaScript will not decode this value and will display unicode numbers.

Don't do that for javascript. It's simply wrong.
@ encoding is HTML encoding. It's not JavaScript encoding. Using HTML encoding inside javascript means some of the characters that can cause javascript injection are not encoded.
The most full proof way to inject variable values into javascript is to have a div or span or other tag, and use a data attribute - using @ encoding there is correct, and you're protected. Then you'd retrieve it within the javascript.

@blowdart OK, this it good explanation not to use @ with JS. But encoded-text increase page size 7 times (each character converted into 7). I do not think this is good behavior by default.
Also there is no attack can be done using Russian or any other language characters so they do not require HTML encoding. This characters do not have any "special" behavior compared to english ones.

Actually you can attack via some characters depending on the underlying page encoding and other badness. Utf7 is a great example of this - http://openmya.hacker.jp/hasegawa/public/20071107/s6/h6.html?file=datae.txt has some details.
We're discussing internally what we want to do - but the encoders are used by things other than razor, and defaulting to encoding everything over and above ASCII is what makes it 100% safe for the other things to consume, so I'm not minded to change the default encoder configuration. With gzip compression which most servers support these days the actually transport size increase shouldn't be that painful, but I realise if you're not in a default English speaking country it's probably not a cost you want to take (being a Brit, it annoys me when we end up assuming everything speaks US english).
You could just whitelist everything yourself, either by
HtmlEncoder.Default = new HtmlEncoder(UnicodeRanges.All);

before the encoder gets registered in DI, or via
serviceColl.AddWebEncoders(o => {
    o.CodePointFilter = new CodePointFilter(UnicodeRanges.All);
});

If you wanted to narrow it down, the you can create ranges and pass them into the encoder which match the Unicode code charts which contain the characters you need (Unicode doesn't do languages, so you will need to mix and match - you can find the code charts at http://www.unicode.org/charts/)

Note setting HtmlEncoder.Default is likely not what you want. That changes only the HTML encoder, leaving the JavaScript and URL encoders with their (ASCII) defaults.
Recommend
  services.Configure<WebEncoderOptions>(options => new CodePointFilter(UnicodeRanges.All));

because (today) nothing configures WebEncoderOptions but much of the system adds the web encoders.

@blowdart Is there any action required here? This sounds all by design.

By design. The MVC team wanted to change it somewhat, but never came up with a suitable suggestion,

I have the same problem with accents (pt-BR). In previous versions this was not a problem.
I think to a final version, native, pure and simple MVC should accept this kind of character without that develop change any settings.
More than a technical issue, for me it is a matter of attention to non-English developers

The api was changed, the issue can be walked abound by the code:
services.Configure<WebEncoderOptions>(options =>
{
      options.TextEncoderSettings = new TextEncoderSettings(UnicodeRanges.All);
});

I agree that BasicLatin is a horrible default. Not only it increases the file size and overhead (don't we expect the core to run on small devices too?) but also makes the page illegible to humans.

where is the WebEncoderOptions? @kerryjiang

This default is absurd. In addition it is not even clear to me if using UnicodeRanges.All is safe or I'd better list a couple of more popular Unicode ranges like Cyrillic, GreekandCoptic, Hebrew and Arabic and leave the rest encoded


USHIFT-1681: Inject target branch name into rebase branch name

When the rebase script executes against the latest release-4.X branch and main, it does not generate a unique branch name. This creates a situation where, if 1 of the 2 is pushed, the rebase process running in parallel on the other may pull the remote rebase-branch.  This means that if a rebase onto branch A pushes rebase-branch A', the rebase process running in parallel on branch B can mistakenly pull branch A', rather than create a branch B', because the names of A' == B'. This effectively means branch A is being rebased onto branch B, and includes the commits of the parant branch.  Injecting the onto-branch's name (release-4.x | main) will detangle this situation.

Should be backported so that rebase automation in release branches also applies the naming change.
/cherrypick release-4.14
/cherrypick release-4.13

/lgtm


c# repo doesn't contain DIRECTORY.md file anymore

https://github.com/TheAlgorithms/C-Sharp/pull/205

Remove directory workflow because it includes what it shouldn't (AssemblyInfo, interfaces, tests, etc.) and titles are ugly

The workflow should be reworked. I don't really know how those files work, so I would appreciate it, if you would do that @Panquesito7

It isn't the workflow the one that should be reworked, it is the name of the folders and files. If you see the C++ repository, DIRECTORY.md is properly formatted. I'll try to make a PR to improve the file names and the names of the folders. Thank you for reporting, though. 🙂

That's true, and thank you for fixing the folders there. This also is a more general problem, all the different repos have different naming conventions and some just have top level folders like "Algorithms" and "Datastructures", while a lot of the categories are written slightly different, like "Math", "Maths" and "Basic Maths". This is a pretty big thing to do, but I think in the long term we should try to try to normalize the file structure and categories in all the repos, probably in the style of the C++ repo.

Closed in b3c4a6383b475117c2fa1b79ef44ffaa8eb5e7de


thrift_proxy: introduce header transport

Implements the Thrift "header" transport which primarily provides
key/value pairs that may contain arbitrary message metadata.
Risk Level: low
Testing: added unit/integration tests
Docs Changes: n/a
Release Notes: added note about header transport support
Signed-off-by: Stephan Zuercher<EMAIL_ADDRESS>

@rgs1 or @fishcakez github won't let me directly request reviews or assign you, but if you wanted to take a look at this, I'd be grateful.

@zuercher thanks for tagging us, I"ll look today.

Thanks for the updates. LGTM.

@mattklein123 can I get you to take a quick pass at this next time you're reviewing PRs?

@zuercher will do Thursday morning unless someone else gets to it sooner. Sorry for the delay.

@mattklein123 addressed your nits, could you restamp this when you have a moment?


Use Rework CSS to prefix Semantic-UI with ui-blueink tag name

Scope this thang!...as much as possible without scoped CSS...anyhow.
The bootstrap example page shows some collision.

Done. Semantic-UI's .ui is .blueink-ui. This is a 90% solution and there are still occasionally "spills" with the cascading, but it generally stays out of the way.


Doc, config for docker , steps not work

I'm trying to setup at first time a influxdb using docker.
The sequence of commands are very confusing.
The commands do not work,  for example this one :
# docker run   --rm influxdb:2.6.1   influx server-config Error: failed to retrieve config: Get "http://localhost:8086/api/v2/config": dial tcp <IP_ADDRESS>:8086: connect: connection refused
Relevant URLs

https://docs.influxdata.com/influxdb/v2.6/install/

Is there any update on this?


15 Dec Update (9.5.1) breaks zwave-js-ui  on Raspbian 11

Server fails to start after today's update on the latest/stable channel. Running on a RPi 4, with Raspbian 11.
2023-12-15T22:49:39Z zwave-js-ui.zwave-js-ui[25626]: node: error while loading shared libraries: libatomic.so.1: cannot open shared object file: No such file or directory
2023-12-15T22:49:39Z systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Main process exited, code=exited, status=127/n/a
2023-12-15T22:49:39Z systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Failed with result 'exit-code'.
2023-12-15T22:49:39Z systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Scheduled restart job, restart counter is at 3.
2023-12-15T22:49:39Z systemd[1]: Stopped Service for snap application zwave-js-ui.zwave-js-ui.
2023-12-15T22:49:39Z systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Start request repeated too quickly.
2023-12-15T22:49:39Z systemd[1]: snap.zwave-js-ui.zwave-js-ui.service: Failed with result 'exit-code'.
2023-12-15T22:49:39Z systemd[1]: Failed to start Service for snap application zwave-js-ui.zwave-js-ui.
I got this error a few weeks ago, but was able to fix by changing channel to latest/candidate, until that broke, and then I was able to fix by switching back to latest/stable.

I've got the same issue. Seems this is related to #7 as I'm getting the same libatomic error. I tried going to latest/candidate and latest/edge and both have this issue so I'm unable to use zwave-js-ui entirely.

same here....i'm screwed...i changed from stable to candidate..but it's dead. 😢

Same problem here. The snap automatically updated around 2PM today and that's when it quit working. Running latest/stable on Raspbian 11 on a RPi2.
Decided to revert to previous version, which is working just fine. First listed the versions available
sudo snap list zwave-js-ui --all
It returned
Name         Version  Rev  Tracking       Publisher       Notes
zwave-js-ui  v9.4.1   287  latest/stable  giaever-online  disabled
zwave-js-ui  v9.5.1   304  latest/stable  giaever-online  -

I had a previous version available (rev 287). Issued the following command
sudo snap revert zwave-js-ui
Checked the logs
sudo snap logs zwave-js-ui
And Bob's yer uncle. Back in business!

Cc @jmgiaever

i managed to restore the situation by going back as well to 287.

i managed to restore the situation by going back as well to 287.

Thank you for posting this fix, reverting back fixed me as well.

Thanks a lot for posting this, it took me quite some time and effort to figure out why I could no longer access the zwave-js-ui web interface. Reverting fixed the issue

Hi,
I will again try to fix it and build and publish new builds, but please take the effort to report back within reasonable time, and don't stay silent as @rglory did in the #7 issue.
I just took it for granted that the issue got fixed, since he never got back to me.
This is mainly an issue with Rasbian only and not with Ubuntu (neither Server or Core editions). I don't use Rasbian and can't debug or confirm fixes.

New builds are out in stable (v9.5.1)

New builds are out in stable (v9.5.1)

ran sudo snap refresh zwave-jus-ui
Verison 9.5.1 is working on my Raspberry Pi
Thank you!

Pls don't hesitate to drop me an email when needed. I am not an expert on Rasbian, but will do my best to help.
On 16 December 2023 17:45:39 CET, "Joachim Marthinsen Giæver" @.***> wrote:

Hi,
I will again try to fix it and build and publish new builds, but please take the effort to report back within reasonable time, and don't stay silent as @rglory did in the #7 issue.
I just took it for granted that the issue got fixed, since he never got back to me.
This is mainly an issue with Rasbian only and not with Ubuntu (neither Server or Core editions). I don't use Rasbian and can't debug or confirm fixes.
--
Reply to this email directly or view it on GitHub:
https://github.com/giaever-online-iot/zwave-js-ui/issues/8#issuecomment-1858865065
You are receiving this because you commented.
Message ID: @.***>

ran sudo snap refresh zwave-js-ui --channel=latest/edge and version 9.5.1 is working on my Raspberry Pi as well
On Saturday, December 16, 2023 at 08:44:27 PM GMT+1, nobleIntent<EMAIL_ADDRESS>wrote:

New builds are out in stable (v9.5.1)
ran sudo snap refresh zwave-jus-ui
Verison 9.5.1 is working on my Raspberry Pi
Thank you!
—
Reply to this email directly, view it on GitHub, or unsubscribe.
You are receiving this because you commented.Message ID: @.***>

I will (again) try to fix it, build it and publish new builds. But please take the effort to report back within reasonable time, and don't stay silent as @rglory did in the #7 issue.

Sorry I did not test in time, problem is my system is in use, just to test it I either need to break my home automation or find a new pi and install it there from scratch, neither is very practical.

ran sudo snap refresh zwave-js-ui --channel=latest/edge and version 9.5.1 is working on my Raspberry Pi as well

Great, but I don't recommend using the edge channel. Use stable or candidate instead. There's a description on how I facilitate them in the snap package description:
snap info zwave-js-ui

Sorry I did not test in time, problem is my system is in use, just to test it I either need to break my home automation or find a new pi and install it there from scratch, neither is very practical.

Ok. Thanks for letting me know. In the future it would be great if these things are shared with me, so I know.
I'm doing this in my free time and I'm the only maintener. My devices are all running Ubuntu Server or Core editions, which is the "targeted" OS for snaps, so I only have the option to test with them. And this bug didn't happen there.
(Since this is a hobby project for me I'm not spending any on my own money to make a test environment. If anyone is interested to donate devices for testing it's highly appreciated).

Everything is working on my end with the update today. Thank you @jmgiaever !

Thanks! Today's update fixed the issue. I think I just need to configure snap to not automatically update this particular package so I can verify any updates won't break my system.
Thanks for the quick turn around and maintaining!

Thanks, changed to stable and still working :-)
On 16 December 2023 22:41:14 CET, "Joachim Marthinsen Giæver" @.***> wrote:

ran sudo snap refresh zwave-js-ui --channel=latest/edge and version 9.5.1 is working on my Raspberry Pi as well

Great, but I don't recommend using the edge channel. Use stable or candidate instead. There's a description on how I facilitate them in the snap package description:
snap info zwave-js-ui

--
Reply to this email directly or view it on GitHub:
https://github.com/giaever-online-iot/zwave-js-ui/issues/8#issuecomment-1858935862
You are receiving this because you commented.
Message ID: @.***>

Looks like the snap auto updated to rev 314 and it's all good! Thanks for the quick turn around @jmgiaever !!!

Hey thanks for the quick fix on this. This bit me as well on Raspbian 11 while I was away from home (of course...) and had to revert.
Just did the unhold now and upgraded to rev 314 and all is good.

I do not really like default behavior of snap - it is updating automatically. I am using home automation for water leak detection for example and realizing that my system is dysfunctional due to automatic update later is quite disturbing. Home Assistant is made properly in that sense - it reminds you that there are updates but does not do it by itself. When I do it manually - I would check that everything works after update.


Talks review table getting rendered below side menu

See https://staging-pycon.python.org/2016/reviews/section/talks/

Passed QA.


Enable queueing in the tree descent

Followup (and branch currently contains) #54 and #55 to actually make the source tree descent utilise the queue.  The missing piece of the puzzle being that the section which previously ensured that files passing through the descender were hashed can no longer live there (since that loop is now running asynchronously - it would try to hash files that don't yet exist).  The solution is to make the hashing part into another Task which gets added to the queue and depends on the main file whose task is being added.
Doing this also complicates the unit testing of the tree descent slightly - our existing tests were using locally defined classes (i.e. within the existing test routines) and were making use of a variable local to the text but external to those classes.  None of this works now because multiprocessing can't serialise locally defined classes, meaning they need to be global again, and making the external array global also fails due to being private to the worker executing the task.  Luckily the module provides a shared memory object that we can use to bypass this

Closes #27 and closes #52

Okay I think I've addressed all the points and this is ready for a repeat viewing


[NEW ALGORITHM] Markov Chain Monte Carlo (MCMC) Algorithm

Issue will be closed if:

You mention more than one algorithm. You can create a separate issue for each algorithm once the current one is completed.
You propose an algorithm that is already present or has been mentioned in a previous issue.
You create a new issue without completing your previous issue.

Note: These actions will be taken seriously. Failure to follow the guidelines may result in the immediate closure of your issue.

Name:
Markov Chain Monte Carlo (MCMC) Algorithm
About:
Propose to add the Markov Chain Monte Carlo (MCMC) algorithm to the repository. MCMC is a probabilistic algorithm used in statistical sampling and machine learning. It is useful for drawing samples from complex probability distributions and is widely applied in Bayesian inference and statistical modeling.

Labels:
new algorithm, gssoc-ext, hacktoberfest, level1

Assignees:

[ YES] Contributor in GSSoC-ext
[ YES] Want to work on it

assigned

@pankaj-bind please merged this pull request.


Youncy, where is the pretrained model?

Hello @Youncy-Hu I need the pretrained model. You are tasked to upload it here, provide a link and a detailed description of how to use it.
Thanks.
Any questions, please ask

Pre-trained models have been provided.

hello, does the pretrained model you refer indicate the  "VQ-VAE" pretrain model? I execute the code, but a mistake occurs, that is, "NameError: name 'ckpt_path' is not defined". I wonder if I have met the same problem. Thanks.


Default locale is not consistent throughout translations package

The default locale for translations (stored in a Supplier in TranslationLocales) is not consistent in how it is obtained. For example, if the system property is not set or is set to a specific locale, it defaults to Locale.US and is unchanging, even if the system property changes. This is not the same behaviour as if the property is set to system, as this will change.
Additionally, when a new TranslationRegistry is created, the locale it defaults to is always Locale.US, not the TranslationLocales default, unless changed otherwise. This means that to create a registry that uses the default locale, you would have to access the default locale through reflection/code duplication (as the locale is not exposed). As the system property itself is named defaultTranslationLocale, I believe it is fair to assume that it would act as the default locale used for Adventure translations, however, as mentioned here, this is not the case.
There are a few solutions for this. I think the proper solution for this is to just always use Locale.getDefault(Category.DISPLAY), supporting the current system property as a deprecated(?) override. As this method is the "standard" Java method for setting the default locale, I believe that it makes sense to use this instead of shipping a version within Adventure. This would be a good change as the default locales can also be set using system properties in addition to programmatic changes (possible when using the system argument for the Adventure system property). Another potential solution is to expose the default locale to allow developers to obtain it through Adventure, but it still creates an odd disconnect between the Adventure default locale and Java's default locale.

if the system property is not set or is set to a specific locale, it defaults to Locale.US and is unchanging, even if the system property changes

This is intentional, and is how many applications operate.

Additionally, when a new TranslationRegistry is created, the locale it defaults to is always Locale.US, not the TranslationLocales default, unless changed otherwise.

Again, intentional. The default in TranslationLocales is only used as a last resort.

I'm not in favour of adding anything more regarding default locales - as it is, I wish TranslationLocales did not exist.

I'm not in favour of adding anything more regarding default locales - as it is, I wish TranslationLocales did not exist.

Then why not remove it and replace it with the default locale?


#144937429 Update dependencies

What does this PR do?

Update and create files for Heroku Deployment

Description of Task to be completed?

Added app.json file
Updated Node, Npm, Mongoose and Connect-mongo Dependencies

How should this be manually tested?

not available

Any background context you want to provide?

Heroku requires an update to date version of Node, Npm, Mongoose and Connect-mongo for deployed application to function

What are the relevant pivotal tracker stories?

Deploy base application to Heroku 144937429
Screenshots (if appropriate)

Questions:

not available

@andela-eefekemo Kindly drop the link to the hosted Heroku app so I can verify


Add a footer to all the created blogs that the blog are made with love using JekLog

To increase the awareness of the platform we have to add a link to jeklog.com in the footer.

Feature added in the production environment.


Release test

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 79.81%. Comparing base (b8f2e41) to head (12e389d).

Additional details and impacted files
@@               Coverage Diff               @@
##           useGoBackupLib     #212   +/-   ##
===============================================
  Coverage           79.81%   79.81%
===============================================
  Files                  14       14
  Lines                 649      649
===============================================
  Hits                  518      518
  Misses                103      103
  Partials               28       28

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Bridging Matrix fails: "Failed to POST JSON to /_matrix/client/r0/login" (404 Not Found)

Describe the bug
I failed to bridge to Matrix.
Using my account with other clients works fine, the Matterbridge to Telegram and Slack bridge works fine, too.
To Reproduce

Create an account on my homeserver (https://fff.chat)
Use the config I posted above, and Matterbridge in Docker (with Docker-Compose)

Expected behavior
Matterbridge should be able to login to my account
Screenshots/debug logs
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="Running version 1.22.2-dev c7897cca" prefix=main
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="WARNING: THIS IS A DEVELOPMENT VERSION. Things may break." prefix=main
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="Parsing gateway Slack-Telegram" prefix=router
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="Parsing gateway Telegram-Matrix" prefix=router
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="Starting bridge: slack.slack " prefix=router
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="Connecting using token" prefix=slack
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="slack.slack: joining *** (ID: ***.slack)" prefix=slack
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="Starting bridge: telegram.tg " prefix=router
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg=Connecting prefix=telegram
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="Connection succeeded" prefix=telegram
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="telegram.tg: joining -*** (ID: -***telegram.tg)" prefix=telegram
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="telegram.tg: joining  (ID: telegram.tg)" prefix=telegram
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="Starting bridge: matrix.mymatrix " prefix=router
matterbridge_1  | time="2021-06-24T14:27:58Z" level=info msg="Connecting https://fff.chat" prefix=matrix
matterbridge_1  | time="2021-06-24T14:27:58Z" level=fatal msg="Starting gateway failed: Bridge matrix.mymatrix failed to start: contents=[60 104 116 109 108 62 13 10 60 104 101 97 100 62 60 116 105 116 108 101 62 52 48 52 32 78 111 116 32 70 111 117 110 100 60 47 116 105 116 108 101 62 60 47 104 101 97 100 62 13 10 60 98 111 100 121 62 13 10 60 99 101 110 116 101 114 62 60 104 49 62 52 48 52 32 78 111 116 32 70 111 117 110 100 60 47 104 49 62 60 47 99 101 110 116 101 114 62 13 10 60 104 114 62 60 99 101 110 116 101 114 62 110 103 105 110 120 60 47 99 101 110 116 101 114 62 13 10 60 47 98 111 100 121 62 13 10 60 47 104 116 109 108 62 13 10] msg=Failed to POST JSON to /_matrix/client/r0/login:
matterbridge_1  | <title>404 Not Found</title>
matterbridge_1  |
matterbridge_1  |
404 Not Found

matterbridge_1  |
nginx
matterbridge_1  |
matterbridge_1  |
matterbridge_1  |  code=404 wrapped=" prefix=main

Environment (please complete the following information):

OS: Ubuntu 20.04.2 LTS; in Docker (with docker-compose)
Matterbridge version: 1.22.2-dev c7897cca

Additional context
[matrix.mymatrix]
Server="https://fff.chat"

Login="***"
Password="***"

RemoteNickFormat="{NICK} \n"

NoHomeServerSuffix=false

Seems like an issue in your homeserver.
See https://matrix.org/docs/spec/client_server/latest#get-matrix-client-r0-login
The URL  /_matrix/client/r0/login should exist.


Add netcdf to cog tutorial notebook

Description
This notebook shows how to convert a NetCDF file to COG, at the example of CMIP6
What type of example is this?
Tutorial
Checklist
The following checklist ensures that our notebooks are internally consistent (read more)

[x] The first cell contains the rendering information with author and data
[x] The notebook has a Run this Notebook section (with filename in link)
[x] The notebook has an Approach section
[x] All the packages that are imported in the notebooks are used within the notebook
[x] Any complex geometries are accessed from remote storage
[x] Each code cell comes after a markdown cell containing explantory text
[x] All cells in the notebook book have been run in order with a fresh kernel (cell numbers should be 1, 2, 3, 4, ...)
[x] If the example type is Dataset the filename is <collection_id>.ipynb

Nice! I just have a few nitpicks and in general I would prefer a bit more explanation, but overall this is great!

Merged - thanks for the reviews!


ENH: Support dual index demultiplexing

I can't actually get the base functionality in cutadapt to work --- opened issue https://github.com/marcelm/cutadapt/issues/378 in search of support.

Good news, cutadapt 2.3 was released this morning, and it includes a fix for the problems mentioned above. I just tested this PR out with 2.3 and everything seems to be working as expected.

Thanks @ChrisKeefe  - addressed your comments in 77f0454.


Update published label prefix.

Fixes #27.

Changed prefix from node.alpha.intel.com/nfd to
node.alpha.kubernetes-incubator.io/nfd

Hold until a decision in #27.

Unblocking this one.

@balajismaniam ok to review

FWIW, LGTM.

/lgtm


Solflare Wallet Disconnect Probelm

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

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

Expected behavior
When I want to disconnect the Solflare wallet, It sends me to a chrome browser page with this url
https://solflare.com/mobilewalletadapterv1/associate/local?port=64860&association=BMXJPQ...
Mobile device (please complete the following information):

Name: Android Emulator
OS:  API 31

Hi @NurettinSelim,
Which version of solana_wallet_provider are running? Can you try running the latest version 0.0.5+2 (if you're not already).
Thanks

It works but needs a little adjustment in "AndroidManifest.xml" to open "solana-wallet" URI.
I needed to add these lines out of the "Application" tag.
<queries>
    <intent>
        <action android:name="android.intent.action.VIEW" />
        <data android:scheme="solana-wallet" />
    </intent>
</queries>

Brilliant! I've updated the package (version 0.0.6) to include this. Thank you for bringing the issue to my attention and let me know if you need anything else.


Add cross to available symbols

Hello and Happy New Year !
I would like you to add a new symbol in the list of available symbols https://ecomfe.github.io/echarts-doc/public/en/option.html#series-scatter.symbol
The symbol should look like this ✚ and its name can be called "cross". I found the symbol here https://www.alt-codes.net/latin-cross.php and it is called "heavy cross".
I saw that it can be added in the source from here
https://github.com/apache/incubator-echarts/blob/fd064123626c97b36cbd6da1b5fc73385c280abd/src/util/symbol.js
but I don't have a JS dev environment to make the changes.
Best regards.

Happy new year!
You can use path:// description to add custom symbol shape. For example, a heavy cross can be
symbol: 'path://M5.979 10.974v5.021h7.041v11.99h5.042v-11.99h6.958v-5.021h-6.958v-6.958h-5.042v6.958h-7.041z'

You can find the path description in the svg file. Which is usually in the path element.

Yes that would be a way to add it. Thanks!


installation?

Are the listed requirement already part of XGO or do some need to be installed?
Can I just swap the name into one of the menu spots on the head to start it from there?

Hi JKWiniger,
To get started, you'll need to install a few libraries:
pip install opencv-python numpy onnxruntime spidev Pillow
If you intend to use this script independently, you'll have to terminate the main XGO application. Alternatively, if you wish to integrate it within the existing system, you should exit the main app and then run this script from the menu spots. I'm not using the default XGO software/UI; instead, I've developed my own fully automated program tailored to my specific needs.

I ran : pip install opencv-python numpy onnxruntime spidev Pillow
and all the requirements were already satisfied so nothing needed to be installed.
I then ran "python3 robot_controller.py" and got a lot of:
Distance to object: 39.72222222222222 cm
Distance to object: 38.03191489361702 cm
Distance to object: 38.44086021505376 cm
Distance to object: 35.75 cm
Distance to object: 38.44086021505376 cm
Distance to object: 38.03191489361702 cm
Distance to object: 38.44086021505376 cm
Distance to object: 38.23529411764706 cm
Distance to object: 39.07103825136612 cm
Distance to object: 37.83068783068783 cm
but there was no movement...

I tried this again with a fresh imaged card and now it ran and said "No person detected. Turning to search..." he did not turn he just walked sideways to the left...


Test do not pass

I have just forked the repo.
On master, commit for version 0.13.0 when I run grunt I have the follozing test that fail:
Chrome 41.0.2272 (Linux) datepicker directive as popup european format dd.MM.yyyy FAILED
	 TypeError: Cannot read property 'hasEvent' of undefined
	     at changeInputValueTo (/home/jji/Programmation/kpler-   github/bootstrap/src/datepicker/test/datepicker.spec.js:1174:26)
	    at Object.<anonymous> (/home/jji/Programmation/kpler-github/bootstrap/src/datepicker/test/datepicker.spec.js:1684:9)

Hmm, all tests are passing on TravisCI: https://travis-ci.org/angular-ui/bootstrap/branches

Strange indeed @pkozlowski-opensource since I am actually able to reproduce this locally but as you said Travis haa no trouble at all.

I'm seeing this to, I had to delete my node_modules folder and run npm to reproduce.

Something is whacked with the build.  I tried checking in a fix for this issue but that surfaced another failing test:  Expected spy changeHandler to have been called. - datepicker.spec.js:1886:42.  So I reverted the change but the travis ci build is still failing???
The travis ci build is also set to use Firefox, which does not fail for the original issue, where Chrome does.


make TurbolinksSession.setDebugLoggingEnabled static

...so that it can be set before initialising the instance
without having this static, all the debug logs made before/during initialisation of the TurbolinksSession instance aren't visible

Thanks, makes sense.
Recommend moving the method up by the reset of the static methods to keep things tidy. Then I can merge up.


Not possible to change airflow

Hi!
Have you removed "fan_mode"? All i get is this when i try changing mode:

Did you specify any device in the configuration.yaml? if so try to remove it so that it defaults to vtr_300 settings. There is a if clause that determines which modes are supported by the device, and vtr_300 is the only one supported. i can change this so that all devices act the same.  Both fan and operation mode is supported, BUT i will have to rework this in-order to get it into the HA repository. But i havent found a elegant way of doing this yet.

That changed everything. I used vsr_300 when i started testing. When i changed it to vtr_300 all looks great. It would be great if you could change it so that all devices act the same.

Are all savecair ventilation units the same in this regard? (all supports operation and fan)
Do you have a proposal for how we could map HA to the ventilation unit? i fint it quite limiting to use current states supported in HA.

Starting to look great :)

Nice! Would you care to share a few instructions on how to accomplish this so that i can update the docs accordingly?

I think they should be like they are.. This function is importent when you have a party you put it on "Crouded" then the unit will go to 5000rpm. Same is for "Fireplace" Suppy will got to 5000rpm and Return will go to 500rpm to give more air to the fireplace.
If your house is not correct "tuned" the airflow will not the best. its important that the diffusers are correctly set and you have the correct rpm set on the unit. Send me a PM on Discord (7even) and i can send you your correct setup on the unit.

Here is my setup on HA
`climate:

platform: systemair_savecair
device: vtr_300
name: Systemair
iam_id: IAM_XXXXXXXXX
password: XXXXXXX

input_select:
operation_list:
name: valg
options:
- Auto
- Manual
- Crowded
- Refresh
- Fireplace
- Away
- Holiday
initial: Manual
icon: 'mdi:fan'
automation:

alias: 'Systemair'
initial_state: 'on'
trigger:

platform: state
entity_id: input_select.operation_list
action:
service: climate.set_operation_mode
data_template:
entity_id: climate.systemair
operation_mode: >-
{% if is_state("input_select.operation_list", "Auto") %}
Auto
{%-elif is_state("input_select.operation_list", "Manual") %}
Manual
{% elif is_state("input_select.operation_list", "Crowded") %}
Crowded
{% elif is_state("input_select.operation_list", "Refresh") %}
Refresh
{% elif is_state("input_select.operation_list", "Fireplace") %}
Fireplace
{% elif is_state("input_select.operation_list", "Away") %}
Away
{% elif is_state("input_select.operation_list", "Holiday") %}
Holiday
{% else %}
Auto
{% endif %}

#- alias: 'Fan mode'
initial_state: 'on'
trigger:
- platform: numeric_state
entity_id: sensor.aeotec_zw100_multisensor_6_relative_humidity_3
above: '50'
action:
- service: climate.set_fan_mode
entity_id: climate.systemair
data:
fan_mode: normal
sensor:

platform: template
sensors:
systemair_current_temp:
friendly_name: Nåværende temperatur
value_template: "{{ states.climate.systemair.attributes.current_temperature }}°C"

platform: template
sensors:
systemair_min_temp:
friendly_name: Minimum temperatur
value_template: "{{ states.climate.systemair.attributes.min_temp }}°C"

platform: template
sensors:
systemair_max_temp:
friendly_name: Max temperatur
value_template: "{{ states.climate.systemair.attributes.max_temp }}°C"

platform: template
sensors:
systemair_tilluft_temp:
friendly_name: Tillufttemperatur
value_template: "{{ states.climate.systemair.attributes.supply_air_temperature }}°C"

platform: template
sensors:
systemair_viftehastighet_tilluft:
friendly_name: Viftehastighet tilluft
value_template: "{{ states.climate.systemair.attributes.supply_air_fan_speed }}o/min"

platform: template
sensors:
systemair_viftehastighet_avtrekk:
friendly_name: Viftehastighet avtrekk
value_template: "{{ states.climate.systemair.attributes.extract_air_fan_speed }}o/min"

platform: template
sensors:
systemair_vifte_modus:
friendly_name: Vifte modus
value_template: "{{ states.climate.systemair.attributes.fan_mode }}"

platform: template
sensors:
systemair_filter_tid:
friendly_name: Nedtelling filterskifte
value_template: "{{ (( state_attr('climate.systemair', 'components_filter_time_left') | float /3600 /24 /365 |int) *12) | int }}mnd."
`


#2145 Fix ArgumentException in TemporaryDateTimeOffsetValueGenerator …

…for time zones with a positive UTC offset
DateTimeOffset will fail with an ArgumentException when attempting to initialize with a DateTime that results in a negative offset. This can happen when the actual DateTime value used has a positive UTC offset, e.g. the local time in Europe.
I propose switching the DateTimeOffset to always use a UTC offset = 0 and increment from there.

Hi @MichaelKetting, I'm your friendly neighborhood .NET Foundation Pull Request Bot (You can call me DNFBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla2.dotnetfoundation.org.

TTYL, DNFBOT;

@MichaelKetting Good catch. I'll merge this once the CLA is signed.

@MichaelKetting, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.
Thanks, DNFBOT;

This is now merged. Thanks for the contribution!

You're welcome! :smile:


Dashboard is non functional

I've tried setting-up open-balena-admin on my local machine using both docker-compose and kubernetes.
But I encounter the same error: "Non-functional dashboard".
It looks like some communication issue between open-balena-postgrest and open-balena-db from browser console error messages.
Following are the screenshots of the chrome devtools window and dashboard for your reference:

Logs from open-balena-postgrest:
07/Jun/2022:15:24:37 +0000: An error ocurred when trying to query database settings for the config parameters
07/Jun/2022:15:24:37 +0000: ConnectionError (Just "could not translate host name \"openbalena-db.openbalena\" to address: Name does not resolve\n")
07/Jun/2022:15:24:37 +0000: Attempting to connect to the database...
07/Jun/2022:15:24:37 +0000: {"details":"could not translate host name \"openbalena-db.openbalena\" to address: Name does not resolve\n","code":"","message":"Database connection error. Retrying the connection."}
07/Jun/2022:15:24:37 +0000: Attempting to reconnect to the database in 0 seconds...
><EMAIL_ADDRESS>start
> node postgrest-proxy.js
[HPM] Proxy created: / -> http://<IP_ADDRESS>:3000
07/Jun/2022:15:24:38 +0000: {"details":"could not translate host name \"openbalena-db.openbalena\" to address: Name does not resolve\n","code":"","message":"Database connection error. Retrying the connection."}
07/Jun/2022:15:24:38 +0000: Attempting to reconnect to the database in 1 seconds...
07/Jun/2022:15:24:40 +0000: {"details":"could not translate host name \"openbalena-db.openbalena\" to address: Name does not resolve\n","code":"","message":"Database connection error. Retrying the connection."}
07/Jun/2022:15:24:40 +0000: Attempting to reconnect to the database in 2 seconds...
07/Jun/2022:15:24:44 +0000: {"details":"could not translate host name \"openbalena-db.openbalena\" to address: Name does not resolve\n","code":"","message":"Database connection error. Retrying the connection."}
07/Jun/2022:15:24:44 +0000: Attempting to reconnect to the database in 4 seconds...
[HPM] Error occurred while proxying request postgrest.openbalena.abc/user?limit=10&offset=0&order=id.asc to http://<IP_ADDRESS>:3000/ [ECONNREFUSED] (https://nodejs.org/api/errors.html#errors_common_system_errors)
07/Jun/2022:15:24:52 +0000: {"details":"could not translate host name \"openbalena-db.openbalena\" to address: Name does not resolve\n","code":"","message":"Database connection error. Retrying the connection."}
07/Jun/2022:15:24:52 +0000: Attempting to reconnect to the database in 8 seconds...
[HPM] Error occurred while proxying request postgrest.openbalena.abc/user?limit=10&offset=0&order=id.asc to http://<IP_ADDRESS>:3000/ [ECONNREFUSED] (https://nodejs.org/api/errors.html#errors_common_system_errors)
07/Jun/2022:15:25:08 +0000: {"details":"could not translate host name \"openbalena-db.openbalena\" to address: Name does not resolve\n","code":"","message":"Database connection error. Retrying the connection."}
07/Jun/2022:15:25:08 +0000: Attempting to reconnect to the database in 16 seconds...

Logs from open-balena-db:
2022-06-07 14:49:50.879 UTC [6442] LOG: invalid length of startup packet
...
2022-06-07 15:16:56.159 UTC [6776] LOG: invalid length of startup packet

@dcaputo-harmoni Can you please help me resolve this issue?

This looks like a docker networking issue - can you ssh into the open-balena-postgrest container and run ping openbalena-db?  I suspect it will not resolve, in which case you need to confirm that the open-balena-admin containers are running within the same docker network as open-balena.
You might want to take a look at the services.yaml file, which you'll see puts all of the open-balena-admin containers on the openbalena_default network, which is the default network used by open-balena.  If you have changed this, or if you are running your open-balena on a different docker server than open-balena-admin, you'll need to somehow ensure that the open-balena-admin containers can communicate with the open-balena containers.

Thanks for the reply @dcaputo-harmoni. Sorry for the confusion. Your point might be helpful in case I'm running them using docker. But I'm running both open-balena and open-balena-admin using kubernetes, where both of them are running on the same default namespace. Am I missing any other configuration to get it to work?

This looks like a namespace issue.  Notice the error message is looking for openbalena-db.openbalena but you are using openbalena-db.default. You will either need to change the service config files to point to the default namespace (change references to openbalena-db.default) or put openbalena in the openbalena namespace.
By the way - nice work getting all this up and running in kubernetes.


Dependencies²

WIP
5352eaa removes this inelegant insecure badge, but careful, I wouldn't be surprised if this commit had broken something so please try locally before merging: git fetch && git checkout astorije/deps && npm start is already a start, but actually playing with the checker a little bit would give you better guarantees.
I could not update compression in the devDependencies (from 1.0.11 to ^1.4.4) without making Travis CI weep :-(.

@guibbs, closing this as I believe it won't go anywhere. Feel free to re-open if I am wrong.

I agree with @astorije: what's the point of those badges, Travis, David and Coveralls if we don't care to look at their output?
See #132 and #133.

Well you tell me, I'm not in charge of the project, and I did open that PR mindful of the badges 3/4 of a year ago :-P

You can reopen the PR if you feel it's still relevant, and I believe I have a bunch of them open out there if you want to follow-up.

Well you tell me, I'm not in charge of the project, and I did open that PR mindful of the badges 3/4 of a year ago :-P

Hey, man… I was siding with you here :)

Sorry guys. Gonna test that tonight or tomorrow.

@astorije, @dontcallmedom: npm install throws errors for me (Node 8.3.0, npm 5.3.0) — both in master and in this branch here. Can you reproduce it?
Culprits seem to be build scripts of package contextify, which is old and not needed. But I don't even know the chain of dependencies leading to that package.
Any idea? Is it even worth fixing, given this project is stalled? No Travis builds have succeeded for more than two years now.
><EMAIL_ADDRESS>install node_modules/contextify
> node-gyp rebuild

make: Entering directory 'node_modules/contextify/build'
  CXX(target) Release/obj.target/contextify/src/contextify.o
../src/contextify.cc: In static member function ‘static v8::Local<v8::Context> ContextWrap::createV8Context(v8::Local<v8::Object>)’:
../src/contextify.cc:131:68: warning: ‘v8::Local<v8::Object> v8::Function::NewInstance() const’ is deprecated: Use maybe version [-Wdeprecated-declarations]
         Local<Object> wrapper = Nan::New(constructor)->NewInstance();
                                                                    ^
In file included from ~/.node-gyp/8.3.0/include/node/v8.h:26:0,
                 from ~/.node-gyp/8.3.0/include/node/node.h:63,
                 from ../src/contextify.cc:1:
~/.node-gyp/8.3.0/include/node/v8.h:3792:52: note: declared here
   V8_DEPRECATED("Use maybe version", Local<Object> NewInstance() const);
                                                    ^
~/.node-gyp/8.3.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/contextify.cc:150:16: error: ‘class v8::ObjectTemplate’ has no member named ‘SetAccessCheckCallbacks’; did you mean ‘SetAccessCheckCallback’?
         otmpl->SetAccessCheckCallbacks(GlobalPropertyNamedAccessCheck,
                ^~~~~~~~~~~~~~~~~~~~~~~
../src/contextify.cc: In static member function ‘static void ContextWrap::GlobalPropertyGetter(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Value>&)’:
../src/contextify.cc:182:80: warning: ‘v8::Local<v8::Value> v8::Object::GetRealNamedProperty(v8::Local<v8::String>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
         Local<Value> rv = Nan::New(ctx->sandbox)->GetRealNamedProperty(property);
                                                                                ^
In file included from ~/.node-gyp/8.3.0/include/node/v8.h:26:0,
                 from ~/.node-gyp/8.3.0/include/node/node.h:63,
                 from ../src/contextify.cc:1:
~/.node-gyp/8.3.0/include/node/v8.h:3345:30: note: declared here
                 Local<Value> GetRealNamedProperty(Local<String> key));
                              ^
~/.node-gyp/8.3.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/contextify.cc: In static member function ‘static void ContextWrap::GlobalPropertyQuery(v8::Local<v8::String>, const Nan::PropertyCallbackInfo<v8::Integer>&)’:
../src/contextify.cc:209:67: warning: ‘v8::Local<v8::Value> v8::Object::GetRealNamedProperty(v8::Local<v8::String>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
         if (!Nan::New(ctx->sandbox)->GetRealNamedProperty(property).IsEmpty() ||
                                                                   ^
In file included from ~/.node-gyp/8.3.0/include/node/v8.h:26:0,
                 from ~/.node-gyp/8.3.0/include/node/node.h:63,
                 from ../src/contextify.cc:1:
~/.node-gyp/8.3.0/include/node/v8.h:3345:30: note: declared here
                 Local<Value> GetRealNamedProperty(Local<String> key));
                              ^
~/.node-gyp/8.3.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
../src/contextify.cc:210:71: warning: ‘v8::Local<v8::Value> v8::Object::GetRealNamedProperty(v8::Local<v8::String>)’ is deprecated: Use maybe version [-Wdeprecated-declarations]
             !Nan::New(ctx->proxyGlobal)->GetRealNamedProperty(property).IsEmpty()) {
                                                                       ^
In file included from ~/.node-gyp/8.3.0/include/node/v8.h:26:0,
                 from ~/.node-gyp/8.3.0/include/node/node.h:63,
                 from ../src/contextify.cc:1:
~/.node-gyp/8.3.0/include/node/v8.h:3345:30: note: declared here
                 Local<Value> GetRealNamedProperty(Local<String> key));
                              ^
~/.node-gyp/8.3.0/include/node/v8config.h:329:3: note: in definition of macro ‘V8_DEPRECATED’
   declarator __attribute__((deprecated(message)))
   ^~~~~~~~~~
contextify.target.mk:95: recipe for target 'Release/obj.target/contextify/src/contextify.o' failed
make: *** [Release/obj.target/contextify/src/contextify.o] Error 1
make: Leaving directory 'node_modules/contextify/build'
gyp ERR! build error
gyp ERR! stack Error: `make` failed with exit code: 2
gyp ERR! stack     at ChildProcess.onExit (/usr/lib/node_modules/npm/node_modules/node-gyp/lib/build.js:258:23)
gyp ERR! stack     at emitTwo (events.js:125:13)
gyp ERR! stack     at ChildProcess.emit (events.js:213:7)
gyp ERR! stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:200:12)
gyp ERR! System Linux 4.10.0-32-generic
gyp ERR! command "/usr/bin/nodejs" "/usr/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd node_modules/contextify
gyp ERR! node -v v8.3.0
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR<EMAIL_ADDRESS>install: `node-gyp rebuild`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>install script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR!
That being said, feel free to close this PR / delete this branch as 1) I will not be able to commit to further work, 2) most dependencies upgraded by this PR have probably seen newer versions anyway (even PR conflicts actually).
👋😃

It seems to me that you have issues with your node-gyp and might need to rebuild or something.

That's strange. I build from a clean clone, with no node_modules/ dir or anything; and I have just 4 npm packages installed globally, none of them related to that “gyp” (afaict). Anyway, you and I are using different versions of Node.js and npm.
@dontcallmedom, can you build master?
btw, Travis builds use Node.js 0.10.x — we should update that.
I'm closing this, as suggested by @astorije — for lack of ideas, urgency and manpower.
But thank you, @astorije!


Vulnerable dependencies

See https://github.com/sociomantic-tsunami/flounder/network/alerts
Please update.

It looks like this project is abandoned. Shall we archive it to make that clear for the general public?

i have:

a git fork
the keys to the npm repo
the keys to the slack community

so it does not bother me one way or another whether the Soc side of things stays active (Though i've enjoy working with ~Soc~ DH, it does appear abandoned from that side)
as we use it in some areas in Zalando i will continue to maintain and (occasionally) update my branch

If we don't use it internally, I would also be open to transfer the repo to another organization if you plan to keep maintaining it.

@leandro-lucarella-sociomantic we are still using and old version of flounder in some parts of the UI, but eventually it will be removed, and yes, the development from our side is abandoned.

@damian-rodriguez-sociomantic so a transfer/archival should be OK as long as:

the old versions are still provided by the new maintainer if we transfer it
the old versions can be still checked out via git if we archive it

Right?

@leandro-lucarella-sociomantic yes,  it should be fine

@mousemke can you confirm if you are interested in getting this repo transferred to you/Zalando? If you are then I need to find out if I can actually do it (at the Dunnhumby side). Otherwise we will archive it.

confirmed

We will move forward with the transfer, and then we fork it from you in our org to make sure we can access the code as long as we need. @mousemke should we transfer to https://github.com/zalando or to https://github.com/mousemke?

mousemke.  thanks!

OK, GitHub never got back to me so I went through the triangle. You should get a transfer request from my user.

OK, just for the records, transfer done. This issue is now on your hands @mousemke :)

🥳

🐭

On April 11, 2019 at 16:29 GMT, Leandro Lucarella<EMAIL_ADDRESS>wrote:
OK, just for the records, transfer done. This issue is now on your hands @mousemke :)
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.


This component will continue support?

This code does not update long time, it will continue support?

Hi, @xyjwsj. We have stopped working on this implementation of SCDF since the 1.0 release. Please consider switching to either Kubernetes or Cloud Foundry - we are focused on these platforms.
Thanks for your interest!


Grid path finding

which dataset was used in Section 4.2 "Grid path finding"? I can't find the code of this task in your dir, could u give some more details？ thank u~

Is the grid path finding dataset/simulator publicly available?


Faster builds

This makes our (combined) Xamarin.iOS and Xamarin.Mac build about 70 seconds faster.

Nice!  Actually all of the FSharp.Core build targets should be runnable in parallel

Nice work, please feel free to do as @7sharp9 says and parallelize the rest too

Thanks!


Fix table in geojson.md

The markdown for the table is broken. This fixes it.

Does any other open PR do the same thing?

No
What issue is this PR fixing?
It's fixing broken documentation. There is no issue reporting it.
How did you test this PR?

I previewed the document after the fix and the table renders correctly.

Stumbled across the same problem, the fix looks good, would be great to have it merged 👍


[7.x] Allow setting the event handler queue via a getQueue() method

Using queued event listeners, it is possible to set the queue the resulting job should be executed on using the $queue attribute. This attribute is then adopted by the dispatcher.
However, it is not possible to set the queue name from the config, the environment or otherwise programatically, because the listener instance is created without invoking the constructor in Dispatcher::createListenerAndJob(). Thus, trying to set the queue name in the constructor or anywhere else in the Listener has no effect.
This pull request proposes a non-breaking change to the Dispatcher class that allows a user to set the queue name by defining a getQueue() method within the Listener, as it is already done with retryAfter and retryUntil methods.
If no getQueue method is defined, the code falls back to use the $queue attribute or null, as it was before.
The benefit of this change is to provide developers with a flexible way to influence the target queues instead of having to hard code them.

public function __construct()
{
    $this->queue = 'whatever-you-want';
}

public function __construct()
{
    $this->queue = 'whatever-you-want';
}

Sure, as I described above, that was my first attempt, but it doesn't work because the listener is instantiated using $listener = (new ReflectionClass($class))->newInstanceWithoutConstructor(); hence the pull request.
Please check out a quick proof of concept project I hacked together at https://github.com/lupinitylabs/queuename in the hopes of making myself clearer.
Please note: the same issue exists with setting the tries property, so the pull request should probably even be extended by a method to set tries, too.

@taylorotwell Any chance to have this re-opened?


VMASharp API Review

This will serve as the place where we'll review the VMASharp API.
The public API has been summarised in a single file (in markdown format so we can add words/discussions/conclusions/action items if we want to), which will be the file for reviewing.
Internal APIs have been excluded.

cc @HurricanKai @sunkin351

Ok, so, much of the internal logic is semi-documented in VMA, the native library I ported this from. No, I didn't bother to document a lot of this stuff, at the time it was a passion project. I may have done a lot more work on this if I were actively using Vulkan, but alas, my time had other places it needed to be spent. I'm saying this for your benefit and for public record.

@sunkin351
This was not meant as a critique and i hope you don't take it personally. The comments i did were purely on this document with the help of some parts of the VMA documentation (when i could find the equivalent). I don't claim to be an expert on this topic and tried to understand the connections of the classes purely by the name of them. Ignore my comments if they sound stupid because i do them from a beginners/users point of view and just try to get the discussion started so we hopefully can all have a good memory allocator as part of Silk.

@sunkin351 This was not meant as a critique and i hope you don't take it personally.

Fear not, my fellow developer. I didn't take any of this personally, though I did write that reply while under heavy fatigue, I hope you can forgive me. My only desire is to help turn this into a usable tool that every developer can enjoy.
Also, am I reading some of this right in that there are data structure definitions missing?

I haven't included anything internal, should just be the public (and hopefully protected) APIs in this document.

Assigning to Kai as he's the Vulkan area owner.

VulkanMemoryAllocatorCreateInfo struct would be nice to have in the document so we can discuss which stuff is actually needed to create one.

well i tried to create some kind of basic overview diagram to highlight the public relations of the classes (plantuml source in the spoiler at the end).
So basically it all boils down to the Allocation class which owns a part of the memory. But i am not sure how the IBlockMetadata plays a role in all this (except that it's part of the multi-stage request).
Also how the VulkanMemoryPool relates to the allocation (apart from the AllocationCreateInfo where you can specify a Pool) is the Pool after creation not relevant anymore ?

plantuml source
@startuml
interface IBlockMetadata
{
long Size { get; }
int AllocationCount { get; }
long SumFreeSize { get; }
long UnusedRangeSizeMax { get; }
bool IsEmpty { get; }
void Validate();
void CalcAllocationStatInfo(out StatInfo outInfo);
void AddPoolStats(ref PoolStats stats);
bool TryCreateAllocationRequest(in AllocationContext context, out AllocationRequest request);
bool MakeRequestedAllocationsLost( int currentFrame, int frameInUseCount, ref AllocationRequest request);
int MakeAllocationsLost(int currentFrame, int frameInUseCount);
void CheckCorruption(nuint blockDataPointer);
void Alloc( in AllocationRequest request,SuballocationType type, long allocSize, BlockAllocation allocation);
void Free(BlockAllocation allocation);
void FreeAtOffset(long offset);
}
class Allocation << (A, grey) >>
{
long Size { get; }
int MemoryTypeIndex { get; }
abstract DeviceMemory DeviceMemory { get; }
abstract long Offset { get; internal set; }
object? UserData { get; set; }
abstract IntPtr MappedData { get; }
void Dispose();
Result BindBufferMemory(Buffer buffer);
Result BindBufferMemory(Buffer buffer, long allocationLocalOffset, IntPtr pNext);
Result BindBufferMemory(Buffer buffer, long allocationLocalOffset, void* pNext = null);
Result BindImageMemory(Image image);
Result BindImageMemory(Image image, long allocationLocalOffset, IntPtr pNext);
Result BindImageMemory(Image image, long allocationLocalOffset, void* pNext = null);
bool TouchAllocation();
Result Flush(long offset, long size);
Result Invalidate(long offset, long size);
abstract IntPtr Map();
abstract void Unmap();
bool TryGetMemory(out Memory memory) where T : unmanaged;
bool TryGetSpan(out Span span) where T : unmanaged;
}
class AllocationBudget << (S, gold) >>
{
long BlockBytes;
long AllocationBytes;
long Usage;
long Budget;
}
class AllocationContext << (S, gold) >>
{
int CurrentFrame;
int FrameInUseCount;
long BufferImageGranularity;
long AllocationSize;
long AllocationAlignment;
AllocationStrategyFlags Strategy;
SuballocationType SuballocationType;
bool CanMakeOtherLost;
}
class AllocationCreateInfo  << (S, gold) >>
{
AllocationCreateFlags Flags;
AllocationStrategyFlags Strategy;
MemoryUsage Usage;
MemoryPropertyFlags? RequiredFlags;
MemoryPropertyFlags? PreferredFlags;
uint MemoryTypeBits;
VulkanMemoryPool? Pool;
object? UserData;
}
class AllocationPoolCreateInfo  << (S, gold) >>
{
int MemoryTypeIndex;
PoolCreateFlags Flags;
long BlockSize;
int MinBlockCount;
int MaxBlockCount;
int FrameInUseCount;
Func<long, IBlockMetadata>? AllocationAlgorithmCreate;
}
class AllocationRequest << (S, gold) >>
{
long Offset;
long SumFreeSize;
long SumItemSize;
long ItemsToMakeLostCount;
object Item;
object CustomData;
AllocationRequestType Type;
readonly long CalcCost();
}
class PoolStats<< (S, gold) >>
{
long Size;
long UnusedSize;
int AllocationCount;
int UnusedRangeCount;
long UnusedRangeSizeMax;
int BlockCount;
}
class StatInfo<< (S, gold) >>
{
int BlockCount;
int AllocationCount;
int UnusedRangeCount;
long UsedBytes;
long UnusedBytes;
long AllocationSizeMin;
long AllocationSizeAvg;
long AllocationSizeMax;
long UnusedRangeSizeMin;
long UnusedRangeSizeAvg;
long UnusedRangeSizeMax;
}
class Stats
{
readonly StatInfo[] MemoryType;
readonly StatInfo[] MemoryHeap;
StatInfo Total;
}
class BlockAllocation { }
class VulkanMemoryAllocator
{
Device Device { get; }
VulkanMemoryAllocator(in VulkanMemoryAllocatorCreateInfo createInfo);
int CurrentFrameIndex { get; set; }
void Dispose();
ref readonly Silk.NET.Vulkan.PhysicalDeviceProperties PhysicalDeviceProperties { get; }
ref readonly PhysicalDeviceMemoryProperties MemoryProperties { get; }
MemoryPropertyFlags GetMemoryTypeProperties(int memoryTypeIndex);
int? FindMemoryTypeIndex(uint memoryTypeBits, in AllocationCreateInfo allocInfo);
int? FindMemoryTypeIndexForBufferInfo( in BufferCreateInfo bufferInfo, in AllocationCreateInfo allocInfo);
int? FindMemoryTypeIndexForImageInfo( in ImageCreateInfo imageInfo, in AllocationCreateInfo allocInfo);
Allocation AllocateMemory(       in MemoryRequirements requirements,       in AllocationCreateInfo createInfo);
Allocation AllocateMemoryForBuffer(      Buffer buffer,      in AllocationCreateInfo createInfo,      bool BindToBuffer = false);
Allocation AllocateMemoryForImage(      Image image,      in AllocationCreateInfo createInfo,      bool BindToImage = false);
Result CheckCorruption(uint memoryTypeBits);
Buffer CreateBuffer(      in BufferCreateInfo bufferInfo,      in AllocationCreateInfo allocInfo,      out Allocation allocation);
Image CreateImage(      in ImageCreateInfo imageInfo,      in AllocationCreateInfo allocInfo,      out Allocation allocation);
void FreeMemory(Allocation allocation);
Stats CalculateStats();
VulkanMemoryPool CreatePool(in AllocationPoolCreateInfo createInfo);
}
class VulkanMemoryPool
{
VulkanMemoryAllocator Allocator { get; }
string Name { get; set; }
void Dispose();
int MakeAllocationsLost();
Result CheckForCorruption();
void GetPoolStats(out PoolStats stats);
}
enum SuballocationType {}
enum AllocationRequestType{}
enum AllocationStrategyFlags {}
enum AllocatorCreateFlags {}
enum MemoryUsage {}
enum AllocationCreateFlags {}
enum PoolCreateFlags {}
AllocationRequest <-- AllocationRequestType
AllocationPoolCreateInfo <-- PoolCreateFlags
AllocationCreateInfo <-- MemoryUsage
AllocationCreateInfo <-- MemoryPropertyFlags
AllocationCreateInfo <-- AllocationStrategyFlags
AllocationCreateInfo <-- AllocationCreateFlags
AllocationCreateInfo --> VulkanMemoryPool : belongs optional to
AllocationContext <-- AllocationStrategyFlags
AllocationContext <-- SuballocationType
AllocationContext --> IBlockMetadata
Allocation --> Memory : occupies a chunk
Allocation --> Buffer : gets bound to
Allocation --> Image : gets bound to
VulkanMemoryAllocator <-- AllocationCreateInfo : for Allocations
VulkanMemoryAllocator <-- AllocationPoolCreateInfo : for AllocationPool
VulkanMemoryAllocator <-- VulkanMemoryAllocatorCreateInfo
VulkanMemoryAllocator --> Allocation : create
'VulkanMemoryAllocator --> Buffer : creates
'VulkanMemoryAllocator --> Image : creates
VulkanMemoryAllocator --> VulkanMemoryPool : creates
IBlockMetadata --> StatInfo : calculates
IBlockMetadata --> PoolStats : calculates
IBlockMetadata --> AllocationRequest : creates
IBlockMetadata --> BlockAllocation : alloc/free
Stats <--StatInfo
BlockAllocation --> Allocation
hide empty members
remove enum
remove AllocationPoolCreateInfo
remove AllocationCreateInfo
remove PoolCreateFlags
remove AllocationRequestType
remove AllocatorCreateFlags
remove SuballocationType
remove AllocationStrategyFlags
remove MemoryUsage
remove AllocationCreateFlags
remove MemoryPropertyFlags
remove VulkanMemoryAllocatorCreateInfo
remove Stats
remove StatInfo
remove PoolStats
@enduml
  </details

The IBlockMetadata interface is responsible for book keeping for a singular block of Device Memory. It keeps track of what memory in said block is allocated and what memory is free to be allocated. That's its reason for existing.

The IBlockMetadata interface is responsible for book keeping for a singular block of Device Memory. It keeps track of what memory in said block is allocated and what memory is free to be allocated. That's its reason for existing.

Ok i some time to look through the source and the interface is basically the extension point of this library via the AllocationPoolCreateInfo struct where you could specify custom pool allocation strategy. So we can't reduce the surface without sacrificing this feature (IBlockMetadata, allocation request/context would then be internal).
Otherwise i think the api is ok. When it gets in before the big 3.0 it can be battle tested and if there are some api changes that would be beneficial but breaking, they could be postponed to 3.0.

It looks like there isn't a lot of movement on this, and 2.X isn't really where the Silk.NET team themselves are focusing at this time.
We (I) still want this in mainline Silk.NET, though, and we own the code now (#599) so we can always revisit this later down the line!
For now @sunkin351 did you want the original VMASharp to join the Silk.NET community program? Hopefully this will make the community more willing to use VMASharp in the interim period.

I'm closing this as I won't be coming back to this, and with all maintainers being dedicated to 3.0 I'm not sure if anyone else would either. I've protected the branch, so it should stay put should anyone else want to pick this up.

Re-opening since there's active work on 2.x again, and a plan for more often API review meetings and more coffee & code streams

Theres quite a few cases of IntPtr being used, which doesnt fall in line with Silk classes like SilkMarshal which use nint, and the Vulkan bindings in general which seem to like nint and void* and have no uses of IntPtr

Bear in mind, this was written in a time before nint and nuint were introduced.

The original design of this API revolved around the ability to free "lost" allocations should they not be accessed in X (user defined) frames. If we don't wanna support that, we might be able to simplify the IBlockMetadata interface with a singular bool TryAllocate(...) method.

Oh wee Oh wee Ifeel it. lol..


KAFKA-10199: Do not process when in PARTITIONS_REVOKED

When a Streams application is subscribed with a pattern to input topics and an input topic is deleted, the stream thread transists to PARTITIONS_REVOKED and a rebalance is triggered. This happens inside the poll call. Sometimes, the poll call returns before a new assignment is received. That means, Streams executes the poll loop in state PARTITIONS_REVOKED.
With the state updater enabled processing is also executed in states other than RUNNING and so processing is also executed when the stream thread is in state PARTITION_REVOKED. However, that triggers an IllegalStateException with error message:
No current assignment for partition TEST-TOPIC-A-0 which is a fatal error.
This commit prevents processing when the stream thread is in state PARTITIONS_REVOKED.
More detailed description of your change,
if necessary. The PR title and PR message become
the squashed commit message, so use a separate
comment to ping reviewers.
Summary of testing strategy (including rationale)
for the feature or bug fix. Unit and/or integration
tests are expected for any behaviour change and
system tests should be considered for larger changes.
Committer Checklist (excluded from commit message)

[ ] Verify design and implementation
[ ] Verify test coverage and CI build status
[ ] Verify documentation (including upgrade notes)

The error I encountered in intergration test RegexSourceIntegrationTest#testRegexMatchesTopicsAWhenDeleted() was:
[2023-08-02 10:37:16,649] ERROR stream-thread [RegexSourceIntegrationTesttestRegexMatchesTopicsAWhenDeleted-7bdb51e3-7738-46fc-97dc-855c060adefd-StreamThread-1] Failed to process stream task 0_0 due to the following error: (org.apache.kafka.streams.processor.internals.TaskExecutor:124)
java.lang.IllegalStateException: No current assignment for partition TEST-TOPIC-A-0
	at org.apache.kafka.clients.consumer.internals.SubscriptionState.assignedState(SubscriptionState.java:369)
	at org.apache.kafka.clients.consumer.internals.SubscriptionState.partitionLag(SubscriptionState.java:541)
	at org.apache.kafka.clients.consumer.KafkaConsumer.currentLag(KafkaConsumer.java:2292)
	at org.apache.kafka.streams.processor.internals.PartitionGroup.readyToProcess(PartitionGroup.java:143)
	at org.apache.kafka.streams.processor.internals.StreamTask.isProcessable(StreamTask.java:704)
	at org.apache.kafka.streams.processor.internals.StreamTask.process(StreamTask.java:724)
	at org.apache.kafka.streams.processor.internals.TaskExecutor.processTask(TaskExecutor.java:97)
	at org.apache.kafka.streams.processor.internals.TaskExecutor.process(TaskExecutor.java:78)
	at org.apache.kafka.streams.processor.internals.TaskManager.process(TaskManager.java:1790)
	at org.apache.kafka.streams.processor.internals.StreamThread.runOnce(StreamThread.java:806)
	at org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:616)
	at org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:578)
[2023-08-02 10:37:16,650] ERROR stream-client [RegexSourceIntegrationTesttestRegexMatchesTopicsAWhenDeleted-7bdb51e3-7738-46fc-97dc-855c060adefd] Encountered the following exception during processing and the registered exception handler opted to SHUTDOWN_CLIENT. The streams client is going to shut down now.  (org.apache.kafka.streams.KafkaStreams:537)
org.apache.kafka.streams.errors.StreamsException: java.lang.IllegalStateException: No current assignment for partition TEST-TOPIC-A-0
	at org.apache.kafka.streams.processor.internals.TaskExecutor.processTask(TaskExecutor.java:125)
	at org.apache.kafka.streams.processor.internals.TaskExecutor.process(TaskExecutor.java:78)
	at org.apache.kafka.streams.processor.internals.TaskManager.process(TaskManager.java:1790)
	at org.apache.kafka.streams.processor.internals.StreamThread.runOnce(StreamThread.java:806)
	at org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:616)
	at org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:578)
Caused by: java.lang.IllegalStateException: No current assignment for partition TEST-TOPIC-A-0
	at org.apache.kafka.clients.consumer.internals.SubscriptionState.assignedState(SubscriptionState.java:369)
	at org.apache.kafka.clients.consumer.internals.SubscriptionState.partitionLag(SubscriptionState.java:541)
	at org.apache.kafka.clients.consumer.KafkaConsumer.currentLag(KafkaConsumer.java:2292)
	at org.apache.kafka.streams.processor.internals.PartitionGroup.readyToProcess(PartitionGroup.java:143)
	at org.apache.kafka.streams.processor.internals.StreamTask.isProcessable(StreamTask.java:704)
	at org.apache.kafka.streams.processor.internals.StreamTask.process(StreamTask.java:724)
	at org.apache.kafka.streams.processor.internals.TaskExecutor.processTask(TaskExecutor.java:97)
	... 5 more


Swipe right conflicts with browser history back function

Here is the plunkr with the minimal example: http://plnkr.co/edit/qurjdDgjYIPJaRoGG7ab?p=preview
Steps to reproduce the issue:

Open right side menu and click Main
Open right side menu and click One
Open right side menu and try to close it with the right swipe (from the most left side of the screen) and you will see strange behaviour. I think that it is related with the browser history and iOS7 go-back-with-right-swipe function (see https://github.com/driftyco/ionic/issues/714)

I think that it can be a bug. At least i want to know any work around to solve this issue.
Thanks for you work, guys!

Now PWA are in the scope of Ionic, this issue makes sense. Opening the left menu with swipe gesture conflicts with some browsers' navigate back gesture (depending on the browser and exact finger position, the one or the other happens).
On the other side, one could argue that the app is not supposed to override the browser features, i.e. the swipe gesture to open the side menu from any side should not be used. But I'm not really convinced we should just drop it when using Ionic for PWA. I would say the debate is still open :)
Any thought on that point?


"Verification failed" compiler error for u256/u64 multiplication

A project of mine is emitting the following error:
error: Internal compiler error: Verification failed: Type mismatch found for call to 'multiply_207': u64 is not a u256.
Please file an issue on the repository and include the code that triggered this error.

The compiler should provide a standard error displaying the line number and source code.

I've been able to create some simple reproductions:
library;

#[test]
fn test_mul() {
    let a = 1;
    let b = 0x2u256;
    log(b * a);
}

Gives the error:
error: Internal compiler error: Verification failed: Store value and pointer type mismatch.
Please file an issue on the repository and include the code that triggered this error.

Also applies to lt/gt
library;

#[test]
fn test_mul() {
    let a = 1;
    let b = 0x2u256;
    log(b > a);
}


Issue with Spacy Dependency Version: issubclass() arg 1 must be a class

Dear harvardnlp/annotated-transformer maintainers,
I am writing to bring to your attention an issue I encountered while using your excellent project. The issue is with the version of Spacy specified in the requirements.txt file, which is currently set to spacy==3.2.
While using this version, I encountered an error that says issubclass() arg 1 must be a class spacy. This appears to be due to an incompatibility with newer versions of Pydantic. According to this thread on the Spacy GitHub, this issue has been resolved in Spacy version 3.2.6.
Therefore, to ensure smooth operation of the project and avoid this error for other users, I would suggest updating the Spacy version in the requirements.txt file to spacy==3.2.6.
Thank you for your attention to this matter. I believe this minor adjustment will make the usage of this valuable tool more seamless for other developers in the future.
Best Regards,
hydway

hey , have you found any solution to that ?

hey , have you found any solution to that ?

upgrade spacy==3.2.6 can fix my problem :)

Thanks brother I will do that .
On Tue, 29 Aug, 2023, 3:58 am Hydway, @.***> wrote:

hey , have you found any solution to that ?
upgrade spacy==3.2.6 can fix my problem :)
—
Reply to this email directly, view it on GitHub
https://github.com/harvardnlp/annotated-transformer/issues/112#issuecomment-1696511582,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AXDWDTKTUD64VEFTT4QG2XLXXULR7ANCNFSM6AAAAAAZST2L3Y
.
You are receiving this because you commented.Message ID:
@.***>

Thanks! It works well!!


Received subscription limit for creating App Configuration stores with Free SKu

To whom it may concern, I received the following error when attempting to create a Azure App Configuration store:
Error: Error waiting for creation of App Configuration "cfg-app1-qa-0701" (Resource Group "rg-app1-qa-0701"): Code="SkuPerSubscriptionLimitReached" Message="The subscription has reached its limit of 'configurationStores' resources with the 'free' SKU."
My subscription is pay as you go and is not a trial. I have two questions.

How many App Config Stores with the Free SKU can we create in a subscription?
Could you add App Configuration to your limits article?

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

ID: 36f49a06-90b1-cbe1-3853-2c38277b79f8
Version Independent ID: 02ff6f6c-3ef6-b48f-060d-b290419e0aba
Content: Azure subscription limits and quotas - Azure Resource Manager
Content Source: articles/azure-resource-manager/management/azure-subscription-service-limits.md
Service: azure-resource-manager
Sub-service: management
GitHub Login: @davidsmatlak
Microsoft Alias: tomfitz

@wcampbell40 Thanks for your comment! We will review and provide an update as appropriate.

@wcampbell40 - you are limited to one free SKU per subscription.
I have added a work item to look into adding App Configuration to the quotas and limits article.
#please-close


feat: make trivy-server replicas configurable

Description
Makes trivy-server replicas configurable.
Related issues

Close #1321

Remove this section if you don't have related PRs.
Checklist

[x] I've read the guidelines for contributing to this repository.
[x] I've added usage information (if the PR introduces new options)

@jon-rei thank you for the contribution lgtm 🚀


Filters toggle

Filters toggle have to be on the same side, have to be consistent with the other ones. Toggle have to be on the right like "smart" filter.
Private Zenhub Image

Hi @decentralandmiguel! These filters are the same filters as the ones in the Marketplace, I wouldn't change it at the moment.

Closing it as we won't be doing it.


Added hello world in Portuguese

Description
Added a new file named portuguese.dart which outputs hellow world in Portuguese

@googlebot I signed it!

Thanks for the contribution. Unfortunately, we cannot maintain the hello world program in multiple languages.


Issue while setting up selectedBackgroundColor and fontSize properties to the SegmentedBar

Setting up selectedBackgroundColor, fontSize in CSS or inline in the HTML will not change the SegmentedBar style. I am attaching sample code, where the problem could be reproduced. This problem appears only on Android.
app.component.html
<StackLayout class="p-20">
   <SegmentedBar [items]="segmentedbaritems">
   </SegmentedBar>
</StackLayout>

app.component.ts
import { Component } from "@angular/core";

@Component({
    selector: "my-app",
    templateUrl: "app.component.html",
})
export class AppComponent {
    public counter: number = 16;
    public segmentedbaritems = [{title:"title1"}, {title:"title2"}, {title:"title3"}, {title:"title4"}, {title:"title5"}];

    public get message(): string {
        if (this.counter > 0) {
            return this.counter + " taps left";
        } else {
            return "Hoorraaay! \nYou are ready to start building!";
        }
    }

    public onTap() {
        this.counter--;
    }
}

app.css
SegmentedBar{
    selected-background-color:yellow;
    font-size: 10;
    background-color: red
}

package.json
{
  "description": "NativeScript Application",
  "license": "SEE LICENSE IN <your-license-filename>",
  "readme": "NativeScript Application",
  "repository": "<fill-your-repository-here>",
  "nativescript": {
    "id": "org.nativescript.issue3244ng",
    "tns-ios": {
      "version": "2.4.0"
    },
    "tns-android": {
      "version": "2.4.1"
    }
  },
  "dependencies": {
    "@angular/common": "2.3.1",
    "@angular/compiler": "2.3.1",
    "@angular/core": "2.3.1",
    "@angular/forms": "2.3.1",
    "@angular/http": "2.3.1",
    "@angular/platform-browser": "2.3.1",
    "@angular/platform-browser-dynamic": "2.3.1",
    "@angular/router": "3.3.1",
    "nativescript-angular": "1.3.0",
    "nativescript-theme-core": "^0.2.1",
    "reflect-metadata": "~0.1.8",
    "rxjs": "5.0.0-rc.4",
    "tns-core-modules": "2.4.4"
  },
  "devDependencies": {
    "babel-traverse": "6.22.1",
    "babel-types": "6.22.0",
    "babylon": "6.15.0",
    "lazy": "1.0.11",
    "nativescript-dev-android-snapshot": "^0.*.*",
    "nativescript-dev-typescript": "^0.3.2",
    "typescript": "~2.0.10",
    "zone.js": "~0.7.2"
  }
}

The problem is fixed in NativeScipt 3.0

The issue is already resolved with<EMAIL_ADDRESS>


Q: A better way of sharing env-specific variables on both client and server?

I came up with a solution to have the URL prefix of my API configurable, on a per environment basis.
In my case, I'm not using server proxying as in the boilerplate - my app connects directly to my API. This means I need a fully qualified domain name on my requests, whether they happen during SSR, or in the browser.
If we look at the current version of ApiClient.js, we have;
function formatUrl(path) {
  const adjustedPath = path[0] !== '/' ? '/' + path : path;
  if (__SERVER__) {
    // Prepend host and port of the API server to the path.
    return 'http://' + config.apiHost + ':' + config.apiPort + adjustedPath;
  }
  // Prepend `/api` to relative URL, to proxy to API server.
  return '/api' + adjustedPath;
}

and in config.js
  apiHost: process.env.APIHOST || 'localhost',
  apiPort: process.env.APIPORT,

So I want ApiClient to look something like this, which (I think) is the least amount of code I need to change;
function formatUrl(path) {
  const adjustedPath = path[0] !== '/' ? '/' + path : path;
  // Prepend host and port of the API server to the path.
    return 'http://' + config.apiHost + ':' + config.apiPort + adjustedPath;
}

Which won't work client-side since process.env vars are from node.
The solution I came up with was this;
(Note in my code below I combine apiHost and apiPort into 'apiUrl')
in Html.js
          <script
            charSet="UTF-8"
            dangerouslySetInnerHTML={{__html: `window.__apiUrl='${config.apiUrl}'`}}
          />

and in config.js
  apiUrl: __SERVER__ ? process.env.APIURL || 'localhost' : window.__apiUrl,

This feels a bit of a hack. The config module writes a variable, which is read by the server code to render the html with a variable, which is read by the config module in the client. Phew.
Is there a better way to share env variables between client & server code?

you can use a webpack plugin, like
  new webpack.DefinePlugin({       'process.env': Object.keys(process.env).reduce(function(o, k) {         o[k] = JSON.stringify(process.env[k]);         return o;       }, {})     }),
to your webpack config file (the prod.config.js already has something like this).
This will replace ALL env variables so be aware with username/password. I have found this solution here:

I know much time passed since last answer, but today there's event better way to do it :) : https://webpack.js.org/plugins/environment-plugin/

What if we don't want to build it and instead we publish the bundle that needs to be started on the server? In that case, webpack's environment-plugin doesn't help either.

I'm not 100% sure what you mean but willing to work with you :D
What behavior are you looking for or expecting exactly @veeramarni? Depending on what you're after you could possibly make the frontend rely on redux instead of "environment variables" (rightfully, its state management after all) and when the initial redux state is sent from the server it could send environment variables (living on the server) with it.
Does that make sense/is it what you're after? Browser side bundle stays "dynamic" and you still get to benefit from environment variables.

Let's say we building Docker images with just the bundle not copying the sources in that case environment-plugin won't work as we won't be running any build tool.
What we are currently doing is using the following script to pull environment settings to the client.
// List of the env variables you want to use on the client. Careful on what you put here!
const publicEnv = [
  'API_URL',
  'FACEBOOK_APP_ID',
  'GA_ID'
];

const isBrowser = typeof window !== 'undefined';
const base = (isBrowser ? window.__ENV__ : process.env) || {};

const env = {};
for (const v of publicEnv) {
  env[v] = base[v];
}
export default env;

Reference: https://stackoverflow.com/questions/28717819/environment-variables-in-an-isomorphic-js-app-webpack-find-replace?rq=1

@veeramarni environment plugin doesn't solve all the problems, it's just a shorter way of using define plugin like this:
new webpack.DefinePlugin({ 'process.env': Object.keys(process.env).reduce(function(o, k) { o[k] = JSON.stringify(process.env[k]); return o; }, {}) })

If define plugin doesn't work for you, the environment plugin won't either.

I know this is old, but I thought I should add my next.js example:
Since next.js renders the ./pages/_document.tsx page on the server side before any other page, this is a good place to do this.
import * as React from 'react'
import Document, { Html, Head, Main, NextScript } from 'next/document'

const UNIVERSAL_ENV_VARS = ['API_URL']   // add all env vars you want to be accessible on the client here, because it's a bad idea to just add the whole process.env to window.process.env

class AppDocument extends Document {
  public static async getInitialProps(ctx): Promise<{}> {
    const initialProps = await Document.getInitialProps(ctx)
    return { ...initialProps }
  }

  public render(): React.ReactNode {
    return (
      <Html>
        <Head>
          <style>{`body { margin: 0 } /* custom! */`}</style>
          <script
            charSet='UTF-8'
            dangerouslySetInnerHTML={{
              __html: `window.process={ env: ${JSON.stringify(          // set window.process.env to the narrow list of env vars
                UNIVERSAL_ENV_VARS.map(key => ({
                  key,
                  value: process.env[key]
                })).reduce((acc, curr) => {
                  acc[curr.key] = curr.value
                  return acc
                }, {})
              )} }`
            }}
          />
        </Head>
        <body className='custom_class'>
          <Main />
          <NextScript />
        </body>
      </Html>
    )
  }
}

export default AppDocument

I decided to use window.process.env so I can use the same code on client and server without the checks.


bold2target transforms applied in incorrect order to boldref, mask, t2star map

What happened?
In a subject processed with --output-spaces MNI152NLin6Asym:res-2, the MNI-space boldref, t2star, and BOLD mask volumes appear misregistered to the MNI template, though the BOLD timeseries appear correctly registered. No errors in processing reported
What command did you use?
/opt/conda/envs/fmriprep/bin/fmriprep --output-spaces MNI152NLin6Asym:res-2 --fs-license-file /license.txt --project-goodvoxels --omp-nthreads 3 --cifti-output 91k -vv -w /wd /bids_dir /output_dir participant

What version of fMRIPrep are you running?
current Dockerhub unstable
How are you running fMRIPrep?
Singularity
Is your data BIDS valid?
Yes
Are you reusing any previously computed results?
No
Please copy and paste any relevant log output.
No response
Additional information / screenshots
from the command.txts in the work dir, it looks like xfms are being passed in the opposite of the expected order for antsApplyTransforms:
antsApplyTransforms --default-value 0 --dimensionality 3 --float 1 --input /wd/fmriprep_0_0_wf/sub_XXXXXX_wf/bold_ses_1_task_rest_run_01_echo_1_wf/bold_native_wf/bold_t2smap_wf/t2smap_node/T2starmap.nii.gz --interpolation LanczosWindowedSinc --output T2starmap_trans.nii.gz --reference-image /home/feczk001/tmadison/.cache/templateflow/tpl-MNI152NLin6Asym/tpl-MNI152NLin6Asym_res-02_T1w.nii.gz --transform /output_dir/sub-XXXXXX/ses-1/func/sub-XXXXXX_ses-1_task-rest_run-01_from-boldref_to-T1w_mode-image_desc-coreg_xfm.txt --transform /output_dir/sub-XXXXXX/ses-1/anat/sub-XXXXXX_ses-1_from-T1w_to-MNI152NLin6Asym_mode-image_xfm.h5

Just rewriting for readability:
antsApplyTransforms --default-value 0 --dimensionality 3 --float 1 \
    --input /wd/fmriprep_0_0_wf/sub_XXXXXX_wf/bold_ses_1_task_rest_run_01_echo_1_wf/bold_native_wf/bold_t2smap_wf/t2smap_node/T2starmap.nii.gz \
    --interpolation LanczosWindowedSinc --output T2starmap_trans.nii.gz \
    --reference-image /home/feczk001/tmadison/.cache/templateflow/tpl-MNI152NLin6Asym/tpl-MNI152NLin6Asym_res-02_T1w.nii.gz \
    --transform /output_dir/sub-XXXXXX/ses-1/func/sub-XXXXXX_ses-1_task-rest_run-01_from-boldref_to-T1w_mode-image_desc-coreg_xfm.txt \
    --transform /output_dir/sub-XXXXXX/ses-1/anat/sub-XXXXXX_ses-1_from-T1w_to-MNI152NLin6Asym_mode-image_xfm.h5

Ah, okay. Yes, the problem is that nitransforms builds a list of transforms while antsApplyTransforms builds a stack, so we can't pass the same sequence to our own resampler versus antsApplyTransforms.


Behaviour of crd-install hook annotation

Output of helm version:
Client: &version.Version{SemVer:"v2.10.0-rc.2", GitCommit:"56154102a2f25ebf679c791907fd355bb0377f05", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.10.0-rc.2", GitCommit:"56154102a2f25ebf679c791907fd355bb0377f05", GitTreeState:"clean"}

Output of kubectl version:
Client Version: version.Info{Major:"1", Minor:"9", GitVersion:"v1.9.7", GitCommit:"dd5e1a2978fd0b97d9b78e1564398aeea7e7fe92", GitTreeState:"clean", BuildDate:"2018-04-19T00:05:56Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.1", GitCommit:"b1b29978270dc22fecc592ac55d903350454310a", GitTreeState:"clean", BuildDate:"2018-07-17T18:43:26Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}

Cloud Provider/Platform (AKS, GKE, Minikube etc.):
Baremetal
Referring to the new crd-install hook annotation https://github.com/helm/helm/blob/master/docs/charts_hooks.md#defining-a-crd-with-the-crd-install-hook
What is the intended behaviour for chart re-install ?
I noticed that it does not automatically remove the custom resource definitions during a chart purge hence the re-install fails due to existing crds.

Yeah, we have this weird case where once you have created a CRD definition, other things on a cluster can become dependent on it -- notably, and CRD instances. So once we've created a CRD, it is risky to delete it. So we implemented CRD installation as a hook, which makes the CRD unmanaged (e.g. Helm doesn't delete it by default)
So if you want to delete it, you need to explicitly tell the chart to delete it:
https://github.com/helm/helm/blob/master/docs/charts_hooks.md#hook-resources-are-not-managed-with-corresponding-releases

sdake@falkor-07:~/go/src/istio.io/istio$ helm version
Client: &version.Version{SemVer:"v2.10.0-rc.2", GitCommit:"56154102a2f25ebf679c791907fd355bb0377f05", GitTreeState:"clean"}
Server: &version.Version{SemVer:"v2.10.0-rc.2", GitCommit:"56154102a2f25ebf679c791907fd355bb0377f05", GitTreeState:"clean"}
sdake@falkor-07:~/go/src/istio.io/istio$ kubectl version
Client Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.0", GitCommit:"fc32d2f3698e36b93322a3465f63a14e9f0eaead", GitTreeState:"clean", BuildDate:"2018-03-26T16:55:54Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"10", GitVersion:"v1.10.6", GitCommit:"a21fdbd78dde8f5447f5f6c331f7eb6f80bd684e", GitTreeState:"clean", BuildDate:"2018-07-26T10:04:08Z", GoVersion:"go1.9.3", Compiler:"gc", Platform:"linux/amd64"}

@technosophos I've tried the following in our CRD charts:
    "helm.sh/hook-delete-policy": before-hook-creation

which results in:
sdake@falkor-07:~/go/src/istio.io/istio$ helm install install/kubernetes/helm/istio --name istio --namespace istio-system
Error: object is being deleted: customresourcedefinitions.apiextensions.k8s.io "gateways.networking.istio.io" already exists

I've also tried:
    "helm.sh/hook-delete-policy": before-hook-creation

I've also tried the policy
hook-succeeded: results in immediate deletion of the CRD after registration - which makes sense

I haven't tried hook-failed,before-hook-creation which may render something working - will have to try.
Is the recommended technique for deleting CRDs when using crd-install to use a post-delete hook?

@sdake it sounds like we may require a post-delete job to remove the resources ?

@nixgadget hope that isn't the answer but will wait for @technosophos to weigh in.
Cheers
-steve

CRD deletion is slow, so using a before-hook-creation might not be fast enough.
In general, for things like CRDs it's better to delete in post-delete if possible.
There's also the --no-hooks CLI option if you know the CRD is always there.

with "before-hook-creation" policy, the CRD is deleted immediately after it is created during helm install on a fresh cluster.  It sounds like this isn't expected behavior?

Yeah -- that is used for things like Jobs where you run the job once, then delete it

@sdake for me in my baremetal cluster before-hook-creation didnt quite work as @technosophos points out.

Thanks, will sort out a post-delete hook.

@technosophos thanks for clarifying.

@technosophos can you clarify how a post-delete job would work on deleting CRDs with the helm template case?
For further reference, a quick read of https://istio.io/docs/setup/kubernetes/helm-install/#installation-steps might help set some context.  Istio 1.0 supports both helm template and helm install models.
Our CRD template is here:
https://github.com/istio/istio/blob/master/install/kubernetes/helm/istio/templates/crds.yaml
Cheers and thanks for your help - people are restless ;)
-steve

Okay, admittedly this is not my forte. What I have seen people do is launch a post-delete Job that wraps the kubectl docker image, and just runs kubectl delete on the given resource. I imagine that there are other ways of doing this that are a little less heavy handed.
This is definitely something we're aiming to fix in Helm 3. But in Helm 2 it's just sort of clunky to deal with CRDs.

@technosophos right - I understand its clunky and not hounding you up about that :).  We had post-install jobs doing CRDs prior (with hyperkube) so it isn't unexpected we would need kubectl wrapped jobs.  My question is more about the helm template case.  With helm template, everything (including the Job that runs kubectl delete on the list of resources) would be deleted on start, vs helm installwhich will process the job only on delete.
Wondering how to make the helm template case work with a post install job (IOW ignore the job entirely) while the helm install case only runs at deletion of the chart with the unmanaged resources.
Cheers
-steve

@vhosakot - the helm template case is the main use case that must be preserved.  It is far more important than Helm not deleting CRDs.  If I have to trade one for another, I'll keep helm template with kubectl apply -f...

What if I want to leave the crd in place, and have the restarted release continue to use it and its data?
When delete then reapply the release, it fails because the crd "already exists", due to the crd-install hook.
Is there any way around that?

Any update on this issue? What is the recommeneded way to handle customresourcedefintion create in second helm install

@jaijitendra  That's exactly the approach we have taken to make this work

seems like just accepting that crd exists and moving on would be best option.

I like the idea of the cli option --no-hooks to re-install with leaving existing crd in place

closing as inactive.


Oops after upgrading to Jenkins 2.375.1: Could not load class: org.jenkins.ui.icon.IconSet

Dear lovely project maintainers,
first things first, I wish you a happy new year.
On upgrading our instance to Jenkins 2.375.1, we have been tripped by the issue outlined at JENKINS-69966.
Observation
Jenkins displays an Ooops page, and, while being started, does not work at all.

Problem

Could not load class: org.jenkins.ui.icon.IconSet.
Reason: java.lang.NoSuchMethodException: org.jenkins.ui.icon.IconSet.getSymbol()

org.apache.commons.jelly.JellyTagException: jar:file:/var/jenkins_cache/war/WEB-INF/lib/jenkins-core-2.375.jar!/hudson/model/View/sidepanel.jelly:75:50: <st:include> org.apache.commons.jelly.JellyTagException: jar:file:/var/jenkins_cache/war/WEB-INF/lib/jenkins-core-2.375.jar!/lib/layout/pane.jelly:81:29: <d:invokeBody> org.apache.commons.jelly.JellyTagException: jar:file:/var/jenkins_cache/war/WEB-INF/lib/jenkins-core-2.375.jar!/lib/layout/icon.jelly:70:93: <j:invokeStatic> Could not load class: org.jenkins.ui.icon.IconSet. Reason: java.lang.NoSuchMethodException: org.jenkins.ui.icon.IconSet.getSymbol(java.lang.String, java.lang.Integer, java.lang.String, java.lang.String, java.lang.String, java.lang.String)
	at org.apache.commons.jelly.impl.TagScript.handleException(TagScript.java:719)
	at org.apache.commons.jelly.impl.TagScript.run(TagScript.java:277)

Description
At JENKINS-69966, they say:

Occurs when cloud stats plugin is installed and at least one agent is tracked by cloud stats.
Most likely caused by https://github.com/jenkinsci/jenkins/pull/7208.

Is there anything you could do about it?
With kind regards,
Andreas.

Have you installed the most recent release of the cloud stats plugin?
254.v47891b_b_5b_6f6 is the release that fixed that issue.  There has also been release 267.v577e3742c282 that includes other changes.
In general, when updating to a new long term support release, it is important to also update to the most recent releases of plugins.

Dear Mark,
thank you for the quick and swift response. I admit we did not update the cloud stats plugin before upgrading to a new long term support release, and we will adjust our upgrade procedure accordingly in the future, as you suggested. Also, apologies for missing GH-30. I think we can consider this as being resolved. Sorry for the noise, and thank you so much.
With kind regards,
Andreas.