style: remove some non-essential styles

背景描述

移除全局样式reset中的非必须样式，仅保留margin和padding
主要改动

需要注意

Codecov Report

Merging #587 into dev will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev     #587   +/-   ##
=======================================
  Coverage   81.13%   81.13%
=======================================
  Files          98       98
  Lines        2814     2814
  Branches      550      550
=======================================
  Hits         2283     2283
  Misses        375      375
  Partials      156      156

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 4e11335...51fd5b2. Read the comment docs.


Update ru-ru.xaml

Small fix

x:Key="None"
Only with "AutoShutdownSettings" or more?
There are several translation options, instead of negation (similar "No").
If there is no action, then the current option. If "nothing", example a output logs, then another option.


Bluetooth Keyboard devices are not showing up in Scan APi

Hello,
I am trying to scan and connect to a bluetooth barcode scanner which is configured to run as bluetooth keyboard by the manufacturer.  The device is showing up in the native Settings->Bluetooth page but when I try to scan for the devices through Flutter_Blue Api, it is showing up all the devices except keyboard items.
Please help me to identify the problem so that I can fix it.
thank you in advance.

The device might not be Bluetooth Low Energy, which is what this library supports.
There are no plans at the moment to support Bluetooth Classic.
Perhaps if you share more about the keyboard (model number), I could further verify.

I was using a Bluetooth classic device ( http://a.co/d/5RZMoSX ). @pauldemarco thank you for letting me know.


[Feature Request]:  Pulsar Connector should accept auth parameters to connect

What would you like to happen?
Pulsar Connector should accept auth parameters in order to connect with a production pulsar cluster
Issue Priority
Priority: 2
Issue Component
Component: io-java-pulsar

https://github.com/apache/beam/pull/22028


Feature/dev-440 new onboarding design

Waiting for translations …

Waiting for @EdithDFX for translation of the "A wallet dedicated to the native decentralized finance for bitcoin." key.


weather-mv ee has the potential to overwrite asset files in GCS bucket.

When we provide --asset_location to weather-mv ee , it doesn't check if an asset is already present.
This wouldn't fail the pipeline or throw an error, but simply overwrite the asset in the bucket and provide the updated bucket path to the earth engine asset. (Since we are using COG-based ingestion, overwriting assets in the bucket affects the asset in the earth engine. Asset in the earth engine just points to the bucket for COG-based ingestion.)
Problematic Scenario:
When the asset is present in the bucket which is pointed by an earth engine projects/my-project/assets/asset-1. Now if the user wants to knowingly ingest the same image at projects/my-project/assets/asset-2 in the earth engine. But the user accidentally provides the same GCS bucket location for the --asset_location argument. Then the earth engine's original asset's link to the bucket path would break because the pipeline would've overwritten the existing asset file in GCS bucket. This would possibly make the original asset-1 inaccessible from the earth engine.
Possible solutions:

Do ee.data.copyAsset which would copy the same asset as the original and also skip processing.
Add a command line argument for the user to specify force overwrite. Prevent by default.

I'm assuming that these solutions are mutually exclusive options (please correct me if I'm wrong). To follow the conventions of our tools so far, we should do the second one. To expand further:

Skip already-ingested assets.
Document that we have a caching feature for ingesting (won't do duplicate ingests)
Let users override this via a -f,--force flag.

Thanks for identifying this problem and adding this writeup.


Reverse link function

This is related to the extract/refactor request I've made that you are working on in Markdown Kit, but I think is more appropriate here as it is purely link-based.
I'm currently creating various indexes that point to my notes. It would be really neat if there was a command that uses a search/autocomplete to create a link to the current file in the OTHER selected file. It is essentially the reverse of the current wikilinking function, where a link to the other file is created in the current file. It would need to go in some default place in the target file - in a YAML header above "---" perhaps?
Another related idea - some sort of Ctrl+Shift+Click feature to create a link to the current page in the page contained within the link that was clicked on (e.g. Page 1 has [[Page 2]] within it. This command would add [[Page 1]] to Page 2.
These features would be useful for making topical index notes - I have many index pages like "Inbox", "Nutrition", "Finance" which are full of links to specific pages on those topics. If I am on a new page on Vitamins that is not yet linked to Nutrition, I could add that link without having to open and type it. Or, in the header of Vitamins, I could manually add link in the header to Nutrition and Shopping List, and then create links in those summary pages by clicking.
I know there are backlinks, but this is an extra level of functionality.

Hi,
I understand the use case. For now it looks like it saves a few clicks in favor of supporting an individual flow. I'd let this idea to wait and collect more suggestions before approaching any implementation.

It is essentially the reverse of the current wikilinking function, where a link to the other file is created in the current file.

In case of forward links, it's obvious where exactly link is created (user types it), whereas in case of reverse links it's not. There are plenty of ways to do that: send to the beginning/end of the file, put within yaml header, and so on. In general, considering the flexibility of Markdown I see little automatization opportunity for that so far, or such automatization would favor one's opinions over others and thus individual extension fits better for such.


daxa 3.0

As daxa 2.0 is nearly done, we can start to plan and build daxa 2.X.
Main Features:

[x] c api
[ ] rust bindings
[ ] gpu based validation of resource id access
[ ] better device creation (make physical device list visible and all attributes, create device based on selected physical device)
[ ] raytracing api

finished c api

killed rest of features for 3.0 to get it out as so much has changed already.

We will start doing regular releases soon with new versioning


Fixed macOS Catalina camera permissions request

Issue
openpnp-capture-test fails on MacOS Catalina 10.15.2, MacBookPro 15 2017 internal camera
Cause
Not waiting for user to grant camera permission
Fix
Wait for permission granted

@vonnieda up

Will review this weekend.
On Tue, Aug 11, 2020 at 5:19 AM Filipp Ozinov<EMAIL_ADDRESS>wrote:

@vonnieda https://github.com/vonnieda up
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/openpnp/openpnp-capture/pull/37#issuecomment-671861918,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AAJAU45NGGU3LMAAAUHDMFTSAELMLANCNFSM4PYR3NBQ
.

This looks good to me - thanks @bakwc!


[BUG] Links in Table of Contents for Event Hubs in reference docs dont work

Try clicking on any of the links in the Table of Contents for Event Hubs in our reference docs. None of them work.
cc @conniey for finding this via #17297

@ramya-rao-a, this seems to work fine for @sima-zhu and I.  We're going to need more info.  What browser were you using?  Anything special about the internet connection (corpnet, proxy, etc)?

@kurtzeborn I think what @ramya-rao-a and @conniey are referring to here is that in the "Table of Contents" section, there are links to different sections of the README that don't work. For e.g. clicking on "Examples" in TOC should take you to the examples section but it's opening a new tab for the same page. The issue is the links are not navigating to the subsections of the page.

That is right @srnagar, thanks!
@kurtzeborn, @sima-zhu Adding a screenshot here:

Yep, makes sense.  Looking at the source for the page, I see the following (using "Include the package" as an example):

Include the package

However, down below in the section, I don't see the corresponding anchor there.  It should look something like this:

Include the package

The docs is generated by Jacoco, and Jacoco reference doc does not read the anchor link very well. @srnagar The doc is generated by maven command. Do you aware any of the settings to make it work? If not, I can search and report an issue to Jacoco

@sima-zhu The overview page  is generated by a python script - eng/pipelines/scripts/generate_overview_from_readme.py. This copies the contents of README.md and updates the javadoc index html. So, looks like the issue might be how the script is generating html page from markdown page.
Also, Jacoco is used for reporting code coverage only and shouldn't be impacting javadocs.

@srnagar My mistakes. I mean the maven javadoc command. I will double check the python scripts and see if it is the python scripts can handle this.

Have the PR to fix all incoming releases. Need to fix all existing readme in blob storage as well.

Updated the existing documents.
Please check the link: https://azuresdkdocs.blob.core.windows.net/$web/java/azure-messaging-eventhubs/5.3.1/index.html
Closed the issue. Please feel free to reopen if you find any unaddressed stuff.

@sima-zhu Thanks!
Clicking on any of the links in the table of contents now takes us to the right place, but this view occupies the entire page. We no longer see the left TOC for the reference docs for different classes. Can we do anything about htat?

@rao

Fixed the issue of both toc links were not working and open new tabs when clicking. It is now working as expected.
Please double check. Closed the issue for now. Please feel free to reopen the tickets if more issues need to address or any follow up issues.

Fixed the issue of both toc links were not working and open new tabs when clicking. It is now working as expected.
Please double check. Closed the issue for now. Please feel free to reopen the tickets if more issues need to address or any follow up issues.

Fix confirmed. Thanks @sima-zhu!

Fix confirmed. Thanks @sima-zhu!


Hangs and eats all memory trying to render a complex diagram.

Unfortunately, I do not have a short example. I am trying stuff with graphs, and one thing I did was to render a graph in some fashion. I discovered that, while I could vectorize it with the SVG back end, if I try to do the same with Rasterific, it eats all memory in an infinite loop. I did some profiling and I found out that the looping function is clipLine.
Here is the commit. You can run it with, for example, cabal run exes -- --output x.png --width 200. It hangs when I try it. If you replace clr489 example graph with, say, cyc3, it will render beautifully.
Here is the profiling log.
Please let me know if it hangs on your machine too, and if I can do anything else to help.

Can you try to call dumpDrawing somehow a put the result somewhere?
Dump drawing should print-out the scene in nearly haskell, workable for debugging

I have no idea how to get that for you. I asked: diagrams/diagrams-rasterific#60.
I found a ticket diagrams/diagrams-rasterific#39 that may be relevant.

You have infinitys and NaNs and the dumped diagram:
(fill [LinePrim Line (V2 (-Infinity) (-Infinity)) (V2 (-Infinity) (-Infinity)),LinePrim Line (V2 (-Infinity) (-Infinity)) (V2 (-Infinity) (-Infinity)),LinePrim Line (V2 (-Infinity) (-Infinity)) (V2 (-Infinity) (-Infinity)),LinePrim Line (V2 (-Infinity) (-Infinity)) (V2 NaN NaN)] >>=

This is not filtered by Rasterific, and yeah, it makes the rendering go bonker.

@Twinside Thank you for taking time to research this issue.
So what can be done?
I am not sure I can control this. The data I supply to the diagrams API is somewhat shady (like, sin pi shady), but it is legit. The same diagrams render flawlessly with SVG back end.
Can you explain to me what data type you are showing, and maybe post the code you used to obtain it, so that I can examine my various diagrams with it and locate what goes wrong?

I've tried the SVG, and you have NaN and Infinity written in your SVG (that your browser probably ignore, I wouldn't call that flawless. The code is mostly the copy/past of Diagram.Rasterific with a call changed to dump the generated drawing, I've pushed it here.
I've added safegard to Rasterific for these cases, but the root problem remain


[DOC] Change mailing list url in footer to point to instructions about how to subscribe

If users just send an email to the email list without being subscribed, it will just be swallowed.

I think these links expire after some time. As far I can recall there's an Apache infra managed link we can use.

@marcoabreu the register link can be set to expire. The link to channels usually don't expire. For example, GluonNLP's slack link has been alive for about a year now. http://gluon-nlp.mxnet.io/community/index.html

Erm the link to me shows that is has expired 😄 . But whatever, we can use http://s.apache.org/slack-invite (from https://cwiki.apache.org/confluence/display/INFRA/Slack+Guest+Invites)


Implement ResultSet#getRow in JDBC driver

Additionally, we may need to check other methods to allow running in Spring.
https://github.com/prestosql/presto/blob/96de404ec944d60e39c6f2175533066c6b1ff364/presto-jdbc/src/main/java/io/prestosql/jdbc/AbstractPrestoResultSet.java#L687
ResultSet#getRow https://docs.oracle.com/javase/8/docs/api/java/sql/ResultSet.html#getRow--
From https://stackoverflow.com/questions/64601558/itemreader-unable-to-read-rows-via-prestodriver

Hi, I am a beginner to our Presto community and I would like to take a look at this issue since this is labeled as good first issue. Hopefully I could raise a PR for this.
To fix this issue, I just would like to make sure that I need to maintain a counter indicating row number and return this number when getRow is called (and return 0 if there is no current row) , right?
Thanks!

@jasonyanwenl  welcome!
what you wrote sounds reasonable to me, although edge cases need to be verified (behavior before first the  row or after the last).
It would be good to double check and compare the proposed behavior with that of e.g. PostgreSQL JDBC driver.


4 enable group membership

Looks good, just added static/web.config back and changed subscribe/unsubscribe to join/leave (which makes more sense in the context of interest groups).

Oops, and removed the migrations which already exist in c5bab0adf24dcc7b8b1f9f3a56399f794ab5e690


Link to docs from "Add custom app"

closes #1682

Travis automatic deployment:
https://pr1939--safereact.review.gnosisdev.com/rinkeby/app

Travis automatic deployment:
https://pr1939--safereact.review.gnosisdev.com/rinkeby/app

The icon is there. It takes to where it is supposed to
LGTM


Add constant folding rules for floating-point comparison

This change handles all 6 regular comparison types in two variations,
ordered (true if values are ordered and comparison is true) and
unordered (true if values are unordered or comparison is true).
Ordered comparison matches the default floating-point behavior on host
but we use std::isnan to check ordering explicitly anyway.
This change also slightly reworks the floating-point folding support
code to make it possible to define a folding operation that returns
boolean instead of floating point.

Please let me know if I went overboard on tests or if you'd like to see some tests that are currently missing...

Thanks for adding these rules.  I know you were asking for them.  There are lots to add, and in the shaders I am working on other things come up more often.

Added more tests. And no worries; these were easier to add now that previous folding changes established a framework :)

Hmm... This change might be triggering an issue in one of our shaders. I previously tested this change in isolation, for example:
spirv-opt -O shader1.spv -o shader2.spv
spirv-opt --simplify-instructions shader2.spv -o shader3.spv

and
spirv-opt --simplify-instructions shader1.spv -o shader4.spv

And these all work fine. However, trying to run a combined pass sequence like this:
spirv-opt -O --simplify-instructions shader1.spv -o shader5.spv

Crashes inside the simplification pass with the following callstack when simplifying FOrdEqual:
#0  0x00000000007d3690 in spvtools::ir::Instruction::result_id (this=0x0) at /mnt/c/work/SPIRV-Tools/source/opt/instruction.h:154
#1  0x000000000086bfff in spvtools::opt::analysis::DefUseManager::UpdateDefUse (this=0xd46810, inst=0x0) at /mnt/c/work/SPIRV-Tools/source/opt/def_use_manager.cpp:75
#2  0x000000000087b7e5 in spvtools::ir::IRContext::UpdateDefUse (this=0xd53e10, inst=0x0) at /mnt/c/work/SPIRV-Tools/source/opt/ir_context.h:754
#3  0x000000000087ab6a in spvtools::opt::FoldInstructionToConstant(spvtools::ir::Instruction*, std::function<unsigned int (unsigned int)>) (inst=0xdafb60, id_map=...)
    at /mnt/c/work/SPIRV-Tools/source/opt/fold.cpp:643
#4  0x000000000087940e in spvtools::opt::(anonymous namespace)::FoldInstructionInternal (inst=0xdafb60) at /mnt/c/work/SPIRV-Tools/source/opt/fold.cpp:194
#5  0x000000000087ae37 in spvtools::opt::FoldInstruction (inst=0xdafb60) at /mnt/c/work/SPIRV-Tools/source/opt/fold.cpp:686
#6  0x00000000007f55d8 in spvtools::opt::SimplificationPass::<lambda(spvtools::ir::BasicBlock*)>::operator()(spvtools::ir::BasicBlock *) const (__closure=0xd27f60, bb=0xdd0ed0)
    at /mnt/c/work/SPIRV-Tools/source/opt/simplification_pass.cpp:59

What looks like is happening here is that the folding folds comparison to a bool constant:
(gdb) p *(spvtools::opt::analysis::BoolConstant*)folded_const
$5 = {<spvtools::opt::analysis::ScalarConstant> = {<spvtools::opt::analysis::Constant> = {_vptr.Constant = 0xcfc3f8 <vtable for spvtools::opt::analysis::BoolConstant+16>,
      type_ = 0xd60bc0}, words_ = std::vector of length 1, capacity 1 = {0}}, value_ = false}

However, the constant does not have a defining instruction, so const_inst is nullptr and UpdateDefUse crashes. I'm not sure how to handle this correctly - a simple null check & early return doesn't seem right?

Can you give a small example that shows the problem?  const_inst is the return value of GetDefiningInstruction, which is suppose to create the instruction if it does not already exist.
We should add a check for a nullprt, because that can happen.  However, I don't think your case should get a nullptr.

The issue with a nullptr check is that if you have to return an Instruction, but if you just return nullptr the folding doesn't happen; we could synthesize a new instruction for the constant but that seems a bit like duct tape.
The issue is that constant manager thinks that the constant is registered and bound to an instruction (FindDeclaredConstant returns non-0 id), but def manager thinks that the id doesn't have a def anymore. I suspect that this is happening because the constant was registered with constant manager earlier, but the definition was removed by some other pass - so constant manager would still have the const->id mapping but the id is dead. Trying to make a small repro now.

Yeah - my suspicion was correct; in this shader, I get this at some point during optimization:
...
%1158 = OpConstantFalse %538
...
which gets recorded in the constant-manager; at a later time, during simplify-instructions this:
%76 = OpConstant %6 0
...
%674 = OpConstant %6 0.75
...
%1251 = OpFOrdEqual %538 %674 %76

is folded to false which refers to 1158 in the constant manager, but doesn't appear in the IR that is fed to simplification pass.

So I still need to make a simple repro for this, but as far as what we could do, I can imagine several options:

Fix the problem in GetDefiningInstruction:

diff --git a/source/opt/constants.cpp b/source/opt/constants.cpp
index 336e061..d899561 100644
--- a/source/opt/constants.cpp
+++ b/source/opt/constants.cpp
@@ -67,12 +67,18 @@ ir::Instruction* ConstantManager::BuildInstructionAndAddToModule(
 ir::Instruction* ConstantManager::GetDefiningInstruction(
     const Constant* c, ir::Module::inst_iterator* pos) {
   uint32_t decl_id = FindDeclaredConstant(c);
-  if (decl_id == 0) {
+
+  // The mapping we recorded can become invalid if the constant has been removed
+  // by DCE If this happened, we recreate the constant instruction
+  ir::Instruction* def =
+      (decl_id == 0) ? nullptr : context()->get_def_use_mgr()->GetDef(decl_id);
+
+  if (def == nullptr) {
     auto iter = context()->types_values_end();
     if (pos == nullptr) pos = &iter;
     return BuildInstructionAndAddToModule(c, pos);
   } else {
-    return context()->get_def_use_mgr()->GetDef(decl_id);
+    return def;
   }
 }

This will break in odd ways if ids are ever reused during optimization, but otherwise might be fine.

In PassManager, clean up dead constants from constant manager after each pass

Remove constants from constant manager in DCE passes - I think there's more than one so all of them would need to change

I want to look at IRContext::KillInst().  If it is deleting a constant it should update the constant manager.

Ah yeah, that's better. This appears to work:
diff --git a/source/opt/constants.cpp b/source/opt/constants.cpp
index 336e061..d5b873f 100644
--- a/source/opt/constants.cpp
+++ b/source/opt/constants.cpp
@@ -72,7 +72,9 @@ ir::Instruction* ConstantManager::GetDefiningInstruction(
     if (pos == nullptr) pos = &iter;
     return BuildInstructionAndAddToModule(c, pos);
   } else {
-    return context()->get_def_use_mgr()->GetDef(decl_id);
+    auto def = context()->get_def_use_mgr()->GetDef(decl_id);
+    assert(def != nullptr);
+    return def;
   }
 }

diff --git a/source/opt/constants.h b/source/opt/constants.h
index e382e16..6ac9bef 100644
--- a/source/opt/constants.h
+++ b/source/opt/constants.h
@@ -518,6 +518,14 @@ class ConstantManager {
     return false;
   }

+  void RemoveId(uint32_t id) {
+    auto it = id_to_const_val_.find(id);
+    if (it != id_to_const_val_.end()) {
+      const_val_to_id_.erase(it->second);
+      id_to_const_val_.erase(it);
+    }
+  }
+
   // Records a new mapping between |inst| and |const_value|. This updates the
   // two mappings |id_to_const_val_| and |const_val_to_id_|.
   void MapConstantToInst(const Constant* const_value, ir::Instruction* inst) {
diff --git a/source/opt/ir_context.cpp b/source/opt/ir_context.cpp
index 895c8a9..a5efd80 100644
--- a/source/opt/ir_context.cpp
+++ b/source/opt/ir_context.cpp
@@ -106,6 +106,10 @@ Instruction* IRContext::KillInst(ir::Instruction* inst) {
     type_mgr_->RemoveId(inst->result_id());
   }

+  if (constant_mgr_ && inst->IsConstant()) {
+    constant_mgr_->RemoveId(inst->result_id());
+  }
+
   RemoveFromIdToName(inst);

   Instruction* next_instruction = nullptr;

Yes that is what we want.  Can you open a new PR with that fix?  We can merge that first, and then we will merge this one.

@zeux Same here.  Please rebase.

rebased, squashed, and merged as 10544136.


Update my branch

Ticket
Description
Screenshots / Demo Video
Testing
Checklist

[ ] Provided ticket and description
[ ] Your PR title contains the ISSUE ticket number e.g "86: ..."
[ ] Provided screenshots/demo
[ ] Provided testing information
[ ] Provided adequate test coverage for all new code
[ ] Run automated tests (docker compose exec app yarn test)
[ ] Added PR reviewers
[ ] Ensure at least 1 review before merging

Junk. Will rebuild my branch.


Add GetCondition method to managed resources (through AngryJet tool)

Description of your changes

Fixes #889
Checklist

I have:

[x] Run make reviewable to ensure this PR is ready for review.
[x] Ensured this PR contains a neat, self documenting set of commits.
[ ] Updated any relevant documentation, examples, or release notes.
[ ] Updated the dependencies in app.yaml to include any new role permissions.

@negz @muvaf @hasheddan PTAL!


1.1.x pekko snapshots are no longer including the java 9+ classes

Have a look at the projects/Jdk9.scala file.
The classes that this is supposed to build appear to be no longer built.
Java 1.0.x jars still have the expected classes.
Compare
https://repository.apache.org/content/groups/snapshots/org/apache/pekko/pekko-cluster-sharding_2.13/1.0.2+26-870129ef-SNAPSHOT/
to
https://repository.apache.org/content/groups/snapshots/org/apache/pekko/pekko-cluster-sharding_2.13/1.1.0-M0+283-e597a702-SNAPSHOT/
Have a look for this Java9+ class.
org.apache.pekko.cluster.sharding.internal.jfr.JFRShardingFlightRecorder
Included in the 1.0 jar but not in the 1.1 jar.
This appears to be happening in other jars where we have Jdk9(+) classes.

We need to bisect the commit where this happened

This is a  blocker for 1.1.0

Last pekko-cluster-sharding_2.13 snapshot to have JFR classes is 1.1.0-M0+221-959c98db-SNAPSHOT - Jan 9
Missing in next snapshot - 1.1.0-M0+224-ccce5c04-SNAPSHOT (Jan 11)

nothing obvious but https://github.com/apache/incubator-pekko/commit/b9d2cc6187e5622fee5e4d0052a4120141c5b9c4 was in Jan 9 and that sbt-osgi plugin has been causing us serious grief

@mdedetrich I reverted https://github.com/apache/incubator-pekko/commit/b9d2cc6187e5622fee5e4d0052a4120141c5b9c4 locally and it fixed the issue with missing JDK9 classes

Run with java 11
sbt:pekko-stream> show unmanagedSourceDirectories
[info] * C:\Users\hepin\IdeaProjects\incubator-pekko\stream\src\main\scala
[info] * C:\Users\hepin\IdeaProjects\incubator-pekko\stream\src\main\scala-2.13
[info] * C:\Users\hepin\IdeaProjects\incubator-pekko\stream\src\main\scala-2
[info] * C:\Users\hepin\IdeaProjects\incubator-pekko\stream\src\main\java
[info] * C:\Users\hepin\IdeaProjects\incubator-pekko\stream\src\main\scala-2.13+
sbt:pekko-stream>

@mdedetrich I reverted https://github.com/apache/incubator-pekko/commit/b9d2cc6187e5622fee5e4d0052a4120141c5b9c4 locally and it fixed the issue with missing JDK9 classes

Thanks I'll look into it

So I already know what the likely cause is, its a fallout from https://github.com/sbt/sbt-osgi/pull/64

We will need a task to verify the jar contains these Java 9+ classes in the nightly build after packaging.

So I can indeed confirm that its https://github.com/sbt/sbt-osgi/pull/64, if I print out what the Compile / fullClasspath is for stream (which is what contains JDK 9 classes) you can see
[info] * Attributed(/Users/mdedetrich/github/incubator-pekko/stream/target/scala-2.13/classes)
[info] * Attributed(/Users/mdedetrich/github/incubator-pekko/actor/target/scala-2.13/classes)
[info] * Attributed(/Users/mdedetrich/github/incubator-pekko/protobuf-v3/target/scala-2.13/stripped/stripped/pekko-protobuf-v3-assembly-1.0.2+27-46618d08-SNAPSHOT.jar)
[info] * Attributed(/Users/mdedetrich/github/incubator-pekko/protobuf-v3/target/scala-2.13/stripped/pekko-protobuf-v3-assembly-1.0.2+27-46618d08-SNAPSHOT.jar)
[info] * Attributed(/Users/mdedetrich/Library/Caches/Coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/scala-library/2.13.11/scala-library-2.13.11.jar)
[info] * Attributed(/Users/mdedetrich/Library/Caches/Coursier/v1/https/repo1.maven.org/maven2/org/reactivestreams/reactive-streams/1.0.4/reactive-streams-1.0.4.jar)
[info] * Attributed(/Users/mdedetrich/Library/Caches/Coursier/v1/https/repo1.maven.org/maven2/com/typesafe/ssl-config-core_2.13/0.6.1/ssl-config-core_2.13-0.6.1.jar)
[info] * Attributed(/Users/mdedetrich/Library/Caches/Coursier/v1/https/repo1.maven.org/maven2/com/typesafe/config/1.4.3/config-1.4.3.jar)
[info] * Attributed(/Users/mdedetrich/github/incubator-pekko/stream/target/scala-2.13/CompileJdk9-classes)

As you can see the last line is the compiled jdk9 classes which are missing
However if we print out the replacement which is (dependencyClasspathAsJars in Compile).value.map(_.data) ++ (products in Compile) then we get this
[info] * Attributed(/Users/mdedetrich/github/incubator-pekko/actor/target/scala-2.13/stripped/pekko-actor_2.13-1.0.2+27-46618d08-SNAPSHOT.jar)
[info] * Attributed(/Users/mdedetrich/github/incubator-pekko/protobuf-v3/target/scala-2.13/stripped/stripped/pekko-protobuf-v3-assembly-1.0.2+27-46618d08-SNAPSHOT.jar)
[info] * Attributed(/Users/mdedetrich/github/incubator-pekko/protobuf-v3/target/scala-2.13/stripped/pekko-protobuf-v3-assembly-1.0.2+27-46618d08-SNAPSHOT.jar)
[info] * Attributed(/Users/mdedetrich/Library/Caches/Coursier/v1/https/repo1.maven.org/maven2/org/scala-lang/scala-library/2.13.11/scala-library-2.13.11.jar)
[info] * Attributed(/Users/mdedetrich/Library/Caches/Coursier/v1/https/repo1.maven.org/maven2/org/reactivestreams/reactive-streams/1.0.4/reactive-streams-1.0.4.jar)
[info] * Attributed(/Users/mdedetrich/Library/Caches/Coursier/v1/https/repo1.maven.org/maven2/com/typesafe/ssl-config-core_2.13/0.6.1/ssl-config-core_2.13-0.6.1.jar)
[info] * Attributed(/Users/mdedetrich/Library/Caches/Coursier/v1/https/repo1.maven.org/maven2/com/typesafe/config/1.4.3/config-1.4.3.jar)

plus
[info] * /Users/mdedetrich/github/incubator-pekko/stream/target/scala-2.13/classes

As we can see its missing the JDK 9 classes folder. I will need to do changes in sbt-osgi upstream to fix this

So I already have a PR ready for sbt-osgi that will allow me to fix this issue, just waiting for https://github.com/sbt/sbt-osgi/pull/118 to get merged.
Should be fixed in a couple of days

after revert the osgi to 0.9.4 and publish local

before

@mdedetrich yes, it's osgi plugin's problem.

It seems to be related to this #959.

@mdedetrich I reverted b9d2cc6 locally and it fixed the issue with missing JDK9 classes

@pjfanning Thanks for investigating , this problem is also led to #959.

I am quite sure that the core problem is what I described at https://github.com/apache/incubator-pekko/issues/1039#issuecomment-1909114860 which is leading to all of the other described issues. There might be a simple solution for this that doesn't require extending sbt-osgi with additional functionality but I need to first merge + release https://github.com/sbt/sbt-osgi/pull/121 .

@pjfanning I think this has been solve by #1047

@pjfanning I think this has been solve by #1047

I disagree - #1040 is to test #1039 and #1039 is not even fixed yet. There is zero proof that this is a fix for #1040.

I disagree - #1040 is to test #1039 and #1039 is not even fixed yet. There is zero proof that this is a fix for #1040.

My last repeated comment was published in the wrong ISSUE. This comment was published under #1039, that is, we have fixed the compile of the JDK9 class on package task.


Large number of warnings in compilation log

A lot of [-Wmaybe-uninitialized], [-Wunused-variable] and [-Wsign-compare] warnings appear when compiling. This leads to a log with >3000 lines, so it would greatly facilitate debugging if we could cut down on these warnings, when we come across them.
Example of unused variable: maxTriplets.

Fixed in #132


build(deps): update secp256k1 to 0.24

Updates secp256k1 dependency to 0.24, which is the version used in rust-bitcoin 0.29

Hi @LLFourn ! Is this okay to go in?

Yes. Thanks for the ping. secpfun release coming this week!

Danke!


Set postres host via -db= argument?

Would be great if it wasn't localhost by default. go-bootstrap could also check if the needed tools and the database are available. Currently it just quits with an error if things don't go as expected.

Ah, this is already done, just not documented.
(PGHOST and all the other things)


Pytorch build with rocm failed, execution_policy.h' file not found

🐛 Describe the bug
FAILED: caffe2/CMakeFiles/torch_hip.dir//aten/src/ATen/native/hip/torch_hip_generated_CumprodKernel.hip.o /home/hmsjwzb/work/pytorch/build/caffe2/CMakeFiles/torch_hip.dir//aten/src/ATen/native/hip/torch_hip_generated_CumprodKernel.hip.o                              cd /home/hmsjwzb/work/pytorch/build/caffe2/CMakeFiles/torch_hip.dir//aten/src/ATen/native/hip && /home/hmsjwzb/miniconda3/bin/cmake -E make_directory /home/hmsjwzb/work/pytorch/build/caffe2/CMakeFiles/torch_hip.dir//aten/src/ATen/native/hip/. && /home/hmsjwzb/miniconda3/bin/cmake -D verbose:BOOL=OFF -D build_configuration:STRING=RELEASE -D generated_file:STRING=/home/hmsjwzb/work/pytorch/build/caffe2/CMakeFiles/torch_hip.dir//aten/src/ATen/native/hip/./torch_hip_generated_CumprodKernel.hip.o -P /home/hmsjwzb/work/pytorch/build/caffe2/CMakeFiles/torch_hip.dir//aten/src/ATen/native/hip/torch_hip_generated_CumprodKernel.hip.o.cmake                                                                                In file included from /home/hmsjwzb/work/pytorch/aten/src/ATen/native/hip/CumprodKernel.hip:3:                                                                                In file included from /home/hmsjwzb/work/pytorch/aten/src/ATen/core/TensorBase.h:6:                                                                                In file included from /home/hmsjwzb/work/pytorch/c10/core/ScalarType.h:8:                                                                                In file included from /home/hmsjwzb/work/pytorch/c10/util/Float8_e5m2.h:17:                                                                                In file included from /home/hmsjwzb/work/pytorch/c10/util/Half.h:16:                                                                                In file included from /home/hmsjwzb/work/pytorch/c10/util/complex.h:8:                                                                                In file included from /usr/include/thrust/complex.h:1030:                                                                                In file included from /usr/include/thrust/detail/complex/complex.inl:22:                                                                                In file included from /usr/include/thrust/type_traits/is_trivially_relocatable.h:19:                                                                                In file included from /usr/include/thrust/type_traits/is_contiguous_iterator.h:27:                                                                                In file included from /usr/include/thrust/detail/type_traits/pointer_traits.h:23:                                                                                In file included from /usr/include/thrust/iterator/iterator_traits.h:62:                                                                                /usr/include/thrust/iterator/detail/device_system_tag.h:23:10: fatal error: 'thrust/system/THRUST_DEVICE_SYSTEM_NAMESPACE/detail/execution_policy.h' file not found                                                                                23 | #include THRUST_DEVICE_SYSTEM_TAG_HEADER                                                                                |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                /usr/include/thrust/iterator/detail/device_system_tag.h:22:43: note: expanded from macro 'THRUST_DEVICE_SYSTEM_TAG_HEADER'                                                                                22 | #define THRUST_DEVICE_SYSTEM_TAG_HEADER <THRUST_DEVICE_SYSTEM_ROOT/detail/execution_policy.h>                                                                                |                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                :42:1: note: expanded from here                                                                                42 | <thrust/system/THRUST_DEVICE_SYSTEM_NAMESPACE/detail/execution_policy.h>                                                                                | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                1 error generated when compiling for host.                                                                                failed to execute:/opt/rocm/llvm/bin/clang++  --offload-arch=gfx1100 --cuda-host-only -O3  -M -x hip /home/hmsjwzb/work/pytorch/aten/src/ATen/native/hip/CumprodKernel.hip -o "/home/hmsjwzb/work/pytorch/build/caffe2/CMakeFiles/torch_hip.dir//aten/src/ATen/native/hip/torch_hip_generated_CumprodKernel.hip.o.depend.pre" -fclang-abi-compat=17 -DUSE_NCCL -DUSE_ROCM -D__HIP_PLATFORM_AMD -DUSE_FLASH_ATTENTION -DUSE_MEM_EFF_ATTENTION -DUSE_C10D_NCCL -DTORCH_HIP_BUILD_MAIN_LIB -DROCM_VERSION=60202 -DTORCH_HIP_VERSION=602 -DONNX_ML=1 -DONNXIFI_ENABLE_EXT=1 -DONNX_NAMESPACE=onnx_torch -DHAVE_MMAP=1 -D_FILE_OFFSET_BITS=64 -DHAVE_SHM_OPEN=1 -DHAVE_SHM_UNLINK=1 -DHAVE_MALLOC_USABLE_SIZE=1 -DUSE_EXTERNAL_MZCRC -DMINIZ_DISABLE_ZIP_READER_CRC32_CHECKS -DFLASHATTENTION_DISABLE_ALIBI -D__HIP_PLATFORM_AMD=1 -DUSE_PROF_API=1 -DAT_PER_OPERATOR_HEADERS -DUSE_DISTRIBUTED -DUSE_C10D_GLOO -DUSE_RPC -DUSE_TENSORPIPE -D__HIP_PLATFORM_AMD -DFMT_HEADER_ONLY=1 -fPIC -D__HIP_PLATFORM_AMD=1 -DCUDA_HAS_FP16=1 -DUSE_ROCM -D__HIP_NO_HALF_OPERATORS=1 -D__HIP_NO_HALF_CONVERSIONS__=1 -DTORCH_HIP_VERSION=602 -Wno-shift-count-negative -Wno-shift-count-overflow -Wno-duplicate-decl-specifier -DCAFFE2_USE_MIOPEN -DTHRUST_DEVICE_SYSTEM=THRUST_DEVICE_SYSTEM_HIP -std=c++17 -DHIPBLAS_V2 -DHIP_NEW_TYPE_ENUMS -fno-gpu-rdc -I/home/hmsjwzb/work/pytorch/build/aten/src -I/home/hmsjwzb/work/pytorch/aten/src -I/home/hmsjwzb/work/pytorch/build -I/home/hmsjwzb/work/pytorch -I/opt/rocm-6.2.2/include -I/home/hmsjwzb/work/pytorch/build/third_party/gloo -I/home/hmsjwzb/work/pytorch/cmake/../third_party/gloo -I/home/hmsjwzb/work/pytorch/cmake/../third_party/tensorpipe/third_party/libuv/include -I/home/hmsjwzb/work/pytorch/cmake/../third_party/googletest/googlemock/include -I/home/hmsjwzb/work/pytorch/cmake/../third_party/googletest/googletest/include -I/home/hmsjwzb/work/pytorch/third_party/protobuf/src -I/home/hmsjwzb/work/pytorch/third_party/XNNPACK/include -I/home/hmsjwzb/work/pytorch/cmake/../third_party/benchmark/include -I/home/hmsjwzb/work/pytorch/third_party/ittapi/include -I/home/hmsjwzb/work/pytorch/cmake/../third_party/eigen -I/home/hmsjwzb/work/pytorch/third_party/onnx -I/home/hmsjwzb/work/pytorch/build/third_party/onnx -I/home/hmsjwzb/work/pytorch/third_party/ideep/mkl-dnn/include/oneapi/dnnl -I/home/hmsjwzb/work/pytorch/third_party/ideep/include -I/home/hmsjwzb/work/pytorch/third_party/ideep/mkl-dnn/include/oneapi/dnnl -I/home/hmsjwzb/work/pytorch/nlohmann -I/home/hmsjwzb/work/pytorch/INTERFACE -I/home/hmsjwzb/work/pytorch/third_party/nlohmann/include -I/opt/rocm/include -I/opt/rocm/hcc/include -I/opt/rocm/rocblas/include -I/opt/rocm/hipsparse/include -I/opt/rocm/include/rccl/ -I/home/hmsjwzb/work/pytorch/aten/src/THH -I/home/hmsjwzb/work/pytorch/aten/src/ATen/hip -I/home/hmsjwzb/work/pytorch/aten/src/ATen/../../../third_party/composable_kernel/include -I/home/hmsjwzb/work/pytorch/aten/src/ATen/../../../third_party/composable_kernel/library/include -I/home/hmsjwzb/work/pytorch/third_party/fmt/include -I/home/hmsjwzb/work/pytorch/aten/src -I/home/hmsjwzb/work/pytorch/build/caffe2/aten/src -I/home/hmsjwzb/work/pytorch/build/aten/src -I/home/hmsjwzb/work/pytorch/aten/src -I/home/hmsjwzb/work/pytorch/aten/src/ATen/.. -I/home/hmsjwzb/work/pytorch/torch/include -I/opt/rocm-6.2.2/include -I/opt/rocm/include -I/home/hmsjwzb/work/pytorch/c10/hip/../.. -I/home/hmsjwzb/work/pytorch/build -I/home/hmsjwzb/work/pytorch/c10/../ -I/home/hmsjwzb/work/pytorch/build -I/home/hmsjwzb/work/pytorch/torch/csrc/api -I/home/hmsjwzb/work/pytorch/torch/csrc/api/include -I/home/hmsjwzb/work/pytorch/third_party/protobuf/src -I/opt/rocm-6.2.2/include -I/opt/rocm/include -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include/hiprand -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include -I/opt/rocm-6.2.2/include -I/opt/rocm/include -I/home/hmsjwzb/work/pytorch/build/third_party/gloo/hip -I/home/hmsjwzb/miniconda3/include -I/home/hmsjwzb/work/pytorch/build/aten/src -I/home/hmsjwzb/work/pytorch/aten/src -I/home/hmsjwzb/work/pytorch/build -I/home/hmsjwzb/work/pytorch -I/opt/rocm-6.2.2/include -I/home/hmsjwzb/work/pytorch/build/third_party/gloo -I/home/hmsjwzb/work/pytorch/cmake/../third_party/gloo -I/home/hmsjwzb/work/pytorch/cmake/../third_party/tensorpipe/third_party/libuv/include -I/home/hmsjwzb/work/pytorch/cmake/../third_party/googletest/googlemock/include -I/home/hmsjwzb/work/pytorch/cmake/../third_party/googletest/googletest/include -I/home/hmsjwzb/work/pytorch/third_party/protobuf/src -I/home/hmsjwzb/work/pytorch/third_party/XNNPACK/include -I/home/hmsjwzb/work/pytorch/cmake/../third_party/benchmark/include -I/home/hmsjwzb/work/pytorch/third_party/ittapi/include -I/home/hmsjwzb/work/pytorch/cmake/../third_party/eigen -I/home/hmsjwzb/work/pytorch/third_party/onnx -I/home/hmsjwzb/work/pytorch/build/third_party/onnx -I/home/hmsjwzb/work/pytorch/third_party/ideep/mkl-dnn/include/oneapi/dnnl -I/home/hmsjwzb/work/pytorch/third_party/ideep/include -I/home/hmsjwzb/work/pytorch/nlohmann -I/home/hmsjwzb/work/pytorch/INTERFACE -I/home/hmsjwzb/work/pytorch/third_party/nlohmann/include                                                                                CMake Error at torch_hip_generated_CumprodKernel.hip.o.cmake:146 (message):                                                                                Error generating                                                                                /home/hmsjwzb/work/pytorch/build/caffe2/CMakeFiles/torch_hip.dir/__/aten/src/ATen/native/hip/./torch_hip_generated_CumprodKernel.hip.o                                                                                ninja: build stopped: subcommand failed.                                                                                Building wheel torch-2.6.0a0+gitd8f22a1                                                                                -- Building version 2.6.0a0+gitd8f22a1                                                                                cmake --build . --target install --config Release
Versions
PyTorch version: 2.5.0+rocm6.2                                                                                Is debug build: False                                                                                CUDA used to build PyTorch: N/A                                                                                ROCM used to build PyTorch: 6.2.41133-dd7f95766                                                                                OS: Ubuntu 22.04.2 LTS (x86_64)                                                                                GCC version: (Ubuntu 11.4.0-1ubuntu1~22.04) 11.4.0                                                                                Clang version: 18.1.8 (/home/hmsjwzb/code/llvm-project/clang 443e23eed24d9533566f189ef25154263756a36d)                                                                                CMake version: version 3.26.4                                                                                Libc version: glibc-2.35                                                                                Python version: 3.10.15+ (heads/3.10:0c5fc272175, Sep 24 2024, 11:33:24) [GCC 11.4.0] (64-bit runtime)                                                                                Python platform: Linux-6.8.0-47-generic-x86_64-with-glibc2.35                                                                                Is CUDA available: True                                                                                CUDA runtime version: Could not collect                                                                                CUDA_MODULE_LOADING set to: LAZY                                                                                GPU models and configuration: Radeon RX 7900 XTX (gfx1100)                                                                                Nvidia driver version: Could not collect                                                                                cuDNN version: Could not collect                                                                                HIP runtime version: 6.2.41133                                                                                MIOpen runtime version: 3.2.0                                                                                Is XNNPACK available: True                                                                                CPU:                                                                                Architecture:                         x86_64                                                                                CPU op-mode(s):                       32-bit, 64-bit                                                                                Address sizes:                        46 bits physical, 48 bits virtual                                                                                Byte Order:                           Little Endian                                                                                CPU(s):                               32                                                                                On-line CPU(s) list:                  0-31                                                                                Vendor ID:                            GenuineIntel                                                                                Model name:                           13th Gen Intel(R) Core(TM) i9-13900                                                                                CPU family:                           6                                                                                Model:                                183                                                                                Thread(s) per core:                   2                                                                                Core(s) per socket:                   24                                                                                Socket(s):                            1                                                                                Stepping:                             1                                                                                CPU max MHz:                          5600.0000                                                                                CPU min MHz:                          800.0000                                                                                BogoMIPS:                             3993.60                                                                                Flags:                                fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb ssbd ibrs ibpb stibp ibrs_enhanced tpr_shadow flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid rdseed adx smap clflushopt clwb intel_pt sha_ni xsaveopt xsavec xgetbv1 xsaves split_lock_detect user_shstk avx_vnni dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp hwp_pkg_req hfi vnmi umip pku ospke waitpkg gfni vaes vpclmulqdq tme rdpid movdiri movdir64b fsrm md_clear serialize pconfig arch_lbr ibt flush_l1d arch_capabilities                                                                                Virtualization:                       VT-x                                                                                L1d cache:                            896 KiB (24 instances)                                                                                L1i cache:                            1.3 MiB (24 instances)                                                                                L2 cache:                             32 MiB (12 instances)                                                                                L3 cache:                             36 MiB (1 instance)                                                                                NUMA node(s):                         1                                                                                NUMA node0 CPU(s):                    0-31                                                                                Vulnerability Gather data sampling:   Not affected                                                                                Vulnerability Itlb multihit:          Not affected                                                                                Vulnerability L1tf:                   Not affected                                                                                Vulnerability Mds:                    Not affected                                                                                Vulnerability Meltdown:               Not affected                                                                                Vulnerability Mmio stale data:        Not affected                                                                                Vulnerability Reg file data sampling: Mitigation; Clear Register File                                                                                Vulnerability Retbleed:               Not affected                                                                                Vulnerability Spec rstack overflow:   Not affected                                                                                Vulnerability Spec store bypass:      Mitigation; Speculative Store Bypass disabled via prctl                                                                                Vulnerability Spectre v1:             Mitigation; usercopy/swapgs barriers and __user pointer sanitization                                                                                Vulnerability Spectre v2:             Mitigation; Enhanced / Automatic IBRS; IBPB conditional; RSB filling; PBRSB-eIBRS SW sequence; BHI BHI_DIS_S                                                                                Vulnerability Srbds:                  Not affected                                                                                Vulnerability Tsx async abort:        Not affected
Versions of relevant libraries:                                                                                [pip3] numpy==1.26.3                                                                                [pip3] nvidia-cublas-cu12==<IP_ADDRESS>                                                                                [pip3] nvidia-cuda-cupti-cu12==12.4.127                                                                                [pip3] nvidia-cuda-nvrtc-cu12==12.4.127                                                                                [pip3] nvidia-cuda-runtime-cu12==12.4.127                                                                                [pip3] nvidia-cudnn-cu12==<IP_ADDRESS>                                                                                [pip3] nvidia-cufft-cu12==<IP_ADDRESS>                                                                                [pip3] nvidia-curand-cu12==<IP_ADDRESS>                                                                                [pip3] nvidia-cusolver-cu12==<IP_ADDRESS>                                                                                [pip3] nvidia-cusparse-cu12==<IP_ADDRESS>                                                                                [pip3] nvidia-nccl-cu12==2.21.5                                                                                [pip3] nvidia-nvjitlink-cu12==12.4.127                                                                                [pip3] nvidia-nvtx-cu12==12.4.127                                                                                [pip3] pytorch-triton-rocm==3.1.0                                                                                [pip3] torch==2.5.0+rocm6.2                                                                                [pip3] torchaudio==2.5.0+rocm6.2                                                                                [pip3] torchvision==0.20.0+rocm6.2                                                                                [pip3] triton==3.1.0                                                                                [conda] magma-cuda121             2.6.1                         1    pytorch
cc @jeffdaily @jithunnair-amd

Is there another version of thrust installed on your system at /usr/include/thrust?  Seems to be conflicting with the thrust port expected in /opt/rocm.


Failed to parse message file

When testing today on calculon I tripped the following tests:
test test::generate_ok_on_ros1 ... FAILED
test test::generate_ok_on_ros2 ... FAILED

failures:

---- test::generate_ok_on_ros1 stdout ----
thread 'test::generate_ok_on_ros1' panicked at 'Failed to parse a literal value in a message file to the corresponding rust type: /bond_disable_heartbeat_timeout to String', roslibrust_codegen/src/gen.rs:262:85
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

---- test::generate_ok_on_ros2 stdout ----
thread 'test::generate_ok_on_ros2' panicked at 'Failed to parse a literal value in a message file to the corresponding rust type: /bond_disable_heartbeat_timeout to String', roslibrust_codegen/src/gen.rs:262:85

Appears to be caused by this message: http://docs.ros.org/en/diamondback/api/bond/html/msg/Constants.html
From this package:
https://wiki.ros.org/bond
Not sure how it made it on my system, but we should add it as an adversarial test case and support it.

God the documentation on how this "should work" is really bad:

Oh and ROS1 and ROS2 disagree with each other:


Support rotation for pointStyle image

This PR enables rotation for pointStyle images. The credit goes to @nyammy.
https://jsfiddle.net/nagix/ethpbsa2/

Fixes #6159

Can this be done with pointStyle: 'triangle'?


OpenStack installer references a non existent terraform datasource

Issue Report Template
Tectonic Version
tectonic-1.7.3-tectonic.2
Environment
Tectonic is being executed on OS X El Capitan
What hardware/cloud provider/hypervisor is being used with Tectonic?
OpenStack
Expected Behavior
Terraform plan completes without error.
Actual Behavior
1 error(s) occurred:

* module.dns.data.openstack_dns_zone_v2.tectonic: Provider doesn't support data source: openstack_dns_zone_v2

Reproduction Steps
Follow the tectonic openstack installer guide 😉

https://coreos.com/tectonic/docs/latest/install/openstack/openstack-terraform.html

Other Information
It appears that the OpenStack installer code is referencing a terraform datasource that does not exist.
The code (linked above) references data "openstack_dns_zone_v2" "tectonic", however this appears to not yet exist!  See https://www.terraform.io/docs/providers/openstack/index.html# for a list of currently supported data sources.

Any ideas on this @lblackstone?

Yes, that error means the OpenStack environment you're deploying to does not include Designate support. In this case, you can use an alternative DNS provider like Route53.
To use Route53, export the relevant AWS creds and then follow these steps:

Change https://github.com/coreos/tectonic-installer/blob/1.7.3-tectonic.2/platforms/openstack/neutron/main.tf#L182 to be source = "../../../modules/dns/route53"
Delete https://github.com/coreos/tectonic-installer/blob/1.7.3-tectonic.2/platforms/openstack/neutron/main.tf#L187

Hi @lblackstone - I use an OpenStack environment with Designate enabled and fully functional and received the same error as @tomstockton . The datasource doesn't exist in the OpenStack provider. I had to change the datasource to a resource in the designate module, and reference it accordingly in the templates. This works fine, and all the DNS entries are populated in Designate.

@nwright-nz Ah, good catch. I'm using a different DNS provider, so I didn't notice that bug earlier. Submitted a fix upstream. ^

Took another look at this today, and realized that the behavior you were seeing was actually intentional. This module expects that the DNS zone has already been created prior to running the plan, which allows multiple clusters to use the same zone. If needed, it should be possible to make that behavior configurable, but you'd need to open an issue on https://github.com/coreos/tectonic-installer/
Reverting my previous change at https://github.com/coreos/tectonic-installer/pull/2247


can't preview markdown file

VSCode Version: Code 1.17.1 (1e9d36539b0ae51ac09b9d4673ebea4e447e5353, 2017-10-10T14:10:17.189Z)
OS Version: Darwin x64 16.7.0
Extensions:

Extension
Author (truncated)
Version

markdown-toc
Ala
1.5.6

vscode-markdownlint
Dav
0.10.1

beautify
Hoo
1.1.1

crane
Hvy
0.3.8

vscode-docker
Pet
0.0.19

python
don
0.7.0

vscode-html-css
ecm
0.1.8

php-intellisense
fel
1.5.1

code-runner
for
0.7.3

docker-explorer
for
0.1.5

shell-format
fox
1.1.1

MagicPython
mag
1.0.12

Kotlin
mat
1.3.0

azure-account
ms-
0.1.3

java
red
0.11.0

bash-beautify
sha
0.1.1

cucumber
ste
0.9.6

vim
vsc
0.10.1

markdown-pdf
yza
0.1.7

Steps to Reproduce:

open md file
click Preview to the Side

Reproduces without extensions: No

So when you disable all of your extensions, the preview starts working again? Can you then try selectively enabling some of the extensions again to see which one causes breaks the preview

I found that this one causing the issue.
https://marketplace.visualstudio.com/items?itemName=redhat.java
On Wed, Oct 18, 2017 at 12:56 AM, Matt Bierner<EMAIL_ADDRESS>wrote:

So when you disable all of your extensions, the preview starts working
again? Can you then try selectively enabling some of the extensions again
to see which one causes breaks the preview
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/Microsoft/vscode/issues/36400#issuecomment-337309739,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ADo_ceKCwHANSeNUtrisJrME2CY665ktks5stOpbgaJpZM4P70Tl
.

Thank you for the followup. Please try filing an issue against whatever extension you believe is causing this issue


the dilation parameters

hi, thanks for your  awesome job. I have a question: the parameters in the feature_extraction (layer3 and layer4), the dilation is 1 and 2, while in the paper is 2 and 4. So which one is right?  Thank you !

Hi,
We used both of two dilation rate (1, 2 and 2, 4) in the experiment.
Please refer to the Table 2.
The last row indicated that we used  half dilation rate (1 ,2).
Jia-Ren

thank you ！

will you guys release the pretrained model？

Hi,
We shared the model that we used on KITTI 2015.
Please refer to README.
Jia-Ren


feat: add VSCode to OpenHands runtime and UI

End-user friendly description of the problem this fixes or functionality that this introduces

[ ] Include this change in the Release Notes. If checked, you must provide an end-user friendly description for your change below

Give a summary of what the PR does, explaining any non-trivial design decisions
Add VSCode based on https://github.com/gitpod-io/openvscode-server, so we can quickly pop up an editor on UI to play around with files and download them properly (the current download zip in UI doesn't work too well)
https://github.com/user-attachments/assets/79cbd443-ff29-45e4-87db-dfa12d142dcd

Link of any specific issues this addresses

To run this PR locally, use the following command:
docker run -it --rm   -p 3000:3000   -v /var/run/docker.sock:/var/run/docker.sock   --add-host host.docker.internal:host-gateway   -e SANDBOX_RUNTIME_CONTAINER_IMAGE=docker.all-hands.dev/all-hands-ai/runtime:0fddc96-nikolaik   --name openhands-app-0fddc96   docker.all-hands.dev/all-hands-ai/openhands:0fddc96

Implemented! Ready for another look:

This button should be disabled or invisible until the runtime is ready

The toast is a little frustrating. It's not enough time for me to read, and long enough that it feels like VS Code is taking a long time.
I'd suggest putting a message into the chat window saying:

You opened VS Code. Please inform the agent of any changes you made to the workspace or environment.

@rbren
Now the button is gray out & not working when the runtime is not initialized

And turn blue when the agent / runtime is ready:

And new messages will be added to VSCode

@xingyaoww sorry for the delay on review! But I'm getting this error when trying to run:
    raise LLMMalformedActionError(
openhands.core.exceptions.LLMMalformedActionError: action={'id': 5, 'timestamp': '2024-11-12T12:01:39.428213', 'source': 'user', 'message': 'do a flip', 'action': 'message', 'args': {'content': 'do a flip', 'image_urls': [], 'wait_for_response': False}} has the wrong arguments: MessageAction.__init__() got an unexpected keyword argument 'image_urls

maybe need to rebase?


Days are out for General Waste

Describe the bug

All of a sudden the days are out of sync for the general waste sensor which is a weekly event- the others alternate odds and even weeks.

Configuration
Do you configure the integration in YAML or Config Flow (GUI)? :
Config Flow

Error log/debug information

Screenshots

Version
Integration version: Latest
Home Assistant version: Latest

I can't reproduce it, my weekly sensors run fine. Can you please send debug logs? Also, what is wrong? For what day is the sensor configured? Did you configure to skip any holidays?

Hi, thanks for your response - I have since delete and re-added the sensor and appears to be ok now. Weekday is Wednesday and was set from Jan to December from memory, so not sure if that was the issue. Does it time out after 12 months? Does this have to be an option? It never was an issue with public holidays in the past. Thanks again for your work

Nop, it does not expire. Since we can't replicate it, I will close the issue for now.


Double.NEGATIVE_INFINITY produces ClassCastException in Property binding

I am storing Double.NEGATIVE_INFINITY (that’s a double) in Property  which gives me an ClassCastException in the Binder: ClassCastException: java.lang.String cannot be cast to java.lang.Number.  Strange is, the internal value is actually a String with value “-Infinity” if I debug the binding.

We Need to Check how infinity is defined in JS

see https://google.github.io/gson/apidocs/com/google/gson/GsonBuilder.html#serializeSpecialFloatingPointValues--

This problem is a little bit harder to solve than first expected.
All transcoders needs to be real GSON transcoders as described here: https://github.com/google/gson/blob/master/UserGuide.md#TOC-Writing-a-Deserializer
Next to this a mix between the rate JsonParser of GSON and the high level GSON functionality must be used. Example: https://github.com/google/gson/blob/master/extras/src/main/java/com/google/gson/extras/examples/rawcollections/RawCollectionsExample.java
Since PR #548 currently change a lot in that area I think it will be better to move this issue to a later version

First additional unit tests etc. were created in the "value-edge-cases" branch


Keras add convert for losses

Closes #4
This pr is providing a way to convert losses from keras to the BHoM and viceversa:

[x] BCEWithSigmoid
[x] BinaryCrossEntropy
[x] CrossEntropy
[x] L1
[x] MeanSquareError
[x] NegativeLogLikelihood

Test file
https://burohappold.sharepoint.com/:f:/s/BHoM/EliaaRnmklhAu76TQ0vklxkBDtr10F1O-wulOg_YiJYXow?e=cUsday

@AlaaAlfakara @alelom this is now ready for review. Would you mind having it a go?


[WIP] Window functions

Close #3

[x] initial support
[x] OVER (PARTITION BY …)
[x] OVER (ORDER BY …)
[x] OVER (RANGE …)
[x] FILTER (WHERE …) (this one will be implemented in Ecto 3)

This is no longer needed as Ecto 3 supports window functions natively.


Corp FFA Plug in Special attacks are not registering

Type
Performance
Operating System
Windows
OS Version
11
Bug description
I do a lot of Corporial Beast, and use the Corp FFA plug in.  Typically, when you use the plug in, you are able to see your group's specs. This has gone away. You can see the words and the item being used, but it is not registering the spec attacks.
Screenshots or videos
No response
RuneLite version
Rune Lite
Logs
.

Issues for hub plugins should be reported to their respective authors. You can report an issue with the Corp FFA plugin here.

As mentioned above and in the issue template, We do not accept bug reports for 3rd party/pluginhub plugins.
You can right-click a hub plugin in the 🔧 tab and select the Support option to find the correct place to report an issue, or in your case use the direct link for the plugin you are having issues with, that cdfisher has supplied you.


Postprocess freehand - edit points

It seems that with the merge of   Improve free-hand drawing feature the old feature where we could edit the points of a freehand drawing got lost (replaced by improved free-hand drawing).
Since I don't do very good freehand drawings the capability to edit the freehand lines after drawing was essential to create a good excalidraw (adding, removing points, smoothing the free-hand spline)
Is there any option to set to enable this again?

There were two reasons for changing the way how free-hand drawing works:

Low-quality results of the previous algorithm. The lines ended up too jagged and the simplification algorithm usually resulted in lines you didn't draw in the first place.
The free-draw deep down was just a line tool, implementation-wise.

The point (2) is why migrating old drawings to the new free-draw was as simple as changing the type from draw to line to keep them looking the same after the migration.
In other words, if what you're after is a need to create "pixel" perfect shapes, you don't need the old free-draw tool, just use the line tool. You can edit/add the points the same way (we also plan to improve this workflow). Chances are you'll end up with a cleaner workflow (you won't need to delete/reposition as many points).

But to answer your original questions: post-processing the new freedraw shapes would be harder: a small change in position of one point usually has a drastic effect on the simplification/rendering algorithm.


Steps to reproduce the bug
from datasets import load_dataset

original = load_dataset("squad", split="train")
original.to_json("from_original.json")  # Takes 0 seconds

selected_subset1 = original.select([i for i in range(len(original))])
selected_subset1.to_json("from_select1.json")  # Takes 212 seconds

selected_subset2 = original.select([i for i in range(int(len(original) / 2))])
selected_subset2.to_json("from_select2.json")  # Takes 90 seconds

Environment info

datasets version: master (https://github.com/huggingface/datasets/commit/6090f3cfb5c819f441dd4a4bb635e037c875b044)
Platform: Linux-4.4.0-19041-Microsoft-x86_64-with-glibc2.27
Python version: 3.9.7
PyArrow version: 6.0.0

Hi ! It's slower indeed because a datasets on which select/shard/train_test_split/shuffle has been called has to do additional steps to retrieve the data of the dataset table in the right order.
Indeed, if you call dataset.select([0, 5, 10]), the underlying table of the dataset is not altered to keep the examples at index 0, 5, and 10. Instead, an indices mapping is added on top of the table, that says that the first example is at index 0, the second at index 5 and the last one at index 10.
Therefore accessing the examples of the dataset is slower because of the additional step that uses the indices mapping.
The step that takes the most time is to query the dataset table from a list of indices here:
https://github.com/huggingface/datasets/blob/047dc756ed20fbf06e6bcaf910464aba0e20610a/src/datasets/formatting/formatting.py#L61-L63
In your case it can be made significantly faster by checking if the indices are contiguous. If they're contiguous, we could pass a python slice or range instead of a list of integers to _query_table. This way _query_table will do only one lookup to get the queried batch instead of batch_size lookups.
Given that calling select with contiguous indices is a common use case I'm in favor of implementing such an optimization :)
Let me know what you think

Hi, thanks for the response!
I still don't understand why it is so much slower than iterating and saving:
from datasets import load_dataset

original = load_dataset("squad", split="train")
original.to_json("from_original.json")  # Takes 0 seconds

selected_subset1 = original.select([i for i in range(len(original))])
selected_subset1.to_json("from_select1.json")  # Takes 99 seconds

selected_subset2 = original.select([i for i in range(int(len(original) / 2))])
selected_subset2.to_json("from_select2.json")  # Takes 47 seconds

selected_subset3 = original.select([i for i in range(len(original)) if i % 2 == 0])
selected_subset3.to_json("from_select3.json")  # Takes 49 seconds

import json
import time
def fast_to_json(dataset, path):
    start = time.time()
    with open(path, mode="w") as f:
        for example in dataset:
            f.write(json.dumps(example, separators=(',', ':')) + "\n")
    end = time.time()
    print(f"Saved {len(dataset)} examples to {path} in {end - start} seconds.")

fast_to_json(original, "from_original_fast.json")
fast_to_json(selected_subset1, "from_select1_fast.json")
fast_to_json(selected_subset2, "from_select2_fast.json")
fast_to_json(selected_subset3, "from_select3_fast.json")

Saved 87599 examples to from_original_fast.json in 8 seconds.
Saved 87599 examples to from_select1_fast.json in 10 seconds.
Saved 43799 examples to from_select2_fast.json in 6 seconds.
Saved 43800 examples to from_select3_fast.json in 5 seconds.

There are slight differences between what you're doing and what to_json is actually doing.
In particular to_json currently converts batches of rows (as an arrow table) to a pandas dataframe, and then to JSON Lines. From your benchmark it looks like it's faster if we don't use pandas.
Thanks for investigating, I think we can optimize to_json significantly thanks to your test.
It might be better to directly

Thanks for your observations, @eladsegal! I spent some time with this and tried different approaches. Turns out that https://github.com/huggingface/datasets/blob/bb13373637b1acc55f8a468a8927a56cf4732230/src/datasets/io/json.py#L100 is giving the problem when we use to_json after select. This is when indices parameter in query_table is not None (if it is None then to_json should work as expected)
In order to circumvent this problem, I found out instead of doing Arrow Table -> Pandas-> JSON we can directly go to JSON by using to_pydict() which is a little slower than the current approach but at least select works properly now. Lmk what you guys think of it @lhoestq, @eladsegal.

Sounds good to me ! Feel free to also share your benchmarks for reference @bhavitvyamalik

Posting it in @eladsegal's format:
For squad:
Saving examples using current to_json in 3.63 secs
Saving examples to from_select1_fast.json in 5.00 secs
Saving examples to from_select2_fast.json in 2.45 secs
Saving examples to from_select3_fast.json in 2.50 secs
For squad_v2:
Saving examples using current to_json in 5.26 secs
Saving examples to from_select1_fast.json in 7.54 secs
Saving examples to from_select2_fast.json in 3.80 secs
Saving examples to from_select3_fast.json in 3.67 secs


Total Fat samples?

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
No
Describe the solution you'd like
A clear and concise description of what you want to happen.
I've noticed that permission to get total fat is available, but there is no getter for this.  Carbohydrates and Proteins are currently available.
A getTotalFatSamples().
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.

Actually, there is a saveFood() in RCTAppleHealthKit+Methods_Dietary.m, maybe a getFood() is better than a getTotalFatSamples(), so we can get all the food entries.

@bvelasquez is implementing getFood method possible? I was going to take a look at your getTotalFatSamples and try to replicate for getFood.

I am closing this issue since the PR is already merged.

I am closing this issue since the PR is already merged.


PDFRenderingQueue not exported in pdf_viewer.js ?

Trying to give more constructive feedback.
I want to rebuild the viewer but in react and still having lots of problems.
For example, it doesn't seem like PDFRenderingQueue is exported.
What's weird is that looking at the generated code in pdf_viewer.js ... it is:
exports.PDFRenderingQueue = PDFRenderingQueue;

but if I try to use it it's undefined.
It's thinks like this that yield a great deal of confusion because it doesn't seem possible to actually build the demo viewer with pdf.js. It's only possible to build more simple single page PDF renders.

What's weird is that looking at the generated code in pdf_viewer.js ... it is:
exports.PDFRenderingQueue = PDFRenderingQueue;

but if I try to use it it's undefined.

Without actual links to the code in question, it's quite frankly difficult to know exactly what code you're referring to here!
Are you perhaps asking for https://github.com/mozilla/pdf.js/blob/master/web/pdf_rendering_queue.js to be exposed through https://github.com/mozilla/pdf.js/blob/master/web/pdf_viewer.component.js, or something else?

[...] it doesn't seem possible to actually build the demo viewer with pdf.js.

Please note that that's on purpose, see e.g. http://mozilla.github.io/pdf.js/getting_started/#introduction (emphasis mine):

The viewer is built on the display layer and is the UI for PDF viewer in Firefox and the other browser extensions within the project. It can be a good starting point for building your own viewer. However, we do ask if you plan to embed the viewer in your own site, that it not just be an unmodified version. Please re-skin it or build upon it.

Right.  this is basically what I'm trying to do now.  I have a basic viewer which doesn't use your skin, it's using ours, but the problem is it renders EVERY pages.
I had thought that PDFRenderingQueue was what was limiting the number of pages but after building my custom version, it won't work.
PDFRenderingQueue, I don't think, would enable you to just take the full skin.  It's just sort of an internal buffer anyway.
The problem I have now is if I have a 200 page PDF it will render ALL 200 pages.  I need it to use a window and only render 2-10 at a time and the rest are in 'loading' state like the viewer currently does.
For some reason this isn't enabled in the default build which makes loading super slow.
Also, once loaded, CPU is hammered too..
How can I get it to just use the windowed rendering like it does in the viewer?

Based on https://github.com/mozilla/pdf.js/issues/11760#issuecomment-605711763, this sounds like a duplicate of issue #11626.

Closing as a duplicate for now to focus the discussion over there.


Expose a correct way to unset a property of an object

So naive code like this...
removeBar: function() {
  this.set('foo.bar', undefined);
}

With the intent unset a value on a property will actually have unfortunate side effects, if you have any computed methods, or things like dom-if that watch for a change on bar. Since we are setting bar back to undefined it kicks us back into the skip this eval mode for any watcher on bar, which can be quite problematic.
xref https://github.com/Polymer/polymer/issues/2447
Thoughts?

In BB world
http://backbonejs.org/#Model-unset

If anyone stumbles across this, a hack workaround is to set the value to null instead of undefined
this.set('foo.bar', null);

I would rather suggest such workaround:
this.set('foo.bar', null);
this.set('foo.bar', undefined);

as then you will notify the things, and end up with this.foo.bar === undefined

Hello,
Is there any update on this - the ability to unset object keys seems quite essential for many cases when working with slightly more complex state objects.

Does this issue affect 2.x as well? Any plan to address this with the new data binding changes? @sorvell @kevinpschaaf?

this.set('foo.bar', null);
this.set('foo.bar', undefined);

is not equal to... delete foo.bar, one produces
{ bar: undefined }

while the other produces
{}

+1 for a way to do this.delete(path) ?

But both still produce the same on a weak compare ==?
Is the delete an issue related to garbage collection, memory and state? Or just one about consistency?
There are methods to delete certain types, Polymer had used weak map collections to maintain anonymous and unique session specific collections, but I believe that as v1 arrived they offered users a richer observe API, the ability to manipulate batched properties on command using a little creative function swapping binding. And then native took care of some of the delete functionality
How browsers implement some requirements regarding weak map garbage collection and type fealty may change things
But from my undetstanding.  Native can delete any property including another object which is a property of a. Object , provided that object or property has not been hoisted to global scope
The good and the bad of this hoisting one could write volumes on from a security or adored utility perspective
But the issue was delete
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/delete
There are other. Clear etc operators for map etc
Sent from my iPhone

On Oct 3, 2016, at 10:49 AM, Quang Van<EMAIL_ADDRESS>wrote:
this.set('foo.bar', null);
this.set('foo.bar', undefined);
is not equal to... delete foo.bar, one produces
{ bar: undefined }
while the other produces
{}
+1 for a way to do this.delete(path) ?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or mute the thread.

This is creating me a real problem.
I have an iron-ajax element:
                <iron-ajax id="aj" params="{{extraParams}}" url="/stores/usersList" handle-as="json" last-response="{{data}}" on-response="_loaded" ></iron-ajax>

I also have some paper-checkboxes which will  call _flagToggled on-iron-change="_flagToggled".
            <paper-checkbox noink checked="{{_isFlagChecked('admin',flags)}}"  flag-name="admin" on-iron-change="_flagToggled">Admin</paper-checkbox>
            <paper-checkbox noink checked="{{_isFlagChecked('hidden',flags)}}" flag-name="hidden" on-iron-change="_flagToggled">Hidden</paper-checkbox>

I want the checkboxes to change extraParams so that admin and hidden are either set to true or nothing.
This is what I have to do right now:
    _flagToggled: function( e ){
      var l = e.currentTarget;
      var flag = l.getAttribute('flag-name');
      var checked = e.currentTarget.checked;
      if( checked ) this.set('extraParams.'+ flag, true );
      else {
        if( this.extraParams ){
          delete this.extraParams[ flag ];
          var ep = {};
          for( var k in this.extraParams ){
            ep[ k ] = this.extraParams[ k ];
          }
          this.set('extraParams', ep );
        }
      }
    },

Basically, the only chance to actually set extraParam correctly is to create a full copy of it.
Note:

if( checked ) this.set('extraParams.'+ flag, false ); won't work as it will set a filter on the server where values need to be set to false, which is NOT what I want
if( checked ) this.set('extraParams.'+ flag, undefined ); won't work as it will send hidden=undefined to the server
delete this.extraParams[ flag]; this.set('extraParams', extraParams); won't work because extraParams gets cached and notifications won't go out

This must be a common use-case. I am not sure how to "solve" it.

Okay, I took a stab at this issue and sadly it is a lot more complicated than I expected. The gist of the issue is that the data-binding has an universal assumption of eagerly setting a property. Since deletion (together with the semantics of field in object) is strictly different, you need to explicitly delete object[field]. This means that whenever we do an assignment to any store or element (which we do a lot) has to be abstracted to delete. This results in a lot of duplication throughout the data-binding system, for example require a new implementation of _setPendingPropertyOrPath and _setPendingProperty to deal with this.
Overall, while I would really like this feature to exist, deletion seems too intrusive in the current state. Since Polymer 2, you can do this.set('path.value', undefined) to get the correct data-binding updates. However, deletion of the field in the object (per the above comment) seems infeasible in the current state :cry:

@TimvdLippe I think lit-html or using something like redux might be best bet for the time being.

Opened #4999 for implementation discussion. So far I am quite pessimistic that we can change it, as there are lot of checks that prohibit the propagation of "nothing" :cry:


Isotope abundance

To Reproduce
Steps to reproduce the behavior:

Be = element('Be')
for iBe in Be.isotopes:
print(iBe.abundance)
#Would print only 0.0
Probably there's no information in database

Specification

mendleev version 0.11.0
python version 3.8.2

Thank you a lot for fast response. I would wait an update to pypi. For my project the issue is not critical. Your project is very helpful.

Thanks fro the positive feedback :slightly_smiling_face: Let me close this since v0.12.0 was just released and has a fix.


BrowserModule has already been loaded. If you need access to common directives such as NgIf and NgFor from a lazy loaded module, import CommonModule instead.

Duplicated #27


Improve Font of the website

Describe the feature
Font improvement can be done.
Fonts play an important role in a website's design and user experience. Fonts impact the overall user experience of a website. A well-chosen font improves user satisfaction by making the content more accessible and enjoyable to read. On the other hand, poorly selected fonts can frustrate users and drive them away from the site.
Solution:
Choose Appropriate Fonts:
Select fonts that align audience preferences, and content tone. Consider factors like readability and emotional impact. Choose fonts that support a wide range of languages and character sets.
Optimize Font Size and Spacing:
Ensure that text is adequately sized for comfortable reading on various screen sizes. Adjust line spacing (line height) to improve readability and prevent text from appearing cramped or crowded. Increase the font size and adjust the contrast ratio to improve readability.
Add ScreenShots

We can use these fonts for better user experience and better website design.
Record

[X] I agree to follow this project's Code of Conduct
[X] I'm a GSSOC'24 contributor
[X] I want to work on this issue

@Suchitra-Sahoo Hii, I am happy to work on this issue under GSSOC 24 contribution. Could you please assign it to me?

Can you please assign this issue to me, I will be very happy in doing it.

@MonikaLuhach assigned. After making the changes raise a PR with a video or screenshot demonstrating your changes.

@Suchitra-Sahoo Can you assign this issue to me, As I am UI/UX designer too so I know which font will match with your needs. Please assign this issue to me I will be very happy.

@Suchitra-Sahoo Can you please assign me this issue. I am eager to do it.

@Suchitra-Sahoo Can you please assign me this issue. I am eager to do it.

@Suchitra-Sahoo Can you please assign me this issue. I am eager to do it.

@Suchitra-Sahoo Hii, I am glad to work on this issue under GSSOC 24 contribution. Could you please assign it to me?

I want to work in this issue. Please assign me this task.

assign me this issue


Progress indicator

Hello @jakub-oprsal,
Would it be possible to add some sort of progress indicator to the solver?

Hi @tamionv,
You are right that it would be nice to have a progress indicator. Though currently, it would be incredibly hard to implement. The few problems with it are:

We are currently using an external SAT solver, PicoSAT, and it does not have such an indicator or API. Hence, we cannot know how long the SAT solving will take — and this is the most of the work to be done!
Even when we are recursively calling SAT solver (e.g., when looking for all polymorphisms), it is hard to estimate how many times we will call the solver (it is hard to know the number of polymorphisms beforehand).

That said, we could try to find some proxy measure for progress —but I am not sure it's worth the research this would require. What I think is feasible is to provide more output on which phase of the algorithm are we in. I guess this could be done with logging so that it is easy to set a level of verbosity.

I don't think this is worth implementing at the moment.

I don't think this is worth implementing at the moment.


websocket support

Fixes #12

Let me know if this is something you are open to incorporate into the project.
If you think this is worthwhile, I can take it to the finish line, which means:

add unit tests
add support for ws routes in blueprints

If you have any issues against merging this patch, let me know, and I'll look into releasing this as a separate extension.
Thanks!

@seemethere @r0fls added a unit test and addressed your comments. The coverage report in tox is weird, coverage is off while the tests run, so the low coverage numbers you get on all the modules is incorrect. I enabled coverage here and measured 87% for the new websocket.py file, and 85% for the entire sanic package. Let me know if you have any more feedback.

I've been playing around with this branch and I'm getting an exception raised after a idle websocket client connection (maybe about a minute).
I created a client directly using websockets, here's the gist, which didn't have this problem.
Here's the Sanic version and the stack trace I recieve:
2017-02-25 00:28:17,904: ERROR: NoneType: None

2017-02-25 00:28:17,905: ERROR: Traceback (most recent call last):
  File "/Users/jamesstidard/Development/Miscellany/Hello-Sanic/venv/src/sanic/sanic/app.py", line 431, in handle_request
    response = await response
  File "/usr/local/var/pyenv/versions/3.6.0/lib/python3.6/asyncio/coroutines.py", line 128, in throw
    return self.gen.throw(type, value, traceback)
  File "/Users/jamesstidard/Development/Miscellany/Hello-Sanic/venv/src/sanic/sanic/app.py", line 193, in websocket_handler
    await handler(request, ws, *args, **kwargs)
  File "/usr/local/var/pyenv/versions/3.6.0/lib/python3.6/asyncio/coroutines.py", line 128, in throw
    return self.gen.throw(type, value, traceback)
  File "/Users/jamesstidard/Development/Miscellany/Hello-Sanic/hellosanic/serve.py", line 29, in websocket
    message = await ws.recv()
  File "/Users/jamesstidard/Development/Miscellany/Hello-Sanic/venv/lib/python3.6/site-packages/websockets/protocol.py", line 284, in recv
    loop=self.loop, return_when=asyncio.FIRST_COMPLETED)
  File "/usr/local/var/pyenv/versions/3.6.0/lib/python3.6/asyncio/tasks.py", line 307, in wait
    return (yield from _wait(fs, timeout, return_when, loop))
  File "/usr/local/var/pyenv/versions/3.6.0/lib/python3.6/asyncio/tasks.py", line 390, in _wait
    yield from waiter
concurrent.futures._base.CancelledError

2017-02-25 00:28:17,906: ERROR: Exception occurred while handling uri: "/ws"
Traceback (most recent call last):
  File "/path/to/project/venv/src/sanic/sanic/app.py", line 431, in handle_request
    response = await response
  File "/usr/local/var/pyenv/versions/3.6.0/lib/python3.6/asyncio/coroutines.py", line 128, in throw
    return self.gen.throw(type, value, traceback)
  File "/path/to/project/venv/src/sanic/sanic/app.py", line 193, in websocket_handler
    await handler(request, ws, *args, **kwargs)
  File "/usr/local/var/pyenv/versions/3.6.0/lib/python3.6/asyncio/coroutines.py", line 128, in throw
    return self.gen.throw(type, value, traceback)
  File "/path/to/project/hellosanic/serve.py", line 29, in websocket
    message = await ws.recv()
  File "/path/to/project/venv/lib/python3.6/site-packages/websockets/protocol.py", line 284, in recv
    loop=self.loop, return_when=asyncio.FIRST_COMPLETED)
  File "/usr/local/var/pyenv/versions/3.6.0/lib/python3.6/asyncio/tasks.py", line 307, in wait
    return (yield from _wait(fs, timeout, return_when, loop))
  File "/usr/local/var/pyenv/versions/3.6.0/lib/python3.6/asyncio/tasks.py", line 390, in _wait
    yield from waiter
concurrent.futures._base.CancelledError

Let me know if there's anymore details I can give you, or if I'm just doing something silly.

@jamesstidard I missed that, thanks. Sanic imposes a 60 second timeout on handlers, I need to circumvent that for websocket routes.

@miguelgrinberg No problem. Thank you for taking the time to implement WebSockets - I got the impression it was a low priority.

@jamesstidard yeah, probably not high priority for the project admins, but I personally would like to have it so that I can have sanic support in my socketio server.

@jamesstidard Let me know if your websocket client is now happy.

Seems to be behaving, Thank you.

I wouldn't say that it's not high priority. Just haven't had the time to implement it. I am curious though, from an ops perspective it might make more sense to have the websocket application be it's own process (outside of the sanic app). Curious what logic there is for having them run in the same loop, aside from convenience.

Not that I don't support this, since it at least makes sense on a small scale. On a large scale though, is it really the ideal way to run in production?

@r0fls As I mentioned above, I'm particularly interested in extending my Socket.IO server on to sanic (I already have aiohttp support). The Socket.IO protocol requires a combined HTTP + WebSocket interface on the same host and port, so it is really inconvenient if the servers are running separately, even if they share the same process as you currently recommend.
As far as plain websocket, I think there are use cases that benefit from a separate servers approach, like you say, but there are cases where that is an inconvenience. If you are into microservices, for example, you are probably well set up to have a separate websocket server that can share access to storage and other services. If you have a monolithic server, then there's going to be all sorts of problems if you are forced to host just the websocket service separately.

@miguelgrinberg
Please take a look at my comment : https://github.com/channelcat/sanic/pull/545#issuecomment-286952147

@miguelgrinberg I'm confused by your statement that "timeouts make no sense for websocket routes".
I agree that makes sense, but the code doesn't seem to keep the connection alive. Was that intended, or was that more of a TODO?
I.e. currently, it seems that we need to currently manage the ping/pong to keep sanic from disconnecting.

@dfee That statement I made was in relation to the bug reported in https://github.com/channelcat/sanic/pull/545#issuecomment-286952147. The timeouts I was talking about were the ones sanic imposes on all routes, which default to 60 seconds if I remember correctly. A WebSocket route will last for as long as the two parties are connected, so you can't apply that kind of timeout.

but the code doesn't seem to keep the connection alive.

Can you give me more details, or a way to reproduce this?

@miguelgrinberg gotcha.
Here's what I've done to work around that auto-disconnect (I manually intervene):
        while True:
            try:
                data = await asyncio.wait_for(self.ws.recv(), 30)
            except asyncio.TimeoutError:
                await self.ws.ping()
                continue

            handle(data) # …

@dfee this "auto-disconnect" that you mention, is it the client or the server doing it? Sounds like if you need to send pings to the client to prevent a disconnection it might be the client that has that requirement. I guess we can add a background ping to prevent this, but I'm not sure this is a problem in general, it might be specific to the client that you are using.

I'm using the latest version of Chrome. Does it not time out for you?

@dfee I don't recall getting timeouts, but maybe I did not leave the connection idle long enough. As far as I know, there isn't a required ping/pong frequency in the standard, this is left to handle by the client and server on their own. I'll look at how other ws servers do this, I honestly have no idea what the right frequency to ping might be. Consider that if you have 10K clients, you'll be running as many pings every 30 seconds.

Oh man. I tried for a couple hours this morning to get to the root of it. I finally did. This is not a problem with websockets or sanic.
I needed to add the following to my nginx config:
proxy_connect_timeout 7d;
proxy_send_timeout 7d;
proxy_read_timeout 7d;

Thanks for your help @miguelgrinberg


Add default container annotation

What this PR does / why we need it:
Will be a bit more easier for debugging.
Release note:
Add default container annotation into the Pod

/ok-to-test
/lgtm

now, the DCO is passed :)

Thanks!
/lgtm

/approve


how to solver  openssl/rand.h  No such file or directory

sqlite3-binding.c:21629:10: fatal error: openssl/rand.h: No such file or directory

@sayyoume  You need to install the OpenSSL as a dependency. If you are using windows, you can follow the instruction here https://github.com/xeodou/go-sqlcipher/wiki/Building#building-in-windows

,I solved it in Windows:
1、Download MinGW, I install [CodeBlocks 20.03 with MinGW compiler] to simplify the installation of MinGW; The donwload link is https://www.codeblocks.org/downloads/binaries/
(a) register 'MinGW/bin' in the 'Path' of System Environment, you can test this by open PowerShell and input 'gcc -v' to check the version of gcc compiler;
(b) let's assume the final installation path is 'C:\Program Files\CodeBlocks\MinGW'
2、Download OpenSSL, the version is 3.0.15; The download link is https://slproweb.com/products/Win32OpenSSL.html
(a) let's assume the final installation path is 'C:\Program Files\OpenSSL-Win64'
3、Copy 'C:\Program Files\OpenSSL-Win64\include\openssl' to 'C:\Program Files\CodeBlocks\MinGW\x86_64-w64-mingw32\include' or Make a symbol link
this step will add multiple openssl 'xxx.h' files to gcc;
4、Copy
(1) 'C:\Program Files\OpenSSL-Win64\lib\VC\x64\MD\libcrypto.def'
(2) 'C:\Program Files\OpenSSL-Win64\lib\VC\x64\MD\libcrypto.lib'
to
'C:\Program Files\CodeBlocks\MinGW\x86_64-w64-mingw32\lib'
and change 'libcrypto.lib' filename to 'libcrypto.a'
this step will add the 'libcrypto' library to gcc; if not, you will get error info below:
[Error] C:/Program Files/CodeBlocks/MinGW/bin/../lib/gcc/x86_64-w64-mingw32/8.1.0/../../../../x86_64-w64-mingw32/bin/ld.exe: cannot find -lcrypto


Added wuerfeldev.de

It's my own webpage, a ubuntu 18.04 look-alike
https://wuerfeldev.de

really cool page! it reminds me a lot of the old ubuntu demo page they made many years ago, wish it was still online! I'll add this to the list.


Classnames not generating correctly on first load

We are using Next.js v9.3.1. Not sure if it's a mix of issues with next and evergreeen or just evergreen.
This works fine in development
We are statically exporting the next app as well see this. Next.js has a two step build/export process for static sites.
The issue we are facing is below:

After refreshing page:

On first load, the components won't be rendered correctly (see the header). If you navigate to another page, the new page will render correctly (content below the header). If I were to refresh the page, all of the components on the page would not be rendered correctly. The only difference I can see between the two is the way the classnames are getting generated. 1 gets generated with the box emoji, the other gets ub
link to site

Downgraded to version 4.23.3 in order to get it to work.
I'm pretty sure this is because of https://github.com/segmentio/evergreen/pull/763
I'll test on 4.24.0 tomorrow

@Chrischuck what version of evergreen were you on originally?
Are you using extractStyles? You may need to manually set setClassNamePrefix before consuming evergreen (both server and client-side) - you could try setting it back to the default ub-

@mshwery I was on latest originally. I just tested v4.24.0 and it seems that's the jump that breaks.
I forgot to mention I did try setClassNamePrefix but that didn't help

I stand corrected, I gave setClassNamePrefix('ub-') another try and it works fine now


add first draft agenda

You can checkout the branch and run the following to get a preview:
docker run -it --rm -v ${PWD}:/mkdocs -p 7777:7777 \
                   -w /mkdocs elswork/mkdocs-diy mkdocs serve -a <IP_ADDRESS>:7777

I will merge this PR once I get full confirmation from invited speakers