Please clarify the process to upgrade from WHAT kind of existing disk to WHAT kind of SSD

On the header about converting disks to Ultra or SSD.  Instead of saying "you can convert existing disks" replace with "converting any disk to the next higher class will require the new upgrade disk be converted from a snapshot".
In terms of direct conversion, also a table might be nice?
*HHD to SSD
HDD to SSDv2
HHD to SSD Ultra
SSD to SSDvs
SSD to SSD Ultra
SSDv2 to Ultra
*All upgrades will need to be created from a snapshot.
Otherwise, increasing the disk SKU can be done through the Azure Portal or CLI...

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

ID: 8fa67205-4df0-3c91-2350-10982000a41f
Version Independent ID: d5dc569e-837d-02e7-054f-44448a6d7dcf
Content: Convert managed disks storage between different disk types - Azure Virtual Machines
Content Source: articles/virtual-machines/disks-convert-types.md
Service: azure-disk-storage
GitHub Login: @roygara
Microsoft Alias: rogarana

@dapipkin
Thanks for your feedback! We will investigate and update as appropriate.

@roygara
could you please review this and update as appropriate.

@dapipkin
I've delegated this to @roygara, a content author, to review and share their valuable insights.

Hello everyone,
We saw that there was an update on the pages the next day, so someone who was in our meeting made sure that this was done, and we shared the update with the CX to address their concerns.
Create managed disk from snapshot (Linux) - CLI sample - Azure Virtual Machines | Microsoft Learnhttps://learn.microsoft.com/en-us/azure/virtual-machines/scripts/create-managed-disk-from-snapshot
In this update, looks like there was a section added:
Check disk status
When you create a managed disk from a snapshot, it starts a background copy process. You can attach a disk to a VM while this process is running but you will experience performance impact (4k disks experience read impact, 512e experience both read and write impact). For Ultra Disks and Premium SSD v2, you can check the status of the background copy process with the following commands:
..... (more in hyperlink).....
========================================================================================================
I think that this addresses the imediate issue for documentation.  What I also want to note is that this issue can affect large data migration.  I our instance, the CX had made a disk from a backup snapshot of a 15 TB Oracle DB.  It was attached to the Oracle VM, but none of the data was accessable.  It acted like this issue here in Oracle:
Is Warm-Up after Cloning Required? (oracle.com)https://support.oracle.com/knowledge/Oracle Database Products/2939108_1.html
Is Warm-Up after Cloning Required?https://support.oracle.com/knowledge/Oracle Database Products/2939108_1.html
MySQL Server - Version 8.0 and later: Is Warm-Up after Cloning Required?
support.oracle.com
Our overall CX issue is that the expected immediate access to the disk, while we were thinking it was more like a known Oracle issue.  In any event, We should add notes to appropriate sections where we discuss creating a disk from snapshot.  Would there be any other places where we see this kind of behavior?
Damon Pipkin
Sr. Support Escalation Engineer
Azure Rapid Response
Working Hours:
Email:
Office Phone:
Manager:
Mon-Fri 9:00 am – 6:00 pm PST
<EMAIL_ADDRESS>+(425) 704-0160
<EMAIL_ADDRESS>If  you need to work with another Azure Technical Support Engineer outside of my working hours, please email<EMAIL_ADDRESS>with your case number, availability and email thread.  One of my colleagues will contact you.
We are interested in your feedback.  Please let my @.***> know your thoughts on the level of service you received

From: RamanathanChinnappan @.>
Sent: Friday, October 27, 2023 10:28 PM
To: MicrosoftDocs/azure-docs @.>
Cc: Damon Pipkin @.>; Mention @.>
Subject: Re: [MicrosoftDocs/azure-docs] Please clarify the process to upgrade from WHAT kind of existing disk to WHAT kind of SSD (Issue #116357)
@dapipkinhttps://github.com/dapipkin
I've delegated this to @roygarahttps://github.com/roygara, a content author, to review and share their valuable insights.
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/issues/116357#issuecomment-1783708506, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKWSOWQXIRTNSNBHSIMKOXDYBSJYDAVCNFSM6AAAAAA6M52Q6GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTOOBTG4YDQNJQGY.
You are receiving this because you were mentioned.Message ID: @.***>

Thanks!
Sent from my T-Mobile 5G Device
Get Outlook for Androidhttps://aka.ms/AAb9ysg

From: rogara @.>
Sent: Tuesday, November 28, 2023 2:05:53 PM
To: MicrosoftDocs/azure-docs @.>
Cc: Damon Pipkin @.>; Mention @.>
Subject: Re: [MicrosoftDocs/azure-docs] Please clarify the process to upgrade from WHAT kind of existing disk to WHAT kind of SSD (Issue #116357)
The section of the article covering migration to Premium SSD v2 and Ultra Disks covers the original ask. But I've staged updates to make this more clear in the introduction. They should go live in the next publish.
Accordingly, I'll close this out.
#please-close
—
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/azure-docs/issues/116357#issuecomment-1830834689, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AKWSOWUT2RZDGUCOAAJUWDDYGZN4DAVCNFSM6AAAAAA6M52Q6GVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZQHAZTINRYHE.
You are receiving this because you were mentioned.Message ID: @.***>


fix:  wrong module name in maven multi-level projects #677

Make sure these boxes are checked before submitting your pull request:

[x] Add fixtures and spec when implementing or updating a test runner
[] Update the README accordingly (no change needed)
[] Update the Vim documentation in doc/test.txt (no change needed)

@codeinabox Hey,
Comments resolved.


Add .editorconfig for tab indented source files

On GitHub, the default tab size is set to 8, which can make source code less readable. To address this, this pull request adds .editorconfig file to improve code readability. GitHub recognizes that file and automatically adjusts the tab size.

Thank you!


Update the paas example to simplify deployment using the latest azure-webapp-maven-plugin

This PR is an improved version of #5 using the latest version of azure-webapp-maven-plugin now that is capable of deploying artifacts of multiple types, so users don't have to manually upload files through FTP.

I'll give it a try ASAP. Merging for now.


Changes due to the implicit index creation

Description
Implicit index creation

New function:
Index(string uid)
FetchPrimaryKey()
Changing behavior function:
AddDocument(documents, string primaryKey = default)
UpdateDocument(documents, string primaryKey = default)

@curquiza we talk to implement Update() method but this function already exist:
        public async Task<Index> ChangePrimaryKey(string primarykeytoChange)
        {
            var message = await this.client.PutAsJsonAsync($"indexes/{this.Uid}", new { primaryKey = primarykeytoChange });
            var responsecontent = await message.Content.ReadFromJsonAsync<Index>();
            this.PrimaryKey = responsecontent.PrimaryKey;
            return this;
        }

I can rename it for more coherence between the SDKs but I find this name more accurate maybe we can change it to UpdatePrimaryKey() ?

@alallema, thanks for the investigation!
You can rename it in another PR 🙂 I will open an issue

Some final requests before the final merge 😇

Done!


Comment on tutorial_read_spatial

@giovp So here my comment on the tutorial.
First, I think it's a great idea to do such a general tutorial! It helps a lot to understand the general structure of the data and will make it a lot easier to fit in own data. Really nice job!
I tried to run the tutorial in a notebook and came across following error when trying to plot the dummy adata:

It looks for me like the function is searching for the 'spatial' coordinates in adata.uns['spatial'] instead of adata.obsm['spatial'].
And when I added the spatial coordinates to adata.uns['spatial'] it says 'numpy.ndarray' object has no attribute 'keys'. Why does sc.pl.spatial() expect a dictionary in adata.uns['spatial']?
When this works I'll try to fit in my Dbit-seq data. Really excited to apply all the Squidpy functions to it!

Ah yes that explains it 😄 Now it's working. Very nice! Only in the very last line the error AttributeError: 'ImageContainer' object has no attribute 'show' appears.
Beside that: Would it be possible to make not only the spot size but also the spot shape of the spatial plots customizable? For Dbit-seq I would need squares instead of circles.
Didn't have time to test it on my data yet but I'll let you know as soon as I did.

Ah yes that explains it 😄 Now it's working. Very nice! Only in the very last line the error AttributeError: 'ImageContainer' object has no attribute 'show' appears.

mmh this is weird... can you try to re clone the latest version of the repo and re install it with pip install squidpy[dev] ?

Beside that: Would it be possible to make not only the spot size but also the spot shape of the spatial plots customizable? For Dbit-seq I would need squares instead of circles.

this is a good point, and not, it's not supported now but should be too difficult to be added. I'll make a new issue in scanpy and tag youthere.

Beside that: Would it be possible to make not only the spot size but also the spot shape of the spatial plots customizable? For Dbit-seq I would need squares instead of circles.

this is a good point, and not, it's not supported now but should be too difficult to be added. I'll make a new issue in scanpy and tag youthere.

Think we can already support this in squidpy.im.ImageContainer.interactive - napari has a square glyph (among many others), but selecting glyphs is disabled because you could also have an asterisk, etc.

I believe this can be closed (feel free to reopen if I'm wrong).


(6) Could not resolve host: magnet

when ever you download or go to down load a magnet links you get this error
(6) Could not resolve host: magnet
is there any way to make this download the links

Fixed:
https://github.com/Athlon1600/php-proxy/commit/4f79002ae8cd27f7935d95a02f500436b09f202d


Notification Template Page - when we are try to crop image it shows error message

Describe the bug

when we are edit image and try to crop it shows error message

https://www.berrycast.com/conversations/0f0bb705-c968-5ff4-918b-b7f471c47986


Dependencies missing on npm registry

Description
Some stdlib packages don't include their stdlib dependencies in the npm registry version of their package.json.
For example, @stdlib/math lists @stdlib/constants as a dependency in its package.json on Github, but it is not included in its package.json on npm. As a result, if I run a function from @stdlib/math whose implementation depends on @stdlib/constants, I get an import error as the stdlib dependencies cannot be found.
Related Issues
No response
Questions
No response
Demo
No response
Reproduction

Run npm add @stdlib/math
Observe that constants is missing from node_modules/@stdlib

Expected Results
No response
Actual Results
No response
Version
No response
Environments
N/A
Browser Version
No response
Node.js / npm Version
No response
Platform
No response
Checklist

[x] Read and understood the Code of Conduct.
[x] Searched for existing issues and pull requests.

@thomasfsteeples Thanks for bringing this to our attention! I can confirm the issue; we will look into publishing a fix for this as soon as we can.

@thomasfsteeples A new patch has been published for the top-level namespace packages. This issue should now be resolved. Please let us know if you encounter any further issues and many thanks again for reporting!

@Planeshifter @thomasfsteeples Can this issue now be closed?

Closing as this issue has been resolved.


avoid exception when adding specific property in EnvironmentOption

This PR fixes ArgumentException when following key exists in EnvironmentOption.EnvironmentVariables.

MSBuildSDKsPath
MSBuildExtensionsPath

appveyor tests are failed? In my environment(ubuntu 18.04 amd64), all tests are successed.

Thanks for the fix - good find.
Don't worry too much about the CI failure. It's intermittent and only on the Linux build - haven't quite been able to track it down yet.


⚠ Bofrost.de has degraded performance

In 3fd12e9, Bofrost.de (https://www.bofrost.de) experienced degraded performance:

HTTP code: 200
Response time: 1282 ms

Resolved: Bofrost.de performance has improved in 3b944e6 after 6 minutes.


Update README.md

This is a simple change but I bet it's going to take forever.

Added the fact there was no ruby file to work


Release GT Analysis tools

It might be useful to release a minimal version of GT Analysis (without computation and delay analysis) as just a wrapper around EVO to make it easy for people to analyze and compare datasets. It might be released with the datasets, or with LOCUS.

@BenjaminMorrell  can you look over here and tell which one we do not need and which we want (just for confirmation), @yunzc  as well (for loop closures)

ok it's open here


2018/schedule

#441
schedule  2018
有些小細節未完成

Codecov Report

Merging #450 into master will increase coverage by 0.11%.
The diff coverage is 50%.

@@            Coverage Diff             @@
##           master     #450      +/-   ##
==========================================
+ Coverage    76.6%   76.72%   +0.11%
==========================================
  Files          69       69
  Lines        2471     2475       +4
==========================================
+ Hits         1893     1899       +6
+ Misses        578      576       -2

Impacted Files
Coverage Δ

src/events/views.py
61.4% <ø> (+3.5%)
:arrow_up:

src/core/models.py
90.9% <50%> (-3.21%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 39291a3...ba1c246. Read the comment docs.

OK


Feature: Surface World

Description
The surface world contains the workshop and elevator mine entrance.

The student will use the surface world to access the workshop
The student will use the surface world to access the elevator mine
The game designer will be able to customise the surface world with new features

Functional Requirements
None
Acceptance Criteria

[x] It must have a workshop
[x] It must have an elevator
[x] There should be a surface world scene

Dependencies

#113
#115

Definition of Done

[ ] Follows the naming conventions
[ ] Follows the coding conventions
[ ] Meets the acceptance criteria
[ ] Pull request has been opened

Waiting for elevator and workshop dependencies


optimize: optimization passes in GHash/gfmul

Investigate potential further optimization opportunities in GHash, particular around xor optimizations. Currently using 80k constraints per multiplication block. Est. 3-6h work.
Work initially explored last week in https://github.com/thor314/aes-proof-gfmul-prototype/, to be concluded this week

@0xJepsen and I walked through a calculation of theoretical minimum gates in gfmul, and we came to at least 67k+X where X is the cost of computing a lookup table on galois field reductions from high 128-256 bits back into the galois field. The current constraint count is 70k, so gfmul looks pretty close to optimized already.


convert unused publication types in librecat to misc (report, preprint, ...)

[x] conference_editor -> book_editor
[x] journal_editor issue_editor
[x] report -> misc
[x] preprint -> misc
[x] ensure they can't be created anymore (https://github.ugent.be/Universiteitsbibliotheek/librecat/commit/90ab02c2188ecf64d5f8a712bdb1a0dc46abc8ed)

ok


Current traccar source builds 3.12 Snapshot, should be 3.14

$ git pull
Already up-to-date.
$ git branch
* master
$ mvn package
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building traccar 3.12-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-checkstyle-plugin:2.17:check (checkstyle) @ traccar ---

Cannot run build from source .jar on base install 3.13

I would recommend to search before posting an issue.
#3364 #3354

Sorry, I was not clear enough.
The code is actually 3.14 and needs the schema updates for 3.14 in changlog-master.xml
$ cat changelog-master.xml
<?xml version="1.0" encoding="UTF-8"?>
<databaseChangeLog
  xmlns="http://www.liquibase.org/xml/ns/dbchangelog"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog
                      http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-3.4.xsd">

  <include file="changelog-3.3.xml" relativeToChangelogFile="true" />
  <include file="changelog-3.5.xml" relativeToChangelogFile="true" />
  <include file="changelog-3.6.xml" relativeToChangelogFile="true" />
  <include file="changelog-3.7.xml" relativeToChangelogFile="true" />
  <include file="changelog-3.8.xml" relativeToChangelogFile="true" />
  <include file="changelog-3.9.xml" relativeToChangelogFile="true" />
  <include file="changelog-3.10.xml" relativeToChangelogFile="true" />
  <include file="changelog-3.11.xml" relativeToChangelogFile="true" />
  <include file="changelog-3.12.xml" relativeToChangelogFile="true" />
  <include file="changelog-3.14.xml" relativeToChangelogFile="true" />
</databaseChangeLog>

Version is updated just before the release.


Add scratch_dir to point to temporary location where files can be created/deleted/etc.

Use it in tests and when downloading files temporarily in fetcher (unzip, etc.)

Added to config.json.example, used in new database tests and switched unzip to use it in 6817127.


style fixed

Style needs to be consistent with other pages like Diagnostics ,session  and other page.
Hence submitting this PR.

Were not consistent on this and I don't think we want to start making PRs to get this consistent - but packages should probably be italic, not code.


CB-21996 ASG creation waiter is not prepared for empty list in response

So add an extra condition.

2.72 maybe ?


License on Modrinth page is incorrect

The license for this project is MIT, but your Modrinth page says CUSTOM. Could this be changed to accurately reflect the license as MIT? :)

Should be updated now, thanks for reporting this!


Remove padding in DialogContent

Preview at https://14c812da.saltdesignsystem-storybook.pages.dev/?path=/story/core-dialog--long-content

I don't think this is the correct way to solve it. DialogContent should have padding

Before:

After:

Without scrolling looks fine, but once there's a scrollbar it looks a little tight? Might not be an issue though

Without scrolling looks fine, but once there's a scrollbar it looks a little tight? Might not be an issue though

We probably need to live with this, unless there's a way to add padding when scroll bar appears

Without scrolling looks fine, but once there's a scrollbar it looks a little tight? Might not be an issue though

We probably need to live with this, unless there's a way to add padding only when scroll bar appears

I don't think there's a nice way of adding padding for the scroll bar, there are some hacks like adding a transparent thicker border to it but it's not really ideal

@navkaur76 does any of padding removal impact pref dialog pattern?


Expire site screenshots

Screenshots should be updated every 30 days or so. Figure out how to save capture date with file. As part of filename doesn't work well cause HTML needs the actual file path so variable image names add complications.

Actually no need to store screenshot capture dates. Just generate screenshots for new sites on builds (already implemented) and regenerate all screenshots quarterly or so. Latter requires GitHub action.


Duplicate episode when episode is downloaded

When an episode is downloaded, when checking for new episodes it's being duplicated in Podcast Details list.

Cannot reproduce. Something funky happened on the phone. Probably different bug..


Discrepency compared to https://jsonlogic.com/play.html

Nuget Package
JsonLogic
Package Version
5.3.0
Operating System
Mac
.Net Target (if relevant, please specify the version in the description)
.Net (5 or after)
A clear and concise description of the bug.
Rule: { "!": [{ "var": "a" }, false] }
Data: {}
Result from https://jsonlogic.com/play.html: true
Result from https://json-everything.net/json-logic/: false
Also false via local unit test.
What did you expect?
Results to be the same.
Please add test code or steps to reproduce the behavior.
Put rule and data at the 2 web sites and evaluate.
Is there any other information you'd like to share regarding this bug?
I am relatively new to JsonLogic, and evaluation of ! can be tricky I know, but regardless would expect the same results.
Code of Conduct & Contributor Guidelines

[X] I agree to follow this project's Code of Conduct and Contribution Guidelines.

I think I see what's happening. They're interpreting the non-empty array as truthy.
 It wreaks havoc on .net.  I regret implementing this lib 😆.

Hm... it seems their playground (and thus their implementation) doesn't match up with what their spec says.
This actually generates an error (in my code):

The ! rule needs an array with a single parameter.

Here's there docs:

Logical negation (“not”). Takes just one argument.
Note: unary operators can also take a single, non array argument

They should be returning an error.  I'll have a look at the website to determine why it's returning false instead of printing an error, but I do get the error when I replicate this as a test.

Okay, looks like my site is using the newer model-less approach.  So that's technically a bug in that.

Oh, the JS implementation is reading an array with multiple values and then interpreting that as the value.  I think I grasped that in my first comment, then forgot it.
Why would it treat an array with a single value specially by extracting the value from it and then applying truthiness?!  I still regret implementing this lib.

But then, truthiness for an array means that it's non-empty, and the result of [{ "var": "a" }, false] with an empty object as data is [null, false], which is non-empty, so it's truthy.  Negate that, and you get false.
I still think the JS implementation is wrong here.

Hey folks,
This is also affiliated with some quirkiness in the JSON Logic spec, discussed a bit here,
https://github.com/jwadhams/json-logic/issues/44#issuecomment-2082929035
In json-logic-js and json-logic-php,
{ "!": 1 }

is supposed to be the same as
{ "!": [1] }

This can create an ambiguity when you use a var as an argument directly on the negation, if the var is an array.
{ "!": { var: "" } }

If { var: "" } is [1], should it interpret it as { "!": [[1]] } or as { "!": [1] }?
This is a part of the spec that's a bit ambiguous. I'm just bringing this up early because it influences the next section.

THE IMPORTANT PART
Discussing this issue specifically, @gregsdennis I think the C# implementation might be bugged here,
To make it more clear, let me shift syntax a little.
JSON Logic is very LISP like, converting the syntax, { "add": [1, 2] } translates to add(1, 2) or (add 1 2)
{ "not": [1] } should be not(1) or (not 1)
If you have multiple arguments for not, it should ignore them, not(1, 2), ONLY pays attention to the first argument.
The mental model prescribed by JSON Logic is that the array is the set of arguments for the function; not an isolated argument.

Also, I had a similar issue myself in my implementation of JSON Logic.

Also -- apologies if this comes off as topic hijacking, I can create a new issue or potentially send an email / some other form of contact,
@gregsdennis Would you be interested in some additional dev support for this module / collaborating to help address some of these ambiguities?
I'm hoping to get a dialog going between different project maintainers of JSON Logic packages to help consolidate behavior and address some of the common issues users face, and get a compatibility table going of common extensions / behavior differences.

In json-logic-js and json-logic-php,
{ "!": 1 }

is supposed to be the same as
{ "!": [1] }

In that specific example, yes, they are the same.  All of the operative rules work here:

1 is truthy because it's a non-zero number
[1] is truthy because it's a non-empty array
[1] decomposes to 1

It's that last rule that is really troublesome.  With just a minor tweak, I can show you how this is inconsistent: { "!": 0 } vs { "!": [0] }.  Using the same rules, this breaks.

0 is falsy because it's zero
[0] is truthy because it's a non-empty array
[0] decomposes to 0

So you'd expect { "!": 0 } to be equivalent to { "!": [0] }, but based on the rules, it's contradictory.  There is no solution.
The genesis of this problem is array decomposition.

I liked the idea of JSON Logic when I first saw it, but in implementing it, I've come to lament it.  I discovered JSON-e about a year ago, and it's a much better syntax.  It can do mostly everything JSON Logic can do, and more.
The Logic submitted in the original post { "!": [{ "var": "a" }, false] } can be written in JSON-e as { $eval: [a, false] }.  (a implicitly looks up the a property in the data.)  However, because a doesn't exist in the submitted data {}, an error is returned instead of just forging on to produce some value.  Using the data {"a":1}, you get a return of false because of the same truthiness (non-empty array is truthy, and then that's inverted by !).

I'm hoping to get a dialog going between different project maintainers of JSON Logic packages to help consolidate behavior and address some of the common issues users face, and get a compatibility table going of common extensions / behavior differences.

I wish you luck.  When I implemented this library (years ago), I had reached out to the creator of JSON Logic to ask some clarifying questions, hoping to get the docs updated.  It took a really long time for him to just recognize this library and put it on the website.  In the end, he says the project is "stable" and he's not working on it anymore.

The genesis of this problem is array decomposition.

That's correct, and what I was trying to explain, and that's why I pointed out the var section that creates an ambiguity.
{"!": 1} is shorthand that is supposed to become {"!": [1]} when interpreted, and the operator is supposed to invert the first argument. It's not supposed to run ![1] unless you do {"!": [[1]] }

I wish you luck. When I implemented this library (years ago), I had reached out to the creator of JSON Logic to ask some clarifying questions, hoping to get the https://github.com/jwadhams/json-logic/pull/38. It took a really long time for him to just recognize this library and https://github.com/jwadhams/json-logic/pull/28. In the end, he says the project is "stable" and he's not working on it anymore.

Heh -- I've been trying to reach out to him both privately and publicly for a few years myself. At this point I'm trying to go directly to other contributors and see if there's any interest in building a community & spec.
I've been trying to involve him, but it hasn't worked out.

I discovered JSON-e about a year ago, and it's a much better syntax. I discovered JSON-e about a year ago, and it's a much better syntax

I've personally developed an appreciation for JSON Logic and the LISP-like structure. I don't like the embedded grammar in JSON-E; though I tend to develop grammars around JSON Logic itself to make it easier to work with.


Causal model?

Hello! First of all, I would like to thank you for your work.
I'm interested in running this model in real-time from a webcam / live video stream.
However, I believe this model uses both future and past frames.
Would I have to retrain the model from scratch with access to only past frames to predict the current pose, or is a pretrained causal model already available? And how would it be used / trained? Would it be by setting the causal shift to the pad value?
Thanks!

Hi, thank you for the interest!
As this framework is combined with pose estimation and imitation.
If you are interested in pose estimation in casual, I think the VideoPose3D casual setting or mmpose is what you are looking for.
If you are interested in pose imitation in casual, I think EmbodiedPose maybe match.
Thanks~

Thank you!


Add error debug in provisioning plugin

Signed-off-by: Denica Madzhirova<EMAIL_ADDRESS>

Coverage increased (+0.007%) to 92.078% when pulling acabaf3d0dd84e3933ba079717f41e398e136554 on SAP:fix_debug into 5ab67894bed60304fb023ec3531c8ffc8f14cadb on cloudfoundry-incubator:master.


Able to Download Excel File

Make sure user is able to download the excel file generated by program (#7 + #11 ).
Time estimate: 1D

Done.


Add FasterPath.add_trailing_separator

Implement Pathname.add_trailing_separator in Rust
Hook Rust function into FasterPath as
FasterPath.add_trailing_separator
Add FasterPath.add_trailing_separator monkeypatch and
refinement
Add tests and benchmarks for FasterPath.add_trailing_separator
against Pathname.add_trailing_separator

https://github.com/danielpclark/faster_path/issues/43

Looks good.  Can you add a few tests that compare the two methods against each other? assert_eq FasterPath.add_trailing_sparator(str), Pathname.allocate.send(:add_trailing_separator, str) and in the stats section of the readme since Pathname's method is an instance method it would be represented with a pound symbol Pathname#add_trailing_separator .  That's my fault for labelling it wrong in this open issue.

All done @danielpclark


added failing test case + fix

Fixes https://github.com/rectorphp/rector-phpunit/issues/17

Thank you, you can fix cs by run:
composer check-cs -- --fix

I updated PR title with and desc to ref the issue and as it fix the issue.

Thank you :+1:

@TomasVotruba rector/rector-phpunit seems need new release for it?

@samsonasik  You're right :+1: Done - https://github.com/rectorphp/rector-phpunit/releases/tag/0.11.6


How to overwrite tasks?

I tried to overwrite a task by adding something like this to my local gulpfile.js:
// OVERWRITE: custom index task
var extend = require('extend'),
  gulpInject = require('gulp-inject'),
  minifyInline = require('gulp-minify-inline'),
  minifyHtml = require('gulp-minify-html'),
  preprocess = require('gulp-preprocess'),
  _ = require('underscore');

function customtIndex(gulp, config) {
  function injectIndex() {
   ...
  }

  gulp.task('index', tasks, injectIndex);
}

customtIndex(gulp, config);

Multiple problems result of doing so:

Dependencies which are only specified in gulp-modular will be installed in node_modules/gulp-modular/node_modules and therefore can't be imported with require().
I can pass the local config file, but it was not yet merged with the default config, so some keys are missing.

How to do it better?

Where exactly are the import of gulp-modular and the initial call of gulp-modular located?

They have been further up the file, my overwrite was located at the very end of the gulpfile.js.


don't expect results of malicious parties in tests

When a crime is detected, parties can immediately stop the execution of the protocol. Although this is expected behaviour from tofn's side, our test framework in tofnd expect all threads to return. This causes some issues. The problem manifests when criminals are exposed, honest parties stop, but criminals still wait for messages. The result is that some tests are running for ever.
A temporary hacky solution is to make criminals have multiple shares. That way each one of the criminal shares can notify the other that the protocol is over. A proper solution is to decouple the data that are related to the protocol and the ones that are related to the communication inside Party struct.
https://github.com/axelarnetwork/tofnd/blob/41794513bba95e41f90ea03ca1df1dfb206198a3/src/tests/tofnd_party.rs#L16-L24
When this is done, we will not need to wait threads to return in order to reclaim their resources (as done below).
https://github.com/axelarnetwork/tofnd/blob/41794513bba95e41f90ea03ca1df1dfb206198a3/src/tests/mod.rs#L467-L474

n/a


:sparkle: Add base_url setting in Session/AsyncSession

close https://github.com/jawah/niquests/issues/179
answer a long demanded feature, straightforward to implement and test.

Yo this is fire. Thanks !


Mouse wheel click in the file selector

Does this issue occur when all extensions are disabled?: Yes, exept russian language pack, for some reason it can't be disabled

VS Code Version: 1.65.2
OS Version: 21H2 Windows_NT x64 10.0.22000

Mouse wheel click on any file in the VS Code file explorer changes windows cursor shape.

Interesting. I don't have a mouse so cannot really test this.

I can try to reproduce this once I get home in about an hour. May I work on this?

Couldn't reproduce on Windows 11
Version: 1.65.2 (user setup)
Commit: c722ca6c7eed3d7987c0d5c3df5c45f6b15e77d1
Date: 2022-03-10T14:33:55.248Z
Electron: 13.5.2
Chromium: 91.0.4472.164
Node.js: 14.16.0
V8: 9.1.269.39-electron.0
OS: Windows_NT x64 10.0.22000


CORE-2363 Improve robustness of MSSQL database case-insensitivity check

CORE-2363 Improve robustness of MSSQL database case-insensitivity check
Accounts for OfflineConnection and exceptional database names

Thanks!


Engine cannot be built on macOS

When attempting to build the Fusee.Engine project from the master branch, Fusee.Serialization will stop as soon as the PrecompileTool gets executed.
OS: macOS 10.13.4
Mono: <IP_ADDRESS>
IDE: Rider 2018.1 181.4952.142

Thanks for the report. Unfortunately, currently only a few individuals contribute to the project, so the MAC build is poorly supported. I never gave Rider a try so far - didn't expect it to get this far anyway.


Make SynthSkillsFlow honor the num_iters parameter

The base Flow class takes a num_iters parameter. This is used by
the ilab CLI to adjust how much data is generated by a given run.
The old value for this parameter in the CLI was 100, so while testing
this in the short term, it should be specified explicitly like this:
ilab data generate --num-instructions 30

When we release a version of this library that includes this effective
rewrite, the default value will be 30 and the option and its
description will better reflect the new behavior.
ilab data generate --sdg-scale-factor 30

More detail about how this is exposed via the CLI can be found in this
PR:
https://github.com/instructlab/instructlab/pull/1570
Honoring this parameter for the full pipeline will be used immediately
in CI integration, where we're testing that the code can run
successfully, but want to do so as quickly as is reasonable.
Currently, E2E always runs with this setting set to 1 for speed
purposes.
Signed-off-by: Russell Bryant<EMAIL_ADDRESS>

lgtm :+1:

This is a trivial fix and it's causing CI problems, so I'm going to merge it with @markmc 's review


Following the #5507

Hi, i'm working on an Android app generator and i'm asking if you have found a way to automate the creation of an app on google store?
I'm using Supply but i need to create my apps on the store before running it...
Does someone have any ideas?
Thanks.

Hey @benjabrons09, unfortunately that's not possible due to the API limitation of Google Play.

Alright, thanks @KrauseFx

I'll close this issue for now, as there is not much we can do currently.


Added mention of HTML5 fields in the docs

Per request of #275, adding the HTML5 fields to the Fields documentation

Looks like you used a different email than the one associated with your GitHub account. If you want to change that, you can use git commit --author "Name <email>" --amend then git push -f.

Thanks for that!

Thanks for the suggestions. I'll clean these up tomorrow and push them up

Cool. I'm still learning how Sphinx works. Thanks for the heads up!

I'm having some issues with building. Sphinx doesn't seem to like the fact that these classes are in the html5 module. I would really like to continue using autoclass without messing up the module scope for the rest of the document. Thoughts?

@davidism, what are the changes that still need to be done to get this sorted? This seems like something that really should be in the docs so I'm happy to make the changes myself.

Does it build? Looks fine otherwise.

It didn't build, it needed a few changes so I made those and merged it in a separate PR #409 but it should also realise this has been merged too.


Energy Sparks admin can add a new activity type

An Energy Sparks admin should be able to add a new activity type to the system.
An activity type will initially just have:

A short name (used to populate select boxes on forms, etc)
A description

In future they may have other attributes (e.g. score) but this is a starting point.

see https://github.com/BathHacked/energy-sparks/pull/33


Fixed rotation of gradients while rotating a VMobject

Changelog / Overview

Fixed the direction of gradient which remained the same while rotating VMobjects
Added rotate_sheen_direction() method in VMobject

Explanation for Changes

When VMobject is rotated, the direction of sheen is set correctly using a new method rotate_sheen_direction(). To call this I also added rotate() method in VMobject class
Before
(Notice how you can replay it in a perfect loop which should not be the case)
https://user-images.githubusercontent.com/43041139/118327694-64873f00-b523-11eb-8d7f-f65af2f5a02a.mp4
After
https://user-images.githubusercontent.com/43041139/118351255-84951d80-b578-11eb-80ce-4eea54e652f3.mp4
Code
class Test(Scene):
    def construct(self):
        c = VGroup(
            Circle(radius=1.5, fill_opacity=1).set_color(color=[WHITE, BLACK]),
            Circle(radius=1.5, fill_opacity=1).set_color(color=[WHITE, BLACK]),
            Square(fill_opacity=1).set_color(color=[GREEN, DARKER_GRAY]),
        ).arrange(buff=LARGE_BUFF)

        self.add(c)
        self.play(
            Rotating(c[0], OUT, PI),
            Rotating(c[1], UP, PI),
            Rotating(c[2], OUT, PI),
            run_time=2,
        )

Testing Status

Pass (Linux/Manjaro)
Checklist

[x] I have read the Contributing Guidelines
[x] I have written a descriptive PR title (see top of PR template for examples)
[x] I have written a changelog entry for the PR or deem it unnecessary
[ ] My new functions/classes either have a docstring or are private
[x] My new functions/classes have tests added and (optional) examples in the docs
[x] My new documentation builds, looks correctly formatted, and adds no additional build warnings

Reviewer Checklist

[ ] The PR title is descriptive enough
[ ] The PR is labeled correctly
[ ] The changelog entry is completed if necessary
[ ] Newly added functions/classes either have a docstring or are private
[ ] Newly added functions/classes have tests added and (optional) examples in the docs
[ ] Newly added documentation builds, looks correctly formatted, and adds no additional build warnings

Docs reference: https://manimce--1513.org.readthedocs.build/en/1513/reference/manim.mobject.types.vectorized_mobject.VMobject.html

@AntonBallmaier please make sure when merging PRs that they are labeled appropriately and that the PR title is sufficient for the changelog.
(The title is okay here, the labelling isn't. :-))

@AntonBallmaier please make sure when merging PRs that they are labeled appropriately and that the PR title is sufficient for the changelog.
(The title is okay here, the labelling isn't. :-))

Ok, I'll keep that in mind :)


Output properties refactor

Closes #
https://github.com/boomerang-io/flow.service.workflow/issues/127
https://github.com/boomerang-io/roadmap/issues/362
https://github.com/boomerang-io/roadmap/issues/342
Changelog
New

N/A

Changed

Moving initial recording of output properties from ActivityEntity to TaskExecutionEntity

Removed

N/A

Testing / Reviewing
Tested and verified

Hey @amhudson looks great and thanks for the explanation on Slack of

TaskServiceImpl.saveWorkflowProperty() has the updates to record to the task.
TaskServiceImpl.finishWorkflow() records the task output properties to the workkflow activity

Made one query above inline.


Cannot compile with openjdk17 and gcc[89] with Intel opencl.

Describe the bug
Trying to compile on Centos 7 with opencl support on devtoolset-8 and devtoolset-9 :
How To Reproduce
 make jdk-11-plus BACKEND=opencl

...
INFO] --- maven-jar-plugin:3.1.2:jar (default-jar) @ tornado-benchmarks ---
-- Looking for CL_VERSION_2_2 - found
-- Found OpenCL: /usr/lib64/libOpenCL.so (found version "2.2")
[INFO] Building jar: /d00/local/tornado/tornadovm/benchmarks/target/tornado-benchmarks-0.11-dev-c61f388.jar
-- Found JNI: /d00/gaia/jdk17/lib/libjawt.so
-- Configuring done
-- Generating done
-- Build files have been written to: /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake
[INFO]
[INFO] --- cmake-maven-plugin:3.7.0-b2:compile (cmake-compile) @ tornado-drivers-opencl-jni ---
[INFO] Configured to use native CMake
gmake[1]: Entering directory '/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake'
/d00/local/tornado/cmake-3.10.1/bin/cmake -H/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources -B/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake --check-build-system CMakeFiles/Makefile.cmake 0
/d00/local/tornado/cmake-3.10.1/bin/cmake -E cmake_progress_start /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake/CMakeFiles /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake/CMakeFiles/progress.marks
/opt/rh/devtoolset-9/root/usr/bin/gmake -f CMakeFiles/Makefile2 all
gmake[2]: Entering directory '/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake'
/opt/rh/devtoolset-9/root/usr/bin/gmake -f CMakeFiles/tornado-opencl.dir/build.make CMakeFiles/tornado-opencl.dir/depend
gmake[3]: Entering directory '/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake'
cd /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake && /d00/local/tornado/cmake-3.10.1/bin/cmake -E cmake_depends "Unix Makefiles" /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake/CMakeFiles/tornado-opencl.dir/DependInfo.cmake --color=
Scanning dependencies of target tornado-opencl
gmake[3]: Leaving directory '/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake'
/opt/rh/devtoolset-9/root/usr/bin/gmake -f CMakeFiles/tornado-opencl.dir/build.make CMakeFiles/tornado-opencl.dir/build
gmake[3]: Entering directory '/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/cmake'
[  9%] Building CXX object CMakeFiles/tornado-opencl.dir/source/OCLCommandQueue.cpp.o
/opt/rh/devtoolset-9/root/usr/bin/c++  -Dtornado_opencl_EXPORTS -I/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source -I/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/headers/opencl/3.0/include -I/d00/gaia/jdk17/include -I/d00/gaia/jdk17/include/linux  -O3 -fpermissive -export-dynamic -fPIC  -O3 -DNDEBUG -fPIC   -o CMakeFiles/tornado-opencl.dir/source/OCLCommandQueue.cpp.o -c /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLCommandQueue.cpp
/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLCommandQueue.cpp: In function ‘void Java_uk_ac_manchester_tornado_drivers_opencl_OCLCommandQueue_clEnqueueWaitForEvents(JNIEnv*, jclass, jlong, jlongArray)’:
/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLCommandQueue.cpp:145:97: warning: ‘cl_int clEnqueueWaitForEvents(cl_command_queue, cl_uint, _cl_event* const*)’ is deprecated [-Wdeprecated-declarations]
  145 |     cl_int status = clEnqueueWaitForEvents((cl_command_queue) queue_id, len, (cl_event *) events);
      |                                                                                ^
In file included from /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLCommandQueue.cpp:30:
/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/headers/opencl/3.0/include/CL/cl.h:1891:1: note: declared here
 1891 | clEnqueueWaitForEvents(cl_command_queue  command_queue,
      | ^~~~~~~~~~~~~~~~~~~~~~
/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLCommandQueue.cpp:145:97: warning: ‘cl_int clEnqueueWaitForEvents(cl_command_queue, cl_uint, _cl_event* const*)’ is deprecated [-Wdeprecated-declarations]
  145 |     cl_int status = clEnqueueWaitForEvents((cl_command_queue) queue_id, len, (cl_event *) events);
      |                                                                                ^
In file included from /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLCommandQueue.cpp:30:
/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/headers/opencl/3.0/include/CL/cl.h:1891:1: note: declared here
 1891 | clEnqueueWaitForEvents(cl_command_queue  command_queue,
      | ^~~~~~~~~~~~~~~~~~~~~~
[ 18%] Building CXX object CMakeFiles/tornado-opencl.dir/source/OCLContext.cpp.o
/opt/rh/devtoolset-9/root/usr/bin/c++  -Dtornado_opencl_EXPORTS -I/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source -I/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/headers/opencl/3.0/include -I/d00/gaia/jdk17/include -I/d00/gaia/jdk17/include/linux  -O3 -fpermissive -export-dynamic -fPIC  -O3 -DNDEBUG -fPIC   -o CMakeFiles/tornado-opencl.dir/source/OCLContext.cpp.o -c /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLContext.cpp
/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLContext.cpp:95:7: warning: extra tokens at end of #endif directive [-Wendif-labels]
   95 | #endif()
      |       ^
[ 27%] Building CXX object CMakeFiles/tornado-opencl.dir/source/OCLDevice.cpp.o
/opt/rh/devtoolset-9/root/usr/bin/c++  -Dtornado_opencl_EXPORTS -I/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source -I/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/headers/opencl/3.0/include -I/d00/gaia/jdk17/include -I/d00/gaia/jdk17/include/linux  -O3 -fpermissive -export-dynamic -fPIC  -O3 -DNDEBUG -fPIC   -o CMakeFiles/tornado-opencl.dir/source/OCLDevice.cpp.o -c /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLDevice.cpp
[ 36%] Building CXX object CMakeFiles/tornado-opencl.dir/source/OCLEvent.cpp.o
/opt/rh/devtoolset-9/root/usr/bin/c++  -Dtornado_opencl_EXPORTS -I/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source -I/d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/headers/opencl/3.0/include -I/d00/gaia/jdk17/include -I/d00/gaia/jdk17/include/linux  -O3 -fpermissive -export-dynamic -fPIC  -O3 -DNDEBUG -fPIC   -o CMakeFiles/tornado-opencl.dir/source/OCLEvent.cpp.o -c /d00/local/tornado/tornadovm/drivers/opencl-jni/target/linux-amd64-release/sources/source/OCLEvent.cpp
[INFO] -------------------------------------------------------------
[WARNING] COMPILATION WARNING :
[INFO] -------------------------------------------------------------
[WARNING] [options] system modules path not set in conjunction with -source 11
[WARNING] [options] --add-opens has no effect at compile time
[WARNING] using incubating module(s): jdk.incubator.foreign,jdk.incubator.vector
[WARNING] [options] module name in --add-exports option not found: tornado.annotation
[WARNING] [options] module name in --add-exports option not found: tornado.drivers.ptx
[WARNING] using incubating module(s): jdk.incubator.foreign,jdk.incubator.vector
[WARNING] using incubating module(s): jdk.incubator.foreign,jdk.incubator.vector
[WARNING] /d00/local/tornado/tornadovm/drivers/opencl/src/main/java/uk/ac/manchester/tornado/drivers/opencl/graal/phases/TornadoTaskSpecialisation.java:[95,18] [deprecation] isAccessible() in AccessibleObject has been deprecated
[INFO] 8 warnings
[INFO] -------------------------------------------------------------
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] /d00/local/tornado/tornadovm/drivers/opencl/src/main/java/uk/ac/manchester/tornado/drivers/opencl/graal/OCLArchitecture.java:[45,7] error: OCLArchitecture is not abstract and does not override abstract method getFeatures() in Architecture
[INFO] 1 error
[INFO] -------------------------------------------------------------

...

INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for tornado 0.11-dev:
[INFO]
[INFO] tornado ............................................ SUCCESS [  1.021 s]
[INFO] tornado-api ........................................ SUCCESS [  3.393 s]
[INFO] tornado-runtime .................................... SUCCESS [  2.587 s]
[INFO] tornado-matrices ................................... SUCCESS [  0.985 s]
[INFO] tornado-drivers .................................... SUCCESS [  0.685 s]
[INFO] tornado-drivers-common ............................. SUCCESS [  0.851 s]
[INFO] tornado-drivers-opencl ............................. FAILURE [  2.008 s]
[INFO] tornado-drivers-opencl-jni ......................... SUCCESS [  5.210 s]
[INFO] tornado-examples ................................... SUCCESS [  2.870 s]
[INFO] tornado-benchmarks ................................. SUCCESS [  7.747 s]
[INFO] tornado-unittests .................................. SUCCESS [  3.850 s]
[INFO] tornado-annotation ................................. SUCCESS [  0.819 s]
[INFO] tornado-assembly ................................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  13.291 s (Wall Clock)
[INFO] Finished at: 2021-09-17T18:22:18+02:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project tornado-drivers-opencl: Compilation failure
[ERROR] /d00/local/tornado/tornadovm/drivers/opencl/src/main/java/uk/ac/manchester/tornado/drivers/opencl/graal/OCLArchitecture.java:[45,7] error: OCLArchitecture is not abstract and does not override abstract method getFeatures() in Architecture
[ERROR]

Expected behavior
Successful compilation.
Computing system setup (please complete the following information):

OS: centos7
OpenCL Version : 2.2 reported by the build process
TornadoVM commit id c61f388544396609de3b11350e307a048e610a65

Additional context

Hi @yazun . OpenJDK 17 is not supported yet. Quite likely, the error you are getting is because the Graal version shipped in OpenJDK 17 has minor changes that we need to address and support.
Currently,  we can run OpenJDK 8, 11 and 16 and Graal 21.2.0.
These are the backends and the configurations supported:
https://github.com/beehive-lab/TornadoVM/blob/master/assembly/src/docs/1_INSTALL.md#1-installation

Hello @jjfumero,
Was not Graal dropped from OpenJDK JDK-8268272 ?
Would it mean it would not be possible to use TornadoVM with it? Or you mean TornadoVM would have to upgrade Graal to v17?
Thanks for clarification.

Yes, you are right.
What I meant to say is that TornadoVM needs to sync with JVMCI. We do this in order to use a specific GraalVM version as well as using the shipped JVMCI for each JDK. In fact, one of the errors I see from your logs is a change in JVMCI.
It is in our plans to upgrade to JDK17, meanwhile, if possible, you can give it a try with older versions, such as OpenJDK 16, or 11.
Hope this helps.

We just finished a greater effort to move to JDK17 so we would be happy to try TornadoVM once the updated to latest JVMCI.
(just for the info, we consider TornadoVM for astronomy, Variability Studies in ESA Gaia project )

Thank you for your interest. I will leave this thread open. Once we support JDK17 we will post it here.

Thank you, appreciated!

Hi @yazun ,
TornadoVM now supports JDK 17 and GraalVM 21.3.0. It is upstream in the develop branch:
$ tornado -version
WARNING: Using incubator modules: jdk.incubator.foreign, jdk.incubator.vector
openjdk version "17.0.1" 2021-10-19
OpenJDK Runtime Environment (build 17.0.1+12-39)
OpenJDK 64-Bit Server VM (build 17.0.1+12-39, mixed mode)

$ tornado --version
version=0.13-dev
branch=develop
commit=d61859b

Please, let us know if this works for you, and feel free to open new issues if you encounter new problems or want to add your feedback.
Juan

That's excellent news!
We will try in coming weeks - we will assess gains on our cluster with Intel GPUs then CUDA.
Thanks a lot!

A minor annoyance:
We had a trouble to compile the branch without cloning repo fresh though, looked like make clean did not do its job fully. Cloning fresh helped and it compiled successfully in the end.
Log of the failing compoile without fresh clone, after the make clean:
`
[root@ecogcn134 tornadovm]# git checkout develop
Already on 'develop'
[root@ecogcn134 tornadovm]# git pull
Already up-to-date.
[root@ecogcn134 tornadovm]# cat etc/sources.env
#!/bin/bash
export JAVA_HOME=/d00/gaia/jdk-17  ## This path is produced in Step 1
export PATH=$PWD/bin:$PATH    ## This directory will be automatically generated during Tornado compilation
export TORNADO_SDK=$PWD/bin/sdk   ## This directory will be automatically generated during Tornado compilation
export CMAKE_ROOT=/d00/local/tornado/cmake-3.10.1           ## or <path/to/cmake/cmake-3.10.2> (see step 4)
[root@ecogcn134 tornadovm]# make jdk-11-plus BACKEND=opencl
./bin/compile.sh jdk-11-plus opencl
JAVA_HOME    : /d00/gaia/jdk-17
JVM_VERSION  : 17
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-runtime:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-matrices:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-common:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-opencl:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-opencl-jni:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-spirv:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-spirv-levelzero-jni:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-ptx:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-ptx-jni:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers:pom:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-examples:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-benchmarks:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-unittests:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-assembly:pom:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-api:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-annotation:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado:pom:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
 SUCCESS [  0.095 s]
[INFO] tornado-api ........................................ SUCCESS [  0.004 s]
[INFO] tornado-runtime .................................... SUCCESS [  0.003 s]
[INFO] tornado-matrices ................................... SUCCESS [  0.003 s]
[INFO] tornado-drivers .................................... SUCCESS [  0.003 s]
[INFO] tornado-drivers-common ............................. SUCCESS [  0.002 s]
[INFO] tornado-drivers-opencl ............................. SUCCESS [  0.002 s]
[INFO] tornado-drivers-opencl-jni ......................... SUCCESS [  0.003 s]
[INFO] tornado-drivers-spirv .............................. SUCCESS [  0.002 s]
[INFO] tornado-drivers-spirv-levelzero-jni ................ SUCCESS [  0.003 s]
[INFO] tornado-drivers-ptx ................................ SUCCESS [  0.002 s]
[INFO] tornado-drivers-ptx-jni ............................ SUCCESS [  0.002 s]
[INFO] tornado-examples ................................... SUCCESS [  0.003 s]
[INFO] tornado-benchmarks ................................. SUCCESS [  0.002 s]
[INFO] tornado-unittests .................................. SUCCESS [  0.003 s]
[INFO] tornado-annotation ................................. SUCCESS [  0.002 s]
[INFO] tornado-assembly ................................... SUCCESS [  0.111 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  0.441 s
[INFO] Finished at: 2021-11-25T11:38:45+01:00
[INFO] ------------------------------------------------------------------------
mvn -T1.5C -Dcmake.root.dir=/d00/local/tornado/cmake-3.10.1 -Pjdk-11-plus,opencl-backend  install
[INFO] Scanning for projects...
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-runtime:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-matrices:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-common:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-opencl:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers-opencl-jni:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-drivers:pom:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-examples:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-benchmarks:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-unittests:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-assembly:pom:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-api:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado-annotation:jar:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] Some problems were encountered while building the effective model for tornado:tornado:pom:0.13-dev
[WARNING] The expression ${version} is deprecated. Please use ${project.version} instead.
[WARNING]
[WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
[WARNING]
[WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
[WARNING]
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] tornado                                                            [pom]
[INFO] tornado-api                                                        [jar]
[INFO] tornado-runtime                                                    [jar]
[INFO] tornado-matrices                                                   [jar]
[INFO] tornado-drivers                                                    [pom]
[INFO] tornado-drivers-common                                             [jar]
[INFO] tornado-drivers-opencl                                             [jar]
[INFO] tornado-drivers-opencl-jni                                         [jar]
[INFO] tornado-examples                                                   [jar]
[INFO] tornado-benchmarks                                                 [jar]
[INFO] tornado-unittests                                                  [jar]
[INFO] tornado-annotation                                                 [jar]
[INFO] tornado-assembly                                                   [pom]
[INFO]
[INFO] Using the MultiThreadedBuilder implementation with a thread count of 12
[INFO]
[INFO] --------------------------< tornado:tornado >---------------------------
[INFO] Building tornado 0.13-dev                                         [1/13]
[INFO] --------------------------------[ pom ]---------------------------------
[INFO]
[INFO] --- buildnumber-maven-plugin:1.4:create (default) @ tornado ---
[INFO] ShortRevision tag detected. The value is '7'.
[INFO] Executing: /bin/sh -c cd '/d00/local/tornado/tornadovm' && 'git' 'rev-parse' '--verify' '--short=7' 'HEAD'
[INFO] Working directory: /d00/local/tornado/tornadovm
[INFO] Storing buildNumber: d61859b at timestamp:<PHONE_NUMBER>001
[INFO] Storing buildScmBranch: develop
[INFO]
[INFO] --- maven-shade-plugin:3.2.1:shade (default) @ tornado ---
[INFO] Including org.openjdk.jmh:jmh-core:jar:1.29 in the shaded jar.
[INFO] Including net.sf.jopt-simple:jopt-simple:jar:4.6 in the shaded jar.
[INFO] Including org.apache.commons:commons-math3:jar:3.2 in the shaded jar.
[INFO] Including org.apache.logging.log4j:log4j-api:jar:2.13.2 in the shaded jar.
[INFO] Including org.apache.logging.log4j:log4j-core:jar:2.13.2 in the shaded jar.
[INFO] Replacing /d00/local/tornado/tornadovm/target/jmhbenchmarks.pom with /d00/local/tornado/tornadovm/target/tornado-0.13-dev-shaded.pom
[INFO]
[INFO] --- maven-install-plugin:2.4:install (default-install) @ tornado ---
[INFO] Installing /d00/local/tornado/tornadovm/pom.xml to /root/.m2/repository/tornado/tornado/0.13-dev/tornado-0.13-dev.pom
[INFO]
[INFO] ------------------------< tornado:tornado-api >-------------------------
[INFO] Building tornado-api 0.13-dev                                     [2/13]
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- buildnumber-maven-plugin:1.4:create (default) @ tornado-api ---
[INFO]
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ tornado-api ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] skip non existing resourceDirectory /d00/local/tornado/tornadovm/tornado-api/src/main/resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ tornado-api ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 132 source files to /d00/local/tornado/tornadovm/tornado-api/target/classes
[INFO] -------------------------------------------------------------
[WARNING] COMPILATION WARNING :
[INFO] -------------------------------------------------------------
[WARNING] [options] system modules path not set in conjunction with -source 11
[WARNING] [options] --add-opens has no effect at compile time
[INFO] 2 warnings
[INFO] -------------------------------------------------------------
[INFO] -------------------------------------------------------------
[ERROR] COMPILATION ERROR :
[INFO] -------------------------------------------------------------
[ERROR] error: duplicate module on upgrade module path
[INFO] 1 error
[INFO] -------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary for tornado 0.13-dev:
[INFO]
[INFO] tornado ............................................ SUCCESS [  1.096 s]
[INFO] tornado-api ........................................ FAILURE [  0.995 s]
[INFO] tornado-runtime .................................... SKIPPED
[INFO] tornado-matrices ................................... SKIPPED
[INFO] tornado-drivers .................................... SKIPPED
[INFO] tornado-drivers-common ............................. SKIPPED
[INFO] tornado-drivers-opencl ............................. SKIPPED
[INFO] tornado-drivers-opencl-jni ......................... SKIPPED
[INFO] tornado-examples ................................... SKIPPED
[INFO] tornado-benchmarks ................................. SKIPPED
[INFO] tornado-unittests .................................. SKIPPED
[INFO] tornado-annotation ................................. SKIPPED
[INFO] tornado-assembly ................................... SKIPPED
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  2.281 s (Wall Clock)
[INFO] Finished at: 2021-11-25T11:38:48+01:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project tornado-api: Compilation failure
[ERROR] error: duplicate module on upgrade module path
[ERROR]
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR]   mvn  -rf :tornado-api
Compilation failed
`
The version with mvn -X can be found here: https://pastebin.com/1kyh2jLf

After the successful compilation we get error trying to run examples:
tornado -m tornado.examples/uk.ac.manchester.tornado.examples.compute.MatrixMultiplication2D 512
Unrecognized VM option 'UseParallelOldGC'
Did you mean '(+/-)UseParallelGC'? Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.

@jjfumero Let me know if you'd prefer a new issue to be created for this one.

root@ecogcn134 tornadovm_fresh]# JAVA_CMD=${JAVA_HOME}/bin/java
[root@ecogcn134 tornadovm_fresh]# JAVA_VERSION_OUTPUT=$("$JAVA_CMD" -version 2>&1)
[root@ecogcn134 tornadovm_fresh]# JAVA_VERSION=$(echo "$JAVA_VERSION_OUTPUT" | awk -F[\"\.] -v OFS=. 'NR==1{print $2,$3}')
[root@ecogcn134 tornadovm_fresh]# echo $JAVA_VERSION
17. 2021-09-14

Looks like openjdk added timestamp to the version.

Thanks for the report. I am trying to reproduce the error but it seems you are using an older version. Are you using the latest develop?
$ git clone https://github.com/beehive-lab/TornadoVM/
$ cd TornadoVM && git checkout develop
$ export PATH=$PWD/bin/bin:$PATH    ## This directory will be automatically generated during Tornado compilation
$ export TORNADO_SDK=$PWD/bin/sdk   ## This directory will be automatically generated during Tornado compilation
$ export CMAKE_ROOT=/usr
$ export JAVA_HOME=/home/juan/jvms/graalvm-ce-java17-21.3.0   ## USE YOUR PATH HERE
$ make

We changed the default GC to -XX:+UseParallelGC
$ tornado -m tornado.examples/uk.ac.manchester.tornado.examples.compute.MatrixMultiplication2D 512
WARNING: Using incubator modules: jdk.incubator.foreign, jdk.incubator.vector
Computing MxM of 512x512
[TornadoVM] Warning: The loop bounds will be configured by the GridScheduler. Check the grid by using the flag --threadInfo.
	Single Threaded CPU Execution: 1.04 GFlops, Total time = 257 ms
	TornadoVM Execution on GPU (Accelerated): 268.44 GFlops, Total Time = 1 ms
	Speedup: 257.0x
	Verification true

$  tornado -version
WARNING: Using incubator modules: jdk.incubator.foreign, jdk.incubator.vector
openjdk version "17.0.1" 2021-10-19
OpenJDK Runtime Environment GraalVM CE 21.3.0 (build 17.0.1+12-jvmci-21.3-b05)
OpenJDK 64-Bit Server VM GraalVM CE 21.3.0 (build 17.0.1+12-jvmci-21.3-b05, mixed mode)

Let me know if this works. Otherwise please, open a new issue with the bug report.

I can confirm that version parsing was the problem - when kludging it with removal of minor version JDK checks at lines 121 and 285:
121:JAVA_VERSION=$(echo "$JAVA_VERSION_OUTPUT" | awk -F[\"\.] -v OFS=. 'NR==1{print $2}')
285: if [ "$JAVA_VERSION" = "16.0" ] || [ "$JAVA_VERSION" = "17" ]; then

it worked!
tornado -Dtornado.enable.nativeFunctions=true -m tornado.benchmarks/uk.ac.manchester.tornado.benchmarks.BenchmarkRunner dft 8192 4096 --iterations 1
WARNING: Using incubator modules: jdk.incubator.foreign, jdk.incubator.vector
bm=dft-15-8192    , id=java-reference      , average=3.907213e+09, median=3.858058e+09, firstIteration=4.221748e+09, best=3.852115e+09
bm=dft-15-8192    , device=0:0  , average=6.537091e+08, median=6.212930e+08, firstIteration=6.964311e+08, best=5.920942e+08, speedupAvg=5.9770, speedupMedian=6.2097, speedupFirstIteration=6.0620, CV=-0.0000%, deviceName= [Intel(R) CPU Runtime for OpenCL(TM) Applications] -- Intel(R) Xeon(R) CPU E3-1585L v5 @ 3.00GHz
bm=dft-15-8192    , device=0:1  , average=1.005646e+07, median=9.893467e+06, firstIteration=1.149101e+07, best=9.294369e+06, speedupAvg=388.5274, speedupMedian=389.9602, speedupFirstIteration=367.3957, CV=-0.0000%, deviceName= [Intel(R) OpenCL HD Graphics] -- Intel(R) Iris(TM) Pro Graphics P580 [0x193a]

We have probably the first released JDK17 installed with no minor versions yet.

Great. I will close this issue then. Feel free to open new issues if you encounter new problems.

As a side note the github maven repo you provide still does not have ver 0.13 jars. Can we use 0.12 jars to use with 0.13 distribution?

Yes, that's right. Our maven repos only ship the releases. What you propose will also work because we rarely change the API. We haven't scheduled any changes for the next release regarding the API, so it will keep as it is for now.
What we do internally is to use 0.13-dev (current tag as today) in our pom files and then we update accordingly with each release.
Hope this helps


Read with Length

Hi..
are this library can read specific length like on C programming:
byte[] readBuffer = serial.read(5); //to read only 5 bytes in C
Regards,
TJ.

Hi @tjstyle
I would do it this way for reading 3 bytes for example:
byte[] buffer = new byte[3];
syncRead(buffer, 0);

Hi @felHR85
Thanks for your suggestion.
there are any example for using sync operation for read & write?
Regards,
TJ.

Hi @tjstyle
This weekend I've added a little example based on the previous one using the synchronous calls.
https://github.com/felHR85/UsbSerial/tree/master/examplesync
Hope it helps.


Serializing json instances containing already serialized string values without escaping

I found it quite difficult to correctly describe my intention in the title, which is probably wrong. A picture is worth a thousand words, how much a code sample is worth?
// a user defined string literal _json_inlined, shorthand for json::make_inlined("") static function
json j = {"foo", 1, 2, 3, false, {{"one", 1}}, "{\"two\":2}"_json_inlined};
CHECK(j.dump() == "[\"foo\",1,2,3,false,{\"one\":1},{\"two\":2}]");

This enables passing json strings from a business logic layer to network layer without having to parse it. Please note that passing json instances may not be an option because of module boundaries. Opposite of this scenario (not fully parsing part of a json string) would also be great but seems very difficult without making big changes.
I have a working implementation which was quite straightforward and around 20 lines of code. However it requires definition of a new value type, so I wasn't able to design it as an extension. So my question is, do you think would allowing such extensions (perhaps using some template meta-programming techniques) is feasible? If so, perhaps I can help with that and implement this as an extension. If not, would you consider a pull request for just this capability? Or perhaps both 🐱

This is a very specific use case, and you are right: it would require a new value type.
I wonder what other people think of this.

Thanks a lot for the quick response. I somehow 🤔 bumped into this use case in many projects, using different programming languages and libraries and have always found a way. Simplest one that comes up to my mind is wrapping a json request without parsing it. In fact, if there were no need to define a custom value type, one could even prevent creating a temporary string in such particular case using another custom type.
In the mean time, I have looked at #338 and it does not enable such feature. However it looks like a pretty straightforward change too. I am not sure if a more comprehensive approach is needed to solve both requirements. I think introducing an inlined string and/or raw stream value type together with #338 can cover many use cases.

@orcun So this is a value type that when dumped inserts the provided json string?  What happens to it when other operations are done on it?  It seems to be really easily to embed a string that isn't actually valid json, and thus the dump() function would return an invalid string.

@gregmarr If library user provides an invalid string, user will get an invalid string. If checking validity is a requirement, it is a separate issue. Even so, user can check validity by json::parse("...") beforehand and there is still a performance gain in dump (i.e. thin wrapper around a very big request). If you think that might be a common use case, perhaps json::make_inline("...") can be overloaded to check for validity. In that case, we might even think of something like  json::is_valid("...") without the overhead of creating an instance.
Nevertheless, I think validity is not the job of the library when not required. Who knows, it might even be a feature itself, can be used to produce partially invalid json for test cases.

@orcun
The serialization use-case and garbage-in/garbage-out issues are pretty clear; the question that @gremarr is raising however, is what would the partially-deserialized semantics be outside of the context of serialization - should it behave as if it was fully-deserialized (mutable/deserialize-on-demand)? If not, should the partially-deserialized state be considered invalid, except for serialization? Should the API prohibit access to inline_json except for construction via make_inline or some-such, or should inline_json be a first-class-citizen value-type, and if so, what are the implications of nlohmann::json type losing the isomorphism to JSON format.

@TurpentineDistillery Thanks for pointing that.
Without thinking that much, I assumed it should not be used except for serialization in my current implementation. Deserialization on demand is possible but having non-const read operations is not worth it in my opinion. It would only make sense if deserialization could be partially deferred in general. Again, my initial implementation limits its construction and try to limit its implications.
If majority thinks that this will be useful, I can make a pull request and we can discuss the details over the code.

I am currently not convinced to add this feature to the library. It covers a very specific use case which bears some "rough edges" when used the wrong way. So far, all value types of the library can be mapped to value types of JSON. I am worried that when breaking up this mapping, the library becomes harder to understand and also harder to test.

I don't think extending the library to this feature is helpful in the long run. It would mean too many limitations that need to be documented or worked around. Sorry @orcun.

No worries, we will be using my fork for now (I can put it online if someone somehow finds this thread). In the mean time, this inspired me to start a new project.
So long and thanks for all the 🐟


releases of dra for non-x86_64 architectures

At the moment you're only putting x86_64 assets out when you do a release of dra. Any chance you could include arm64, armv7 and armv6 releases as well? One of the great things about your tool is the ability to choose different releases from whatever repo it's querying, but that's somewhat limited when dra itself is only x86_64.

Hi!
I'll have a look at that, but rust seems to support all architectures you mentioned.

I was able to get it built for arm64 and armv7 using Docker in a GitHub workflow, if this is useful to anybody. Thanks for dra, it's a useful tool.

Nice!
I will try to make official releases in the next weeks.

Cool, of course it's doable with GitHub workflows that build it directly (vs. a Docker container). There were some gotchas dealing with arm and cargo (see the links in the comment at the top of my docker file) that were kind of pain, just FYI.

And FWIW I ran what I built on both arm64 and arm/v7 and dra was able to untag and download a release artifact just the same as it does with amd64.

Hi @mmguero, I just released 0.4.2, and you can find assets for amrv6 and arm64 :tada:

Awesome, thanks so much


Feat: Local Attraction Highlights, Food and dining Recommendations, AR experience #1893

Related Issue
Fixes: #1893
Description
This pull request introduces new features to enhance the travel website with the following sections:
Local Attraction Highlights and Itineraries: Provides curated lists of must-visit places, hidden gems, and themed day trips, along with a calendar of seasonal events. This feature is designed to give travelers a comprehensive guide to nearby attractions, enhancing their connection to the destination’s culture and history.
Food and Dining Recommendations: This feature offers an interactive guide on local cuisine, restaurant options ranging from street food to fine dining, and a food map. It also includes food tours, cooking classes, and options for dietary preferences, allowing travelers to explore the local culinary scene effortlessly.
Augmented Reality (AR) Experiences: Introduces an AR feature where travelers can use their phones to get live information by scanning surroundings. This includes history and facts about a location or dish, giving users an immersive travel experience.
These features are built using HTML, CSS, JavaScript, and include placeholders for images. Google Maps API has been suggested for the interactive food map, and AR.js is recommended for the AR experiences.
Type of PR
Feature enhancement
Screenshots / Videos (if applicable)
Before:
[Screenshot of the original site layout, without the new sections]
After:

Can you please mention what could I change again?


Support predefined shared builder in kpack

Hi,
When to create a new service, we need to create a default builder for the quick use. As the builder is very big ( about 7G), it will take more than 5 minutes to create it using builder CRD in kpack, most of the time is token for copy the builder image to container registry.
We just wonder if we can create a builder without clusterstack and clusterstore, just refer to a predefined builder, so we can just reuse the predefined builder without create a new one use stack/store in container registry, only when we want to customize the builder, we can copy the builder to the container registry.
To use the share container regitry, the definition of the builder in k8s will looks like
apiVersion: kpack.io/v1alpha2
kind: ClusterBuilder
spec:
tag: paketobuildpacks/builder
Is it supported in kpack

kpack does not support creating a builder without a clusterstack. As of 0.11.0 you can create without a clusterstore but the buildpack resources will need to be available to satisfy the order defined in the builder spec. I am a little confused by the use case though, because oif the builder is the same as an existing one, why not just use the existing one? As for the the tag, you can make it whatever you want.
Also, If two builders are being written to the same repo, you will not be writing 7gb to the registry with each builder since it will be able to just reference layers that already exist in the registry.  If not, then kpack will have to stream those layers to your registry when writing the builder which can take a bit of time.

kpack intentionally moved away from the idea of using prebuilt builders, this was actually the topic of the very first RFC (discussion for this in #439).
There's a project design/architecture problem in that kpack is designed to be declarative, but if we introduce the ability to use prebuilt builders, then we have have to make part of the system reactive. The main symptom of this problem is how we do automatic rebasing of images.
Kpack tries to do everything declaratively, this means that everything is modelled as a kubernetes resource and it is up to the user to modify these resources to reflect a change in the real world: If a new version of a buildpack is released, the user must update the ClusterStore (or the Buildpack resource in >0.11.0) manually. Similarly, if a user wants to update the stack, they must interact with the ClusterStack resource. This way, we can easily tell if an app image requires rebasing because we are able to track all of these resources and act upon it as soon as they change.

As a side note, by offloading this responsibility of "syncing" to the user, kpack gets to take shortcuts and keep it performant even on clusters with lots of workloads.

However, if we were to support prebuilt builders and still have some sort of automatic rebasing, the builder image would need to be a floating tag (myrepo/my-builder:latest) instead of an immutable digest (myrepo/my-builder@sha256:1234). And in order to determine if a rebase is needed, we would need to constantly watch the builder image and detect if the digest changes. This breaks the responsibilities of kpack as we would rather have the user to be in charge of syncing the external world to the kpack resources.
Caveats:

But what if I don't care about triggering changes on new builder images? What if I want to use an immutable digest?

Then the Build resource is perfect, you will be the one to determine when to generate a new build

But isn't there already precedent for reactive design in the git source? It has to poll periodically to determine if a new commit was made right?

Yes. And we don't like it. This is a functionality that we need, but should really be abstracted into another concept (like the Monitor concept in the RFC) rather than keeping it in core kpack

There is an interesting idea in this that we haven't really talked much about historically which is the idea of a multicluster kpack where you have some control cluster that has the buildpacks and stacks and builders and then you have worker clusters that do the builds. That's straightforward to accomplish today with the Build resource but not really with the Image resource.
Reintroducing a "remote builder" resource via a tag is potentially a way to enable this type of functionality without the needing all clusters to have write access to the builder registry. Agreed that the need to poll the registry would be a departure from the declarative aspects of kpack, but we do have some polling concepts today in the form of git polling when providing a branch to the Image resource.

So I have no way to just use the same builders I'm already using on my local machine out of the box? Seeing how easy it was to build with pack I thought kpack would be just a way to bring this simplicity into the cluster.
What do I need to define in kpack to be able to replicate pack build spring-boot-buildpack --path . --builder paketobuildpacks/builder:base for a standard springboot application?

NVM, I just found BuildPacks https://github.com/buildpacks-community/kpack/blob/main/docs/buildpacks.md

Hi! We (Heroku) publish our own builder images, which can then be consumed by Pack CLI users and Heroku's own internal CNB build system etc.
However, at present it's not possible for kpack users to consume these without recreating the builder definition as custom kpack resources.
This means anyone using kpack has to then manually keep their definitions in sync with eg:
https://github.com/heroku/cnb-builder-images/blob/main/builder-24/builder.toml
This seems like a significant limitation of the current design?

Content: This came up in https://github.com/heroku/buildpacks-procfile/issues/243


I can't start slugify from the command-line

Hi,
I can call slugify from the command line after installing your package. Would you be okay moving the main function into the module slugify.cli ?
Thanks!

@sodre Send me a PR ... with your fix?

I will propose one tonight.

Closing this since I can't get it to replicate outside a conda-build cycle.


Scatter on Cuda

I was unable to get scatter working with te schedules on cuda due to the two loops that update values in place, so I resorted to using ir_builder directly.
Attempts to better parallelize the algorithm have created some strange behavior. If I can get a correct and faster implementation to work, I'll submit another PR.
Thanks to @tkonolige for very helpful discussions. @notoraptor, this may be useful for your scatter_add work.
cc @zhiics

cc @Laurawly as well

@zhiics Can we merge this?

yeah, let's merge this. before that, we probably want to rebase again just in case bad things would happen

I rebased, I'll keep an eye on it this evening to make sure it still passes CI. Thanks!

Thanks @mbrookhart @Laurawly @tkonolige @masahi


Reconnecting to Peer. Connection Refused.

Background
Had an active channel with TorGuard for a while. I rebooted computer and now lnd will not reconnect to this channel. I could force close it, but thought it was giving an odd response to my lncli connect attempts.
Your environment

lnd v. 0.4.2
ubuntu mate 18.04
bitcoind

Steps to reproduce
lncli connect 03557fd11b58cb93d2ad4fab4dd4cff7462a97e21e8f6b7a712cb8bd27a96b9eef@<IP_ADDRESS>:9735
[lncli] rpc error: code = Unknown desc = dial tcp <IP_ADDRESS>:9735: connect: connection refused
Debug Log
2018-07-15 00:02:15.304 [WRN] SRVR: Already have 1 persistent connection requests for 03557fd11b58cb93d2ad4fab4dd4cff7462a97e21e8f6b7a712cb8bd27a96b9eef@<IP_ADDRESS>:9735, connecting anyway.
2018-07-15 00:02:15.305 [DBG] SRVR: Connecting to 03557fd11b58cb93d2ad4fab4dd4cff7462a97e21e8f6b7a712cb8bd27a96b9eef@<IP_ADDRESS>:9735
2018-07-15 00:02:15.409 [ERR] SRVR: Unable to connect to 03557fd11b58cb93d2ad4fab4dd4cff7462a97e21e8f6b7a712cb8bd27a96b9eef@<IP_ADDRESS>:9735: dial tcp <IP_ADDRESS>:9735: connect: connection refused
2018-07-15 00:02:15.410 [ERR] RPCS: (connectpeer): error connecting to peer: dial tcp <IP_ADDRESS>:9735: connect: connection refused
Expected behaviour
lnd should reconnect to peer. Then channel should become present when calling listpeers, and active when calling listchannels.
Actual behaviour
no connection established.

ACKing here. Experiencing the same issue.

lnd should reconnect to peer. Then channel should become present when calling listpeers, and active when calling listchannels.

lnd already does this. We'll continually attempt to reconnect to a peer using a backoff. If the peer is down however, there's not much we can do but wait. I'm unable to connect to them at the moment, which most likely means they're offline and have been since you came across this.

2018-07-15 00:02:15.409 [ERR] SRVR: Unable to connect to 03557fd11b58cb93d2ad4fab4dd4cff7462a97e21e8f6b7a712cb8bd27a96b9eef@<IP_ADDRESS>:9735: dial tcp <IP_ADDRESS>:9735: connect: connection refused

As you can see, they've either changed their IP or are no longer listening on the proper port.

I'm unable to connect as well. Closing this as it looks to be an issue with TorGuard, and not lnd.

Thanks for your time.
Sent via the Samsung Galaxy S7 edge, an AT&T 4G LTE smartphone
-------- Original message --------From: Olaoluwa Osuntokun<EMAIL_ADDRESS>Date: 7/16/18  15:58  (GMT-05:00) To: lightningnetwork/lnd<EMAIL_ADDRESS>Cc: bruceleeroy18<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>Subject: Re: [lightningnetwork/lnd] Reconnecting to Peer. Connection Refused.
  (#1561)
I'm unable to connect as well. Closing this as it looks to be an issue with TorGuard, and not lnd.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or mute the thread.
{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/lightningnetwork/lnd","title":"lightningnetwork/lnd","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/lightningnetwork/lnd"}},"updates":{"snippets":[{"icon":"PERSON","message":"@Roasbeef in #1561: I'm unable to connect as well. Closing this as it looks to be an issue with TorGuard, and not lnd. "}],"action":{"name":"View Issue","url":"https://github.com/lightningnetwork/lnd/issues/1561#issuecomment-405362622"}}}
[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/lightningnetwork/lnd/issues/1561#issuecomment-405362622",
"url": "https://github.com/lightningnetwork/lnd/issues/1561#issuecomment-405362622",
"name": "View Issue"
},
"description": "View this Issue on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
},
{
"@type": "MessageCard",
"@context": "http://schema.org/extensions",
"hideOriginalBody": "false",
"originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB",
"title": "Re: [lightningnetwork/lnd] Reconnecting to Peer. Connection Refused. (#1561)",
"sections": [
{
"text": "",
"activityTitle": "Olaoluwa Osuntokun",
"activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png",
"activitySubtitle": "@Roasbeef",
"facts": [
]
}
],
"potentialAction": [
{
"name": "Add a comment",
"@type": "ActionCard",
"inputs": [
{
"isMultiLine": true,
"@type": "TextInput",
"id": "IssueComment",
"isRequired": false
}
],
"actions": [
{
"name": "Comment",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "IssueComment",\n"repositoryFullName": "lightningnetwork/lnd",\n"issueId": 1561,\n"IssueComment": "{{IssueComment.value}}"\n}"
}
]
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/lightningnetwork/lnd/issues/1561#issuecomment-405362622"
}
],
"@type": "OpenUri",
"name": "View on GitHub"
},
{
"name": "Unsubscribe",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n"commandName": "MuteNotification",\n"threadId": 356543838\n}"
}
],
"themeColor": "26292E"
}
]


Bug: Airtime nan/inf when not joined

When using ttn.poll() I get:
-- LOOP
Sending: mac tx uncnf 1 00
Airtime added: nan s
Total airtime: inf s
Successful transmission

This happened when I called the function without calling join/personalize first.
We need to catch this case.


Fill in quality requirements

Fill in quality requirements where it seems necessary and review whole chapter 3.4.

Re-review when getting closer to deadline.


ref #636: ecommerce stats bundle

Q
A

Branch
7.0.x

Bug fix?
no

New feature?
yes

BC breaks?
no

Deprecations?
no

Tests pass?
yes

Fixed issues
chameleon-system/chameleon-system#636

License
MIT

Most of the code already existed in a different form.
I repackaged it and refactored a bit to separate logic from data model as well as documenting the datamodel itself.
While I removed hungarian notation from pretty much all places, I left it intact in the results array from stats queries (see StatsTableService::evaluate and StatsTableService::addBlock) in order to preserve backwards compatibility.

Discussion: Should the cleanup commits in between be truncated into a single commit?

Is there some other (old) code "Shop Stats module" that should be removed here?

Yes, but mark es deprecated instead and remove in 8.0. Otherwise we would create a BC break. (Ignoring the fact, it was not extendable, so i'm 100% sure no one relies on the old version)

Closing this PR as this bundle needs some more work before being ready to be part of the core.


Adding Command Twice

When I try to add a command twice, I do not get an error message and the "Run" button appears. However, the actual object representing this command does not show up on the processing network and when I click run nothing happens and the run button doesn't disappear.

I can't reproduce this error; could you send a step by step way to reproduce? Thanks!

No longer having this issue on Qiita.

Thanks!


test(cli): add test for creating and building a project

fixes #54
The idea here is that CI also creates the template (which gets generated with npm create tutorial) and builds it. This way we can verify that we don't break the template if we update dependencies.
The PR also tests on Windows and addresses some issues with globs that didn't pick up the correct files.

@d3lm Hey! Do you think you could update the required status checks to match what's in this PR?

Do you think you could update the required status checks to match what's in this PR?

Yep for sure!

@SamVerschueren All status checks updated.


It would be batter to remove deprecated / unsupported / unmaintained library

For an eg library like https://github.com/jessesquires/JSQMessagesViewController is officially deprecated by its author so it would be nice to clean up all other libraries as well that are deprecated/unsupported/unmaintained

@vsouza @lfarah @dkhamsing
We need some kind of a conditions to clean up repositories. Also I suggest to organize cleaning process by categories and save cleaned repositories in another list, f.e CLEANED.md.

Hey @indrajitsinh, thanks for looking that up. I try to do a major clean up once in a while but it's hard to keep up with a list so long.
What we normally do is to open a PR removing a deprecated library
I agree with @serhii-londar that we need to organize a cleaning process by categories, but I don't think we should create another Markdown file.
What I think we should to is to open issues for all categories and we split to check for all o them.
What do you all think about this?

Deprecated libraries should just be removed from the list
Not sure anyone has time to check all the projects on the list
f anything doesn’t look right, just open a pr to fix that particular project


Intuitive coloring of protein structures

Protein structures in NGLview could be colored by their quality, eg. red for homology models and silver for experimental models. This gives a quick idea on the quality of information being presented. Other ideas

"figure legend" type of thing displaying quality information (c-score, basic PDB quality)
running QMEAN for all structures and reporting quality this way
coloring certain residues based on quality (b-factor)

Also see: http://www.rcsb.org/pdb/news.do?year=2016&article=57e30aee90f5613003407f08&feature=true - coloring by quality metrics


Add checkcode GitHub Action

Almost working. Will need some tweaking.
Example error:
Run cd docs
/home/runner/work/_temp/fb934c72-9fea-4b24-bade-cf0a06847a02.sh: line 1: cd: docs: No such file or directory

@davidwilby so this now does execute mlintrpt in each directory (recursive), but seems to just spit out Java logging.

Incredible. Will try and work out what the best tool to use in CI for MATLAB should be.