ceil and floor are dangerous

What's the ceiling of my height? Much like log, ceil and floor don't make sense for strongly-united types. I could see ceil_in<unit>, but just ceil and floor aren't invariant against changes in the unit used.
I think these are the similar ones:

ceil
floor
round
trunc
I guess they are all transcendental?

ceil() was added to be consistent with std::chrono::duration. However, I agree that this is similar to our discussion about .number() and .number_in(Unit) here: https://github.com/mpusz/units/issues/412.

For the sake of generic programming, we probably should not remove ceil() and floor() as a user might now write a generic code like:
auto foo(auto v) { return ceil(v); }

and the above will work with arithmetic types, chrono::durations, units::quantity, and possibly other types as well.

We can consider adding unit-aware alternatives as we did for .number_in(Unit). The only question I see here is how the interface should look like.
Option A
ceil_in(metre, q);

This is consistent with .number_in(Unit), which takes the unit as a function parameter (to prevent issues with the disambiguation of dependent names). We can also reorder the arguments here.
Option B
ceil_in<metre>(q);

This is probably more readable but inconsistent with .number_in(Unit).

I like Option A, partially because it's what we use in Au. :slightly_smiling_face:  Here are some representative test cases to show example usages:
https://github.com/aurora-opensource/au/blob/703629f493a4a976cce7ce4c6e720f6617425093/au/math_test.cc#L660-L690
The main difference is that we spell it ceil_as(units, q), not ceil_in(units, q).  That's because of our idiom that "in" is a word that retrieves raw numbers, and "as" is a word that stays within the "quantity domain".  (We also have ceil_in(units, q) which gives a raw number.)
I also think it's valuable to be consistent with number_in(units).

For the sake of generic programming, we probably should not remove ceil() and floor() as a user might now write a generic code like:
auto foo(auto v) { return ceil(v); }

and the above will work with arithmetic types, chrono::durations, units::quantity, and possibly other types as well.

I don't really buy that argument.  I think the fact that it works with chrono::duration is a bug.
It's meaningful to ceil a number, but not to ceil a (notional) "quantity".  I think it's good to prevent this kind of generic code from working.  (Incidentally, I'm hard pressed to think of a use case for that code where we'd be glad if it worked for quantities, or durations for that matter.)

Also, to comment directly on the original issue post: yes, exactly!  And we have real world implementation experience that validates this approach (i.e., to provide round_in(units, q) instead of round(q), etc.)  We have unit-aware versions of round, ceil, and floor (not for trunc, but that's just an oversight).  Making units explicitly part of the API has been a significant improvement in safety and readability, and hasn't really caused any issues.

@chiphogg, thanks for the valuable feedback!

I don't really buy that argument. I think the fact that it works with chrono::duration is a bug.

Well, I was waiting for someone to say that 😉 It was just some rough idea of why it might be useful, but I also do not see a use case for that.
I will change that in V2 soon.

The one similar cmath function I would provide is nextafter. Like ceil and friends, it’s not invariant under change of units, but conceptually it finds a value that is bigger (or smaller) in a way that’s conceptually x + epsilon. It lets you turn a closed–closed bounding box into a half-open one.

Done in V2.


WIP: Power

I only have two objections.

Just some questions and comments, but good enough to merge.

retest

retest

retest

retest


Item frames do not function correctly when using other worlds.

I recently discovered that when I am using a world that is not the original world on the Multiverse plugin, item frames do not function correctly as when I put an item into it I am then unable to take it out of the frame again, regardless of the gamemode that I am in, unless I break the block supporting the frame. This is really inconvenient for the project that I am working on so I would be really grateful if this bug gets fixed! :)

using a world that is not the original world on the Multiverse plugin

Do you mean an imported world?
I have yet to experience this, item frames have always worked regardless if the world is "created" by MV or not (MV doesn't actually create the world, it makes the world the same way Bukkit would)
Do you have other plugins? This sounds like another plugin, not MV.
What is your MC/Spigot/Paper version?


Documentation js driver

Pushing in this repo as I don't have access to @michielmulders's remote. Original PR: #98 added 04ebb38 /cc @michielmulders

Codecov Report

Merging #99 into master will increase coverage by 0.31%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master      #99      +/-   ##
==========================================
+ Coverage    82.5%   82.81%   +0.31%
==========================================
  Files          21       21
  Lines         280      291      +11
==========================================
+ Hits          231      241      +10
- Misses         49       50       +1

Impacted Files
Coverage Δ

src/connection.js
93.33% <0%> (-0.79%)
:arrow_down:

Continue to review full report at Codecov.

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


[WIP] Change renderer setProps assignation logic

Currently setProps is passed to the components only if a component property is used as an input or a state in a callback. This causes two problems:

components do not update as expected as the props inside the component itself are only updated if setProps exists:
here we set the own-props https://github.com/plotly/dash-renderer/blob/91084ce9a86c960e310979ae8a572f83fe21d80b/src/components/core/NotifyObservers.react.js#L39
here we decide if there's a setProps https://github.com/plotly/dash-renderer/blob/91084ce9a86c960e310979ae8a572f83fe21d80b/src/components/core/NotifyObservers.react.js#L86

the table is in its own special land as it loops back on itself if it doesn't have a setProps (uses its own internal state to update itself) -- which is fine until the following happens: a callback updates the table AND no callback requires a table prop as input / state -- the table now updates itself into its state and receives updates into its props -- for reasons not detailed here, the table merges states unto props, overriding props in the process -- the net result is that the props update from the callbacks are overwritten by the table's state as in https://github.com/plotly/dash-table/issues/386

(the table will still need its loopback with this fix for standalone purposes)
Additionally, the current renderer logic is very permissive as to which props will be sent. If a prop is used as input / state, each time a prop is updated, all updated props will be sent to Dash. For most components the overhead is a minor nuisance but for the table, updating data and sending it back to Dash, if not required, is a major overhead, possibly orders of magnitude larger than the useful data.
This PR proposes a solution to both problems:

always pass setProps to the component
on setProps: (1) always update the component itself -- no more stale updates that are impossible to understand for users -- this is seriously probably the most frequent question I answer with "create a bogus callback on your prop as a temporary solution", (2) filter out the props that are not asked for by Dash

Problems that arise from this seem to mostly be related to the way we test..

[x] since we now update the components correctly all the time, the layout contains additional props, some of which are time sensitive (e.g. n_click_timestamp) -- I've adjusted the tests so as to be less dependent on the layout details
[ ] this needs to be used in tests from dcc, html, dash, table before going forward
[x] check performance impact (see Chris' comment)

Performance: https://github.com/plotly/dash-renderer/pull/126#issuecomment-469037201
Companion PRs (some are just to make sure tests pass and involve no real changes):
https://github.com/plotly/dash/pull/628
https://github.com/plotly/dash-core-components/pull/478
https://github.com/plotly/dash-html-components/pull/99
https://github.com/plotly/dash-table/pull/395

This looks like a good idea to me, but I'm not sure I'm aware of all the possible implications. @T4rk1n would you mind taking a look?

Only dispatch to Dash if at least one watched prop is updated

I think this implementation makes sense. I originally made "setProps" conditional for dcc.Graph hoverData - if someone was just displaying a graph but not listening to its updates, I didn't want to subscribe the event handler for the graph and have it cause the entire tree to re-render on every hover:
https://github.com/plotly/dash-core-components/blob/83a3ea07fd8af9ee3ca57c8da8ed32483e96f87c/src/components/Graph.react.js#L134-L141
In this PR, if you're only re-rendering the component if it is part of a callback, then there shouldn't be any adverse performance effects 👌

On another note, from a documentation point of view, we'll want to update our 'react for python devs' guide (https://dash.plot.ly/react-for-python-developers) as well as the boilerplate. Should mostly just be a lot of 🔪 though 😸

setProps being always present triggers a significant of additional updates for many scenarios, also setProps and loading_states being evaled on each render creates a new function and new object, forcing re-renders -- modified the PR with a very experimental attempt at limiting the re-renders at the source and simplifying the tree structure / logic -- I'll retag reviewers once I feel I've (1) addressed the performance concerns, (2) verified it works in known scenarios

@chriddyp Using the first example of https://dash.plot.ly/interactive-graphing
I get the following results for the current 0.19.0 renderer implementation and the implementation in this PR

Version
Hover
Initial renders
Hover renders

0.19.0
Yes
180
+45

0.19.0
No
150
+15

PR
Yes
37
+6

PR
No
33
+2

For the table, using v_be_page.py test implementation, the number of renders per cell modification drops from 4 to 1

Simplified the changes -- since the renders are mostly driven through changes to immutable values in the store, PureComponents + memoization actually provides no benefit.
Prepended renderer centric props with _dashprivate_.

@alexcjohnson I think this is ready for another look.
@chriddyp Did you have a chance to try it out against an existing / larger app?

did you still want to try it on a big app?

I shared the source of a private large app with @Marc-Andre-Rivet to test things out with. I'm 💃 either way.
Also note that there are a few places in the documentation that we should update once this is released:

dash component boilerplate repo - the sample example
the react for python devs tutorial on dash-docs
we might want to make some issues in our other component repos to remove setProps just to be internally consistent
also this could be closed https://github.com/plotly/dash-docs/issues/352
and this is partially addressed https://github.com/plotly/dash-docs/issues/435

@alexcjohnson @chriddyp
Did some actual performance tests, mostly against the dash-docs. Got the demo app working partially but against the latest version of dash but there were still multiple issues and not sure how significant the results really are.
In all cases, opening a new browser window for each version, the runs are all in the same tab. Version ordering changes randomly. One warm up run prior to taking results.
In the docs' dcc page, simply reloading the page gave the following results in milliseconds for 5 reloads:
Dash 0.39: 6046, 6228, 6135
Modified: 4667, 4653,4635
The sample is small but ~25% difference on 15 runs is probably significant.
Table paging page, clicking prev/nex 10 times each, in milliseconds:
Dash 0.39: 3398, 3421, 3223
Modified: 637, 640, 604
5-to-1 difference... this might be partially due to no callback requiring data
Table editing, modifying 10 cells per run, in milliseconds:
Dash 0.39: 2647, 2418, 2439
Modified: 1059, 1109, 1113
2-to-1 difference
The Graph example w/ hover, 20 hovers, in milliseconds:
Dash 0.39: 833, 385, 512
Modified: 671, 750, 588
Nothing significant with this set
The Graph example w/ hover, 5 page loads, in milliseconds:
Dash 0.39: 1996, 2006, 2104
Modified: 2037, 2073, 2009
Nothing significant with this set
It seems that at worse this has no impact for certain components (e.g. Graph) and that at best, for certain interactions the performance impact can be very significant.

Nice, those look encouraging. Another page I just thought of is https://dash.plot.ly/all. It's a "hidden" page that we used to generate a PDF version of the docs. It loads all of the pages in the docs at once (takes like 40 seconds to load), probably the most render intensive page that I can think of.

Dry run from a new tab gave:
Dash 0.39: "Updating..." disappeared after ~ 229 seconds
Dev tools crashed when trying to load the performance analysis 😁
Modified: "Updating..." disappeared after 17.2, 17.4 and 18.1 seconds

2 step merge -- will remove the refs for the feature branches of dcc and html right after tests pass everywhere


Retrieve canonical generate_params.toml via GH API

In https://github.com/deis/deisrel/blob/master/actions/generate_params.go and https://github.com/deis/deisrel/blob/master/actions/generate_params_e2e.go we construct local versions of the appropriate .toml files, but it would be better to pull the latest canonical versions of each from the deis/charts repo as these files change.

This is no longer relevant as deisrel no longer updates charts.


Add "IntelliCode Completions" to the pack

AI cool  :)
🤖🤖🤖
also it works offline (I think)

I agree

ok


Fix typo in README.md

I fixed the typo  because there is no word Regist :pray:

Great 👍
Thank you ! @unhappychoice


Fix unable to install CRD and CR in same syncset

Currently, we first gather info about all the resources before creating them.This way
we cannot create a CRD and CR in the same syncet, because to fetch the info about
the CR we need to first create the CRD. This PR fixes it by fetching info and creating
one resource at a time.
Jira: https://issues.redhat.com/browse/CO-540

I still think that we should switch from using h.Info to unmarshaling directly into an Unstructured. The discovery is unnecessary. You could build on top of #1019, which is already doing the direct unmarshaling.

We cannot fetch Resource type from the unstructured. Do we need it SyncStatus?

I still think that we should switch from using h.Info to unmarshaling directly into an Unstructured. The discovery is unnecessary. You could build on top of #1019, which is already doing the direct unmarshaling.

We cannot fetch Resource type from the unstructured. Do we need it SyncStatus?

That makes sense. We don't need it in the status, but we do need it perform a Delete.

Updated the PR

/lgtm


[4.x] Make Slim routing as extensible as possible

This PR would change some properties from private to protected in order to make the classes extensible.

Coverage remained the same at 100.0% when pulling b9460d7408baa5823abd2b577d8eac61e4c871d6 on adriansuter:patch-protected into 822c089c907885797da5962fabc24492872a56c3 on slimphp:4.x.

I feel like this is a bad direction to go in. Composition over inheritance states that we should compose functionality instead of creating extension. If anything needs to change in routing, it would be to break up the router into smaller classes so that implementations can be swapped.

Interesting, I need to look at that.

I don't think we should make these specific components extensible since they're implementations specifically made for use with the FastRoute library. I can't think of a use case where someone would extend these components. Let's leave them as is for now. I actually might change a few things around before Slim 4 major release here routing wise so we can implement other libraries like the Symfony router (TBD).


Genesis

WIP. BUild casa, wsclean, and various other images, see builder directory.
Let's not merge yet -- I'd like to run an end-to-end recipe fully with containers before we do that.

@SpheMakh this probably needs some poetry fixes from you.
We need the regular user install, which installs the *yml files under cultcargo and everything under cultcargo/genesis.
Then there's the developer install, for someone intending to build images.  poetry install ---with builder, I assume? This needs the builder script and manifest (under builder), as well as everything under images.

OK in combination with https://github.com/caracal-pipeline/stimela/pull/154, this seems fully operational.

@SpheMakh @Athanaseus, this seems to work for us all, I'm merging into master and releasing 0.0.2.


feat(elbv2): Add new Target resource

Description of your changes
Fixes #1401
I have:

[x] Read and followed Crossplane's contribution process.
[x] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested
Manually, using examples.

Ready for review. @haarchri can you take a look at this?

Can you please rebase ?

@haarchri Done


Military Symbology should be scale dependent

Summary of Issue Encountered:
As a user I should be able to zoom in to a map and have my military symbology draw based off of preset scales set for Command/Brigade/Battalion/ etc.
As a user I should be able to set the scale threshold on when each type of military symbology draws.
Current State:
This functionality is currently not possible.
Expected Results / Behavior
Scale dependent rendering of Command/Brigade/Battalion/ etc.
Version
Pro 2.2

Using the ability to showcase scale dependent layers based on echelons would be a great blog. This would showcase to our users how you can track elements from a company to a brigade.

This issue was moved to Esri/military-symbology#279


experience and education page modified

@smaranjitghose  Sir I have made all the changes discussed on slack for experience and education page. Please review.

Nice work! I guess with this PR, the majority of the work for this project's v 1.0.0 is done. Try to fix the bug in research page, I pointed out in your other PR and for the toggle button dm @anushbhatia

@smaranjitghose okay sir!


"t2t-query-server " got error

There were no error during after training translation model with t2t , exporting for server as well as launch server as described Serving
However when I "Query the Server", here came an error as below:
(tfgpu1.6-2.7) jack@ubuntu516:~/dev1.8t/corpus/mn-zh/trans/mn-zh-split/gpu2.7$ bash query_server.sh
>> ᠭᠠᠵᠠᠷ
Traceback (most recent call last):
  File "/home/jack/tools/ana2/envs/tfgpu1.6-2.7/bin/t2t-query-server", line 16, in <module>
    tf.app.run()
  File "/home/jack/tools/ana2/envs/tfgpu1.6-2.7/lib/python2.7/site-packages/tensorflow/python/platform/app.py", line 126, in run
    _sys.exit(main(argv))
  File "/home/jack/tools/ana2/envs/tfgpu1.6-2.7/bin/t2t-query-server", line 12, in main
    query.main(argv)
  File "/home/jack/tools/ana2/envs/tfgpu1.6-2.7/lib/python2.7/site-packages/tensor2tensor/serving/query.py", line 109, in main
    output_ids = query(stub, input_ids, feature_name=fname)
  File "/home/jack/tools/ana2/envs/tfgpu1.6-2.7/lib/python2.7/site-packages/tensor2tensor/serving/query.py", line 71, in query
    response = stub.Predict(request, FLAGS.timeout_secs)
  File "/home/jack/tools/ana2/envs/tfgpu1.6-2.7/lib/python2.7/site-packages/grpc/beta/_client_adaptations.py", line 309, in __call__
    self._request_serializer, self._response_deserializer)
  File "/home/jack/tools/ana2/envs/tfgpu1.6-2.7/lib/python2.7/site-packages/grpc/beta/_client_adaptations.py", line 195, in _blocking_unary_unary
    raise _abortion_error(rpc_error_call)
grpc.framework.interfaces.face.face.AbortionError: AbortionError(code=StatusCode.INVALID_ARGUMENT, details="NodeDef mentions attr 'index_type' not in Op<name=Fill; signature=dims:int32, value:T -> output:T; attr=T:type>; NodeDef: transformer/attention_bias_lower_triangle/attention_bias_local/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](transformer/attention_bias_lower_triangle/attention_bias_local/ones/packed, transformer/ones/Const). (Check whether your GraphDef-interpreting binary is up to date with your GraphDef-generating binary.).
	 [[Node: transformer/attention_bias_lower_triangle/attention_bias_local/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](transformer/attention_bias_lower_triangle/attention_bias_local/ones/packed, transformer/ones/Const)]]")

query_server.sh ：
export CUDA_VISIBLE_DEVICES="1"
t2t-query-server \
  --server=localhost:9000 \
  --servable_name=transformer \
  --problem=translate_mnzh_bpe32k \
  --data_dir=/home/jack/dev1.8t/corpus/mn-zh/trans/mn-zh-split/gpu2.7 \
  --worker_gpu=1

t2t-decoder works normally.

Similar issue here, it also raises an error on the server side:
2018-03-14 15:00:23.635301: E external/org_tensorflow/tensorflow/core/common_runtime/executor.cc:651] Executor failed to create kernel. Invalid argument: NodeDef mentions attr 'index_type' not in Op<name=Fill; signature=dims:int32, value:T -> output:T; attr=T:type>; NodeDef: transformer/attention_bias_lower_triangle/attention_bias_local/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](transformer/attention_bias_lower_triangle/attention_bias_local/ones/packed, transformer/ones/Const). (Check whether your GraphDef-interpreting binary is up to date with your GraphDef-generating binary.).
	 [[Node: transformer/attention_bias_lower_triangle/attention_bias_local/ones = Fill[T=DT_FLOAT, index_type=DT_INT32, _device="/job:localhost/replica:0/task:0/device:CPU:0"](transformer/attention_bias_lower_triangle/attention_bias_local/ones/packed, transformer/ones/Const)]]

Okay, I figured it out.
TF serving release is only 1.5.0
So you need to be in TF 1.5.0 when exporting the model
and still in TF 1.5.0 when serving
this thing is not going to be easy at all .....

Thank you @vince62s , Let me try it again.
Where did you find the "TF serving release is only 1.5.0"?

https://github.com/tensorflow/serving/releases

Thank you @vince62s , and only python 2.7 is supported!


Cannot create property display

just updated to 0.5.4 from 0.5.0, only changed the version, nothing else but suddenly getting the error message during build:
Cannot create property 'display' on string ' background-image: url(/images/my-image.png);'

Not sure if I need to change something, but thought it was worth flagging as it wasn't an issue before.

Stack trace

gridsome build
Gridsome v0.5.4
Initialize - 2.72s
Load sources - 0.32s
Create GraphQL schema - 0.16s
Set up routes - 0s
Generate code - 0.03s
Bootstrap finish - 3.23s
Run GraphQL (27 queries) - 0.55s
Compiling assets...
Compile assets - 14.95s
Failed to render /
TypeError: Cannot create property 'display' on string ' background-image: url(/images/wifi.png);'
at Object.show (/builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:17432)
at /builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:67861
at /builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:68127
at _t.Yi [as renderNode] (/builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:68348)
at _t.next (/builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:20511)
at n (/builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:18723)
at /builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:68225
at _t.Yi [as renderNode] (/builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:68348)
at _t.next (/builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:20511)
at n (/builds/SteveEdson/gridsome/node_modules/vue-server-renderer/build.prod.js:1:18723)
npm info lifecycle steve-2019-gridsome@~build: Failed to exec build script
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! steve-2019-gridsome@ build: gridsome build
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the steve-2019-gridsome@ build script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

What does the template or component where you have background-image: url(/images/wifi.png); look like?

It's not the cleanest right now due to my old Jekyll content, but it's done via a filter:

Vue.filter('generateBackground', (node) => {
        let styles = '';

        if(node.image)  styles += ` background-image: url(${node.image});`;
        if(node.imageStyle) styles += ` ${node.imageStyle}`;
        if(!node.image && node.background) styles += ` background: ${node.background}`;

        return styles;
    });

Did you use the same version of Vue before and after you updated Gridsome? I'm able to get the same error message with this code  when the filter returns a string. But it works when the filter returns an object instead.

I created a test in the Vue repo and got the same error. So it's a bug with vue-server-renderer.

@hjvedvik Is this something that we should report upstream, keeping this issue open until it's resolved in vue-server-renderer?

I also have a similar problem, this is my problem:
Could not generate HTML for "/about/":
TypeError: Cannot create property 'display' on string 'bottom:50px;right:40px;'
at Object.show (C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:17395)
at C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:68087
at C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:68353
at eo (C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:68574)
at C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:70675
at Yi (C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:67165)
at io (C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:70577)
at ro (C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:70208)
at eo (C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:67455)
at C:\Users\Juan Delgado\Documents\GitHub\codepici-blog\node_modules\vue-server-renderer\build.prod.js:1:70675
Does anyone know how I can fix it?

Hi
This sometimes happens if the style is passed into an element that's not being displayed.
Example is when you have something like:

A simple fix could be:

Are there any other known issues?
I have removed everything with that semanthics and still getting error:
TypeError: Cannot create property 'display' on string 'bottom:40px;right:30px;'

@SupremeSalvatore Do you have any vue directives that might dynamically affect the elements rendering?
Perhaps you can share the element

First of all, im not even sure that is the element since this is dynamic page.
Try this since its a template which should be displayed for section:
<template>
  <Layout>
    <content-header :title="$page.section.title" :sub="subTitle"></content-header>

        <CardItem
          v-for="edge in $page.section.belongsTo.edges"
          :key="edge.node.id"
          :record="edge.node"
        />

        <Pagination
          :baseUrl="$page.section.path"
          :currentPage="$page.section.belongsTo.pageInfo.currentPage"
          :totalPages="$page.section.belongsTo.pageInfo.totalPages"
          :maxVisibleButtons="5"
          v-if="$page.section.belongsTo.pageInfo.totalPages > 1"
        />

  </Layout>
</template>

I have resolved this successfully, the problem was with vue-backtotop component it couldn't be server-rendered, so I needed to wrap that component in <ClientOnly>.
Aswell I encounter an issue where I was using localStorage needed to wrap that in conditional to check process.isClient so it could be rendered. Hopefully, this helps someone starting out as well.


Fix Readme to mention primary CRDs

Build & BuildStrategy are the primary CRDs.

Hi Shoubhik,
Why the BuildRun CRD is not in primary CRDs? :)

Hi @sbose78 ,
FYI, In case you missed the question in this PR ^^ :)

BuildRun is more of a way to get things running, and the two others are really the way we specify the desired state. Having said that, I think BuildRun is too critical to not be called the primary crd
I'll fix this!

@sbose78 agree, pls fix this so we can merge this one :)

Check now? :)

/lgtm

/approve


Standardize icon component sizes

Create a shared const for the icon components DEFAULT_SIZE (probably 16).
Reference this instead of hard coded sizes in each icon component.
Check if any other components using the icons are setting the size to 16, if so, remove that code.

cc @ryan-henness-trimble
This won't be required anymore as we plan to add support for all the Modus Icons and keeping a typescript file for each icon is not an ideal method.


issue with the pascal port

I can compile my game by either using 10 years old enet dll, newer enet (2016) and pascal port, and when i run some normal tests on pasenet, the client will after a while stop receiving server updates. This doesn't happen with either of original enet dlls. The test is just 1 player connected to server on localhost, server sends about 12 kb/s and client uploads 0.70 kb/s, and i'm not totally sure how to check if the packets are getting fragmented from server to client.
For either client, packetloss is not registered in the peer structure, and client is still sending data and receiving it correctly on server (just no longer receiving data from host).
How can i make a test case that would work with you? could i compile pasenet as a dll, and we could somehow test it out, or should i work on changing code to RNL?

Correctly recognized, pasenet is now deprecated because of RNL. RNL offers all (pas-)enet features, even when they are implemented in a different way at RNL, and even more features, which are missing in (pas-)enet, for example encryption, authentication, IPv6 support, and so on.

I will give RNL a try, i will see how complex it is and maintain my enet code, so i can make tests and comparison :)
What amouts of clients can RNL serve? can it handle 50-100 clients per thread?

There is hardly any difference here compared to enet. The encryption, which is always active, causes indeed slightly more CPU load, but this shouldn't really matter how many clients RNL can handle at the same time in a single RNL instance.


Makefile, headers, copyrights, directories tree refactoring and Helm

WARNING: Merging without testing the working continuity due to forced requirement chances


Generating all subsequences of a given string

Generating all subsequences using bit masking.
Languages -

C [@ujjawal-1999]

C++ [@ujjawal-1999]

Java [@anime19]

Python [@neha07kumari]

I'll work on the C and C++ implementation. @VijayaGB98 please assign the task.

@ujjawal-1999 Go ahead. I will assign C and C++.
Make sure to follow contribution guidelines.

I would like to work in this issue in java please assign it to me.

@anime19 Go ahead with Java.
Please following the contribution guidelines when submitting your contribution.

I would like to work on this issue using python language

@neha07kumari Go ahead with Python.
Please following the contribution guidelines when submitting your contribution.

I would like to contribute to this in Python.

@peeky1811 Please check the first post to see whether the issue has been taken in the language that you are currently requesting for. Since it has been taken by someone else, I cannot assign you this issue in Python.

@peeky1811 Please check the first post to see whether the issue has been taken in the language that you are currently requesting for. Since it has been taken by someone else, I cannot assign you this issue in Python.

It's ok. 👍


Add gas-limit header parameter to Debug API POST /stamps/{amount}/{depth}

Related: https://github.com/ethersphere/bee/pull/3321
Similarly to the already existing gas-price header parameter, it would be good if the gas-limit could be controlled by the client as well. This could be used to implement a retry mechanism when the postage contract fails due to gas issues.

Seeing the Error: Out of gas issue again


[BUG]: Unable to get "Live web search and browsing" agent working using google custom search engine. Error: getaddrinfo ENOTFOUND - http errno: -3008

How are you running AnythingLLM?
AnythingLLM desktop app
What happened?
Running ollama locally/manually on Windows 11 Pro manual (manually built ollama to support my RX 6750 XT)
.\ollama.exe run llama3:8b-instruct-q8_0
Chat works fine. Embedded Document works. Embedded Scrapper works.
Setup "Live web search and browsing" agent using Google Custom Search (setup new api key and tested in browser url that it worked)
Run: @agent Can you scrape useanything.com and tell me the key features
[AgentHandler] Attached websocket plugin to Agent cluster
[AgentHandler] Attached chat-history plugin to Agent cluster
[AgentHandler] Attaching user and default agent to Agent cluster.
[AgentHandler] Attached rag-memory plugin to Agent cluster
[AgentHandler] Attached document-summarizer plugin to Agent cluster
[AgentHandler] Attached web-scraping plugin to Agent cluster
[AgentHandler] Attached web-browsing plugin to Agent cluster
fetch failed TypeError: fetch failed
at Object.fetch (node:internal/deps/undici/undici:11457:11)
at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
at async post (C:\Users\sshar\AppData\Local\Programs\anythingllm-desktop\resources\backend\node_modules\ollama\dist\shared\ollama.05b0f34c.cjs:81:20)
at async Ollama.processStreamableRequest (C:\Users\sshar\AppData\Local\Programs\anythingllm-desktop\resources\backend\node_modules\ollama\dist\shared\ollama.05b0f34c.cjs:183:22)
at async #handleFunctionCallChat (C:\Users\sshar\AppData\Local\Programs\anythingllm-desktop\resources\backend\server.js:20839:26)
at async OllamaProvider.functionCall (C:\Users\sshar\AppData\Local\Programs\anythingllm-desktop\resources\backend\server.js:20668:26)
at async OllamaProvider.complete (C:\Users\sshar\AppData\Local\Programs\anythingllm-desktop\resources\backend\server.js:20859:40)
at async AIbitat.handleExecution (C:\Users\sshar\AppData\Local\Programs\anythingllm-desktop\resources\backend\server.js:22536:28)
at async AIbitat.reply (C:\Users\sshar\AppData\Local\Programs\anythingllm-desktop\resources\backend\server.js:22526:25)
at async AIbitat.chat (C:\Users\sshar\AppData\Local\Programs\anythingllm-desktop\resources\backend\server.js:22377:19) {
cause: Error: getaddrinfo ENOTFOUND http
at GetAddrInfoReqWrap.onlookup [as oncomplete] (node:dns:108:26) {
errno: -3008,
code: 'ENOTFOUND',
syscall: 'getaddrinfo',
hostname: 'http'
}
}
[AgentHandler] End
Are there known steps to reproduce?
No response

Note:
When setting up Google Custom Search I generated API under the following section (not sure if this is correct but didn't see another way to generate API):
Programmatic Access
Custom Search JSON API
Limit of 10,000 queries per day.

Note:
I was running AnythingLLM as "standard user" when I submitted this issue. But have since confirmed same error if I run AnythingLLMDesktop.exe from "admin" terminal.

Do you have another device you could try testing this on using the same API keys? Also when you ask it to scrape/tell you key features, does the agent chat show a message similar to @agent: Searching on Google for "useanything.com key features"?
It sounds like it may be your firewall blocking the google search endpoints. I have tried to replicate this using an invalid search engine ID and API key and cannot get the same error, so I don't think your keys are wrong.

@tugzii and to confirm you can send a chat - just a normal chat without @agent to the workspace with no issue? This error is coming from ollama not being able to connect to the Ollama instance you are using for chatting. If it is broken in agents it should also be broken in regular chatting as well.
There is a slight difference with ollama in regular chat vs agent chat (fetch api vs Ollama SDK), but the connection information provided should be all the same.

I'm new to Ollama and AnythingLLM but yes, chat seems to be connecting to my local instance of Ollama to answer me.
As mentioned in initial post, I did have to build the Ollama code using the following instructions and run it manually from the cmd prompt (i.e. not as a service and I never downloaded and installed the original Ollama using their installer)
https://github.com/ollama/ollama/issues/3107#issuecomment-2144741411
See attach screenshots to confirm

I officially installed Ollama (for windows) and copied my compiled files to the official install location (instead of running from c:\Documents\Ollama):
C:\Users[username]\AppData\Local\Programs\Ollama
The errors above went away and I did get a response.
However, the response was not good as even thou it stated that it had scraped the website it gave me data from 2022.
Closing this bug report for now as the above issue no longer appears (but may raise a separate issue for the old scrape data)


how to know current index visible in viewport(header)

You can get it by
controller.sliverController.stickyIndex.value


Pressure returns wrong value

It seems that the modules doesn't any longer receive the pressure in mBar.
$ python3
Python 3.5.3 (default, May 10 2017, 15:05:55)
[GCC 6.3.1 20161221 (Red Hat 6.3.1-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from yahooweather import YahooWeather, UNIT_C
>>> yweather = YahooWeather(91543049, UNIT_C)
>>> if yweather.updateWeather():
...     print("Units:", yweather.Units)
...     print("Atmosphere:", yweather.Atmosphere)
...
Units: {'temperature': 'C', 'pressure': 'mb', 'distance': 'km', 'speed': 'km/h'}
Atmosphere: {'visibility': '25.91', 'pressure': '28174.76', 'humidity': '33', 'rising': '0'}

select * from weather.forecast where woeid=91543049 gives back a different value.

I'm only return data from yahoo, parse from json. Maby a json parse error?

Yahoo! is delivering the wrong values. Instead of the metric values (mbar) they return inches of mercury but say it's mb. Conversion factor is 33.86 (eg. 28107.04/830) which matches.
select * from weather.forecast where woeid=91543049 and u='c'

  "results": {
   "channel": {
    "units": {
     "distance": "km",
     "pressure": "mb",
     "speed": "km/h",
     "temperature": "C"
    },
    "atmosphere": {
     "humidity": "92",
     "pressure": "28107.04",
     "rising": "0",
     "visibility": "23.33"
    },

Ok. I think we need wait until yahoo! have fix that. I will look if I can make a bug request by yahoo!

Was there a response from Yahoo!?

There are a lot of bug request about that. Look like it is only on some regions a problem and need to be reported on yahoo! and they will fix that.


Failing E2E tests on main/release-0.5 branches

What happened:
E2E tests have been failing for some time in both main and release-0.5 branches (both in nightly and PRs').
They are passing intermittently and randomly in some PRs, i.e https://github.com/rancher/cluster-api-provider-rke2/actions/runs/10217935536 & https://github.com/rancher/cluster-api-provider-rke2/actions/runs/10179780057. They failed on the same PRs after re-trigger.
What did you expect to happen:
always passing E2E tests both in main/release-X branch.
How to reproduce it:
Both locally or by re-triggering the e2e tests in GH actions
Anything else you would like to add:
Environment:

rke provider version: v0.5.0
OS (e.g. from /etc/os-release): macOS

List of related PR's:

https://github.com/rancher/cluster-api-provider-rke2/pull/393 (main)
https://github.com/rancher/cluster-api-provider-rke2/pull/392 (main)
https://github.com/rancher/cluster-api-provider-rke2/pull/396 (release-0.5)
https://github.com/rancher/cluster-api-provider-rke2/pull/395 (release-0.5)

This can be closed, once #395 is merged (currently pending CI to pass)

This can be closed, once #395 is merged (currently pending CI to pass)

Closing as per above.


@for directive called with undefined

The @for directive is always called with undefined, causing actions to break if it doesn't check for undefined.
Reproducible example: https://codesandbox.io/s/bold-cloud-r3d1g
Version: latest commit (aeadf81)

After rendering all items, the original element doesn't get completely removed:
const xs = state([1, 2, 3]);

<div @for="x of xs">@(x)</div>

We have 3 elements rendered here, but actually 4 wrappers are initialized. The fourth one doesn't have x in its context, and this causes the error.

Fixed.


how to produce the final aligned pic？

how to produce a single pic, not a video

Here's a minimal code snippet for applying a pre-trained Spatial Transformer (non-clustering) to one image:
from models import get_stn
from utils.download import download_model
from utils.vis_tools.helpers import load_pil
from torchvision.utils import save_image

resolution = 512  # resolution the input image will be resized to (this can be any power of 2)
input_img = load_pil('my_image.png', resolution)  # load the input image and resize to (resolution, resolution)
ckpt = download_model('cat')  # download model weights
stn = get_stn(['similarity', 'flow'], flow_size=128, supersize=resolution).to('cuda')  # instantiate STN
stn.load_state_dict(ckpt['t_ema'])  # load weights
aligned_img = stn(input_img, iters=3, output_resolution=resolution)  # forward pass through the STN
save_image(aligned_img, 'output.png', normalize=True, range=(-1, 1))  # save to disk

If you're using the celeba or cub models, use iters=1 instead. If your input image isn't square you may want to pad or crop it beforehand.

thanks. : )


[New game]: Add a very unique maze game

🎮 Game Request
If you were lost in an unknown area. This game will help you to find your wat out . This maze game has been developed mainly using HTML,CSS.
I want to contribute this game project in this open source platform under GSSOC'23
Point down the features
This game includes unique art style (like  have a character , elements , and the pathway)
Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @apu52 !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

assign

/assign

Hello @apu52, Time's Uppp!⏰
Sorry for closing your issue!
But it's more than a week since we haven't received anything from your side 😢 .
Come up with new ideas, create a new issue and make sure you finish it within a week! 🔥
All the best! 🚀
Happy Hacking! 💗

Hey @apu52 ! Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


feat(executor): Decompress zip file input artifacts. Fixes #3585

Checklist:

[x] Either (a) I've created an enhancement proposal and discussed it with the community, (b) this is a bug fix, or (c) this is a chore.
[x] The title of the PR is (a) conventional, (b) states what changed, and (c) suffixes the related issues number. E.g. "fix(controller): Updates such and such. Fixes #1234".
[x] I've signed the CLA.
[x] I have written unit and/or e2e tests for my change. PRs without these are unlikely to be merged.
[x] My builds are green. Try syncing with master if they are not.
[x] My organization is added to USERS.md.

Assigning to @jessesuen for review of proto changes.


catkin: 0.7.25-1 in 'melodic/distribution.yaml' [bloom]

Increasing version of package(s) in repository catkin to 0.7.25-1:

upstream repository: git@github.com:ros/catkin.git
release repository: https://github.com/ros-gbp/catkin-release.git
distro file: melodic/distribution.yaml
bloom version: 0.9.7
previous version for package: 0.7.23-1

catkin
* fix GTest detection when cmake-extras is installed (#1091 <https://github.com/ros/catkin/issues/1091>)
* fix gtest_source_paths (#1088 <https://github.com/ros/catkin/issues/1088>)
* fix -egg-base path to point to the build space (#1090 <https://github.com/ros/catkin/issues/1090>)
* also rewrite shebang lines with whitespace in catkin_install_python (#1079 <https://github.com/ros/catkin/issues/1079>)

Waiting for other Melodic releases...


What to validate when post build validation?

When asking a question please also include where you looked for an answer (so we can update the documentation if needed).
I try to build sqlite3 with VC-LTL, it throw a error:

The set of post build checks isn't contractual; we add to the set over time as we discover ports and projects that take action hostile to cohesive function of the overall catalog.
I believe most of these post build checks are located in https://github.com/microsoft/vcpkg/blob/master/toolsrc/src/vcpkg/postbuildlint.cpp

Thanks, it is helpful.


chore(docs): Rename ReadMe to README

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Mark reQueueMovie test as skipped

Fixes #53
Marks the reQueueMovie test as skipped with comment explaining why.

Codecov Report

Merging #54 (c7e12c2) into main (ce5ec27) will decrease coverage by 0.95%.
The diff coverage is 89.65%.

@@             Coverage Diff             @@
##              main      #54      +/-   ##
===========================================
- Coverage   100.00%   99.04%   -0.96%
===========================================
  Files           16       18       +2
  Lines          285      314      +29
===========================================
+ Hits           285      311      +26
- Misses           0        3       +3

Impacted Files
Coverage Δ

hvpy/facade.py
96.29% <75.00%> (-3.71%)
:arrow_down:

hvpy/api_groups/movies/re_queue_movie.py
85.71% <85.71%> (ø)

hvpy/api_groups/movies/get_movie_status.py
100.00% <100.00%> (ø)

hvpy/parameters.py
100.00% <100.00%> (ø)

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

Failure looks like a theme issue for the docs. We can ignore it for now.


npm audit fix

Description
audit fixing + fixing next versioning in viz
Risk
Low
Deploy Plan

deploy all js services

PMRR


Add documentation on build tags/homeserver blacklists

People may be confused on how exactly to run optional tests, or how they should implement white/blacklists for their homeservers.
I don't think we should document every build tag that's placed in, but just a quick summary of where and why we normally use them would be good.

https://github.com/matrix-org/complement/commit/5a7037b87853cf9705c81c8c698ff7f270b4cb69


Import schema from a JSON template

Feature request
Hello :) In the current implementation of Schemas and Fields, there seems to be no way to import a JSON file to read into the schema constructor. I believe this used to be possible in an old version of Mimesis by using the following:
schema.load(path='./schemas/schema1.json').create(iterations=2)

With a schema json that looked like this:
{
    "id": "cryptographic.uuid",
    "name": "text.word",
    "version": "development.version",
    "owner": {
        "email": "personal.email"
    }
}

It would be great in the current implementation if it were still possible to do this alongside passing in a lambda function.
Thesis
It would be very useful if we could pass in a schema JSON template as an optional argument when constructing a new Schema object like so:
schema = Schema(schema_from_template="./templates/schema1.json")

Reasoning
Our use case involves being able to generate large quantities of random JSON documents based on various templates that we have. The number of different document types is large and ever increasing so we require a way of defining a new schema template, adding it to the templates directory and being able to pass that to our data generator code (which incorporates mimesis) without having to write any additional code.
Being able to define templates for mimesis in JSON files would make the tool much more flexible for fast-changing data generation requirements like ours
Thanks!

@jjgriff93 Hi! Thanks for a great idea! I'll work on it this weekend.

Amazing, thanks @lk-geimfari - excited to use it!

Well, this is not as easy as it looks. Most of the fields accept parameters (like Gender etc.), so I'm not sure about this feature. I'll not close this issue, but this feature is not in priority right now.

Okay understood - yes think the parameter passing will need a re-think for this


Quick Sort on DLL

Related Issue

QuickSort on Doubly Linked List (https://github.com/Lakhankumawat/LearnCPP/issues/631)

Proposed Changes

Added C++ implementation of Quick Sort on DLL
Added its Readme file as well

Additional Info

Any additional information or context

Checklist

[x] ✅ My code follows the code style of this project.
[x] 📝 My change requires a change to the README.
[x] 🎀 I have updated the README accordingly.
[x] 👀 I have read the CONTRIBUTING document.
[x] ✨ I have added tests to cover my changes.
[x] 🚩 All new and existing tests passed.
[x] 🌟 ed the repo

[ ] Bug fix (non-breaking change which fixes an issue)
[ ] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to change)

Output Screenshots

Screenshot #1
Screenshot #2

Test Case 1
Test Case 2

You can still modify readme further
You need to follow particular guidelines for your README , please follow
these guidelines click here
also you can see how your README should look like see here
for more please go through these here

Overall your contribution looks good

LGTM

This PR was regarding Quick sort. Why have you committed the code for cocktail sort as well ?

closed


support benchmarking

What does this PR do?
This adds support for benchmarks to our test command.
Guide
To add benchmarks to an integration:

Replace pytest in requirements-dev.txt with pytest-benchmark. pytest itself is already a transient dependency.

In tox.ini, append --benchmark-skip to each actual test command. To keep it DRY and use a default pytest command you can do e.g.:

[testenv]
...
commands =
    ...
    pytest -v --benchmark-skip

In tox.ini, add a benchmark env. The name must begin with bench so our invoke task can detect it. Append --benchmark-only and --benchmark-cprofile=tottime to the pytest command e.g.:

[tox]
...
envlist =
    ...
    bench
...
[testenv:bench]
...
commands =
    ...
    pytest --benchmark-only --benchmark-cprofile=tottime

In the tests directory, create a test_bench.py so all the benchmarks will be in a single location.

Create your benchmarks!

Benchmark tests
A benchmark looks like this:
def test_thing(benchmark):
    benchmark(thing, thing_arg1, thing_arg2, thing_kwarg1='over', thing_kwarg2=9000)

You do not need to import the benchmark fixture from anywhere, it's automagically available. Here's a full example:
from datadog_checks.envoy import Envoy

def test_run(benchmark):
    instance = {'stats_url': 'http://localhost:8001/stats'}
    c = Envoy('envoy', None, {}, [instance])

    benchmark(c.check, instance)

Running benchmarks
To run the benchmarks only, pass --bench to our inv test task. They will be skipped otherwise.
Future

When we stabilize our CI machines' specs, we can commit and compare data from past runs.
We can add resource utilization stats (memory, cpu, etc.)

Exactly correct, thanks!


Error Messages are not displayed when they are only strings when using nunjucks rendering engine

In flash-messages.html the test {% if message %} is always true, either if message is a string or an object, so always the "object" route is taken.
I extended the test to {% if message.title or message.detail or message.list %} which solves this problem, but there should be a better solution.

One Option would be to create a custom filter.
In keystone.js add:
var cons = require('consolidate'),
      nunjucks = require('nunjucks');

cons.requires.nunjucks.addFilter('is_object', function(obj) {
	return typeof obj == 'object';
});

and then in templates/mixins/flash-messages.html {% if message %} has to be changed to {% if message | is_object %}.
I can create a pull request if necessary.


Update composer.json

Composer throws an error when trying to install Bootstrap Date/Time Picker

@Eonasdan when can we get this committed?


fix(theme): applied tw nested group

closes #3544
closes #2324
closes #2959

📝 Description
Applied nested group to components so that styles from other components won't mess up with others.
⛳ Current behavior (updates)
let's say there is a switch component inside a table row with select button. clicking select button would also toggle the switch. The reason is that when we click select, data-selected for select will be set to true. However, all group-data-[selected=true]:* in switch component will be applied as well since all components share the same parent group.
🚀 New behavior
To avoid it, we can simply set nested group so that the group won't be conflicted.
💣 Is this a breaking change (Yes/No):

📝 Additional Information

Summary by CodeRabbit
Summary by CodeRabbit

New Features

Enhanced styling for various components including autocomplete, checkbox, date input, date picker, input, radio, select, and toggle to improve clarity and maintainability.

Bug Fixes

Addressed styling issues related to nested groups in the theme framework, ensuring better visual consistency and functionality.

Chores

Updated class naming conventions across multiple components for improved specificity in styling.

Hey @wingkwong, could you please fix the conflicts?

@ryo-manba updated. thanks.

@wingkwong
Will this issue also be fixed?

https://github.com/nextui-org/nextui/issues/3725

@wingkwong Will this issue also be fixed?

[BUG] - Table selection - Unintuitive behaviour #3725

Just tested with PR docs and still got same result. I don't think it's not related to this PR.


US913065: Update to latest base image release

Ticket: https://internal.almoctane.com/ui/entity-navigation?p=131002/6001&entityType=work_item&id=913065

A developer build has not yet been created for this branch. Click here to go ahead and create the build...

CI Build Link:
https://sou-jenkins2.swinfra.net/job/MicroFocus/job/MicroFocus~fortify-issue-manager~US913065~CI


Pickling grad functions

Hello! I'm attempting to use autograd gradient functions with Python's multiprocessing package. The package passes data to the processes it creates by pickling all the objects. When I try to pickle a grad func, I get:
PicklingError: Can't pickle <function grad.<locals>.gradfun at 0x10abaf048>:
     attribute lookup grad_logp_wrt_argnum_0 on autograd.core failed

When trying to pickle the function, Pickle needs to know about grad_logp_wrt_argnum_0 so it needs to be in the name space. But I'm not sure how to get this object from autograd. It's cool if I need to find another way to do my parallel stuff, but I'm wondering if it is possible to make the grad functions pickleable.
Great package, this stuff is amazing.

Just as an update, I worked around it. I created the grad functions after the containing objects get passed to the processes.

Two semi-related thoughts:
First, you generally can't pickle dynamically created functions:
In [1]: def foo():
   ...:     def bar():
   ...:         pass
   ...:     return bar
   ...:

In [2]: f = foo()

In [3]: import cPickle as pickle

In [4]: with open('blah','w') as outfile:
   ...:     pickle.dump(f, outfile, protocol=-1)
   ...:
---------------------------------------------------------------------------
PicklingError                             Traceback (most recent call last)
<ipython-input-4-936b70c81ccd> in <module>()
      1 with open('blah','w') as outfile:
----> 2     pickle.dump(f, outfile, protocol=-1)
      3

PicklingError: Can't pickle <type 'function'>: attribute lookup __builtin__.function failed

To be picklable, functions need to be defined at the module level, which grad functions aren't. I think there are some other multiprocessing libraries that use different serialization techniques (and maybe the dill library) and can handle this case, but I'm not familiar with them.
Second, you may be able to avoid pickling entirely by passing a reference to this generated grad function through through a global (i.e. module-level) variable instead of as an argument, if that's possible with your program design. That exploits the fact that multiprocessing calls fork, and forked processes have (copy-on-write) access to their parents' virtual address spaces. That technique can significantly reduce overhead as well, since it means less serialization and IPC. I found something of a minimal example I wrote a while ago, but if you're interested in more let me know.

I'm going to close this because it's not an autograd-specific issue; any method for pickling (or doing multiprocessing with) inner functions should work.


+sociallink shortcode

Added a sociallink shortcode that creates an anchor link for author socials from config file.

New to Hugo and not entirely comfortable with it. Reviews appreciated. :)

@mnjm closing this one. Please open an issue so that this gets discussed. Don't feel like adding more code to the theme without a clear use-case. This will increase the complexity of maintaining the project and it seems to be quite redundant with the already existing author blocks.

I also had second thoughts about this. I only use it to add socials on the lander page (like about) and sorta realized it might be redundant. Anyways
Thanks for the theme; Really appreciate your work . @nunocoracao


GetGeometryFromName: use pk if name is not defined

Geometry should be searchable by pk, if name is not available.
Note: pk is shown in UI (if name is not available)

If this is merged, #20 should be marked as merged as well automatically.


Document testQuick in welcome screen

Useful in both diagnosing and dealing with flaky tests

any chance that some of these useful commands could be added to the README.md (section about building from source)

Sure I will add in testQuick briefly (otherwise just duplicating info) but from what I can tell most of the stuff in README.md (i.e. https://github.com/apache/incubator-pekko/blob/0bb2e8668b2a77fe9b57a5ab61a96d9c6e70317f/README.md#L24-L47) should probably sit in CONTRIBUTING.md

So the discussion on what stuff sits in README.md vs CONTRIBUTING.md can be made elsewhere, just updated PR to add sbt testQuick in README.md

We have to keep the README stuff for a few days anyway because it is linked in the vote thread email.
I still think we need 2 docs - the detailed one for people who want to get super involved with Pekko contributing and one for more casual users who might just want to do some cursory checks on the source distribution.


Update README.md

Maxim's edited and updated ReadMe. Improved the descriptions, made changes for readability and clarity.

Note: CircleCI check fails as I am not a registered user.


[Bug]: Specification 4 Not Fully Implemented

Bug Description
"A semantic line break must occur after a sentence, as punctuated by a period (.), exclamation mark (!), or question mark (?)."
Exclamation marks and question marks are not considered for inserting a semantic line break.
Keep up the good work.
Relevant Screenshot
https://user-images.githubusercontent.com/1460531/169386988-8e5ebb98-bdc6-4519-8f63-cfe586b099f3.MOV
To Reproduce
Use the following test text and toggle the semantic line breaks:
What is a semantic line break? When writing text with a compatible markup language, add a line break after each substantial unit of thought. That's it! In a nutshell.
Obsidian Version
Mobile Insider: 1.2.2 (53) -- API v0.14.11
Which editor are you using?

[X] New Editor
[ ] Legacy Editor

Checklist

[X] I updated to the latest version of the plugin.

Thanks!

thanks for the bug report. I worried so much about edge cases like footnotes at the end of a sentence, that I totally forgot ?!– 🙈


chore: release 2.2.0

:robot: I have created a release beep boop
2.2.0 (2024-12-13)
Features

add some type utility functions to test if an object is execution message (d726b39)

Bug Fixes

update dependency @types/node to v22.10.2 (#12) (5bdf1d6)

This PR was generated with Release Please. See documentation.

:robot: Created releases:

v2.2.0
:sunflower:

This issue is included in v2.2.0.


menu item not showing after install

i installed on my local version 4.3.9
i see it in the list of plugins under general
but i dont have the flag menu item
any idea

Hello, have you installed the plugin via npm? Do you have the latest version of plugin?
Also I'd recommend to have the latest version of Strapi installed.
I can't reproduce the issue right now, everything works as desired. Do you have some specific Strapi configuration?
Lastly, I'd try to install the plugin on the clean Strapi instance and see whether it works on your machine.

Hi, yes i installed with npm
and latest version
should i add it in the plugins.js ?
because it doesnt exist there

That's weird, all of this should happen automatically via Strapi Core.
One more thing that comes to my mind: Did you run the build command after installing the plugin? Admin needs to be re-built after that.

yep the build did the magic :)
thanks

Happy to help!
We'll be glad for any feedback regarding the plugin as we're eager to improve to our users needs!
Currently working on an update that allows you to selectively assign the "Strapi default language values fallback" for any of the untranslated values (think images, boolean, numbers, relations, ...).


fix: remove hours limit for parseDuration

Closes #5416

As mentioned in the issue, I reviewed the Temporal.Duration spec to align the behavior. It seems that the hours value can go up to 130 and beyond, with no explicit maximum limit. Therefore, I’ve adjusted the maximum value to be Infinity.
The previously invalid case P18Y7MT30H15S is valid in Temporal spec, as it returns:
{
    years: 18,
    months: 7,
    weeks: 0,
    days: 0,
    hours: 30,
    minutes: 0,
    seconds: 15
}

As a result, I’ve updated the test case accordingly.
Additional Notes: Currently, only the hours property has had its maximum value limit removed, but properties like years, months, minutes, and seconds should also not have maximum limits. To fully align with the Temporal.Duration specification, I think it’s necessary to remove the maximum value restrictions for all these properties.
✅ Pull Request Checklist:

[x] Included link to corresponding React Spectrum GitHub Issue.
[x] Added/updated unit tests and storybook for this change (for new code or code which already has tests).
[ ] Filled out test instructions.
[ ] Updated documentation (if it already exists for this component).
[ ] Looked at the Accessibility Practices for this feature - Aria Practices

📝 Test Instructions:

🧢 Your Project:

message from original implementer

The limits incorporated were a result of trying to adhere to the ISO8601 standards for a Duration string
My understanding is that based on ISO8601 standards, date and time values can’t exceed their moduli - so a duration string of P18Y7MT30H15S would not technically be a valid in ISO8601 standards
However based on the temporal spec (and the example you shared that the spec accepts overflow), I did a quick test and navigated to https://tc39.es/proposal-temporal/docs/duration.html#new-Temporal-Duration and input the following in the browsers console: Temporal.Duration.from('P18Y7MT30H15S') and no errors are thrown. So that would suggest to me that the temporal spec does indeed accept overflow, despite ISO8601 standards suggesting otherwise

Seems like there was a discrepancy in the specs, but I think we're ok to go ahead with this, though we should really do it for all the fields asap, otherwise we're going to have a weird state in the API during the transition

Looks like we should remove the limits on all of the segments, not just hours. This should also parse:
Temporal.Duration.from('P99Y99M99DT99H99M99S')

I agree! Would it make sense to set the max for years, months, days, minutes, and seconds to Infinity as well? It seems unnecessary to use parseNumber(group.replace(',', '.'), min, max) in this case. Wouldn't it be simpler to replace it with Number(group.replace(',', '.')) instead? Would there be any issues with doing it this way?

Yeah that seems fine to me

Yeah that seems fine to me

I've modified parseNumber(group.replace(',', '.'), min, max) to Number(group.replace(',', '.')) to remove the min and max limits for all segments. @snowystinger @devongovett Please review again.


Add std.io.Writer and std.io.Reader support for zap.SimpleRequest

Currently the only (exposed) way to send response is to create buffer where you write whole response and you send that. However it would be way more useful to have support for std.io.Writer (and potentially std.io.Reader for reading body of the request) as it would allow developer to use std.fmt functions. This however requires changes upstream as calling http_send_body repeatedly sets incorrect content-length header (it will be set to length of last chunk instead of length of the whole written data).

That would be a nice addition if facilio supported it. Can you verify everything works well when you set the content-length after the final write?
My hunch is that after sending the connection is in an invalid state internally.
Another thing to consider is who owns the memory with writer support.
You can always use an arraylist's writer and write into that; then call send on the arraylist's items. That's what I would do and is only 2 lines of code or so.  That's why I am not yet convinced of the added value.
Plus, wrapping facil.io, we'd need to somehow keep a reference to the underlying Reader / Writer context and in the case of Writer: buffer / ArrayList. The easiest way would be to wrap this functionality in a separate struct that you pass the Request:
const reader = zap.Reader(request);
var writer = zap.Writer(request);
// use writer
// send the buffer:
writer.flush(); // ?
// or
writer.send(); // ?
// or
r.sendBody(writer.buffer);
Since you're already playing with it, consider submitting a PR ;-)

I have written my wrapper around zap.SimpleRequest where I have:
pub fn writer(self: *const Self) Writer {
    return .{ .context = self };
}

pub fn sendBodyChunk(self: *const Self, chunk: []const u8) zap.HttpError!usize {
    const ret = zap.http_send_body(self.req.h, @as(
        *anyopaque,
        @ptrFromInt(@intFromPtr(chunk.ptr)),
    ), chunk.len);
    if (ret == -1) return error.HttpSendBody;
    return chunk.len;
}

And it seems to work quite ok.

Yeah, I figured. But nothing stops you from wriing into an ArrayList, then passing its items to zap.


HTML file: revise MOTW

In the generated HTML file are two comments fot the MOTW.
Only one is necessary.

Released with version 2.24.02


ld.exe: cannot find -lmatrix-3ds-sdk

$ make
linking miitrix-master.elf
c:/devkitpro/devkitarm/bin/../lib/gcc/arm-none-eabi/11.2.0/../../../../arm-none-eabi/bin/ld.exe: cannot find -lmatrix-3ds-sdk
collect2.exe: error: ld returned 1 exit status
make[1]: *** [/opt/devkitpro/devkitARM/3ds_rules:42: /e/3ds_dev/miitrix-master/miitrix-master.elf] Error 1
make: *** [Makefile:168: all] Error 2
Having issues with my ld.exe not finding the libmatrix-3ds-sdk using mys2 through devkitpro. But, It's there, meaning I have all of the dependency and successfully compiled the master sdk and installed it, but it's not being found. Any guidance would be helpful as I'm trying to compile  miitrix chat app. I left the error above from the app I'm compiling.

hello, don't know if you still need help with this issue, i'll tell you how i resolved this issue, note that it worked for me, i hope it's going to work for you too.
What i did was browse to this location C:\devkitPro\portlibs\3ds\lib, should be the same for you.
There was a file libmatrix-3ds-sdk-master.a, i renamed this file to libmatrix-3ds-sdk and when i tried to compile it, it succeeded.

Trying again on manjaro (after installing the sdk as instructed from its README)
And after running make in miitrix I get this:
linking miitrix-master.elf
/opt/devkitpro/devkitARM/bin/../lib/gcc/arm-none-eabi/13.2.0/../../../../arm-none-eabi/bin/ld: cannot find -lmatrix-3ds-sdk: No such file or directory
collect2: error: ld returned 1 exit status
make[1]: *** [/opt/devkitpro/devkitARM/3ds_rules:44: /home/maxbick/Documents/miitrix-master/miitrix-master.elf] Error 1
make: *** [Makefile:168: all] Error 2


Kore check functions task2

Addresses Task 2 of #2472

Review checklist
The author performs the actions on the checklist. The reviewer evaluates the work and checks the boxes as they are completed.

[ ] Summary. Write a summary of the changes. Explain what you did to fix the issue, and why you did it. Present the changes in a logical order. Instead of writing a summary in the pull request, you may push a clean Git history.
[ ] Documentation. Write documentation for new functions. Update documentation for functions that changed, or complete documentation where it is missing.
[ ] Tests. Write unit tests for every change. Write the unit tests that were missing before the changes. Include any examples from the reported issue as integration tests.
[ ] Clean up. The changes are already clean. Clean up anything near the changes that you noticed while working. This does not mean only spatially near the changes, but logically near: any code that interacts with the changes!

@ana-pantilie @emarzion When I run make all, the only binaries that are copied to .build/kore/bin are kore-exec, kore-parser, and kore-repl. Should we also be copying kore-check-functions, kore-format, kore-match-disjunction, and kore-prof from .stack-work/install/.../bin/? If yes, then for kore-check-functions we should add in include.mk:
KORE_CHECK_FUNCTIONS = $(BUILD_DIR)/kore/bin/kore-check-functions
KORE_CHECK_FUNCTIONS_OPTS = --no-bug-report
export KORE_CHECK_FUNCTIONS
export KORE_CHECK_FUNCTIONS_OPTS

and
$(BUILD_DIR)/kore/bin/kore-check-functions:
        $(STACK) $(STACK_BUILD) $(STACK_NO_PROFILE) --copy-bins kore:exe:kore-check-functions

Additionally in Makefile:
.PHONY: all clean docs haddock \
        test test-kore test-k \
        kore-exec kore-repl kore-check-functions

and
kore-check-functions: $(KORE_CHECK_FUNCTIONS)

Keep in mind Make uses tabs but these code blocks use spaces.


Problem with initial configuration

I am setting up Laravel-Parse with a brand new Laravel project I have created, and I'm stuck at the beginning. I was able to install laravel-parse with composer, and according to the documentation, the next step is to add:
'GrahamCampbell\Parse\ParseServiceProvider'
To the 'providers' array in config.app.php. When I add this, I get:
PHP Fatal error:  Undefined constant 'GrahamCampbell\Parse\ParseServiceProvider' in app.php on line 126
I noticed that all of the other entries in 'providers' end with "::class", so I tried adding that, and I then I get:
PHP Fatal error:  Class 'GrahamCampbell\Parse\ParseServiceProvider' not found in vendor/laravel/framework/src/Illuminate/Foundation/ProviderRepository.php on line 146
Did I miss a step here?
EDIT: Forgot to mention, I'm running Laravel v5.2.7, and PHP v5.6.13.

Never mind. Looks like something went wrong with my initial install through composer, and I missed it. Looks like it's working now. Sorry!


[zh-cn]Reference files to sync task 18

Reference files to sync task 18
Related to task-18 of issue https://github.com/kubernetes/website/issues/39987.

/approve

/lgtm


Add YAML linting and fix pre-existing issues.

Run yamllint as a pre-merge check, complete with shiny GitHub integration so lints show up on PRs.
Fix all the pre-existing lint errors and warnings so the check passes cleanly.
I've removed the disused update-image-tag GitHub workflow rather than fixing its lints.
To fix the YAML for the Prometheus ruletests, I had to remove the label for the playbook link (see commit, it's a bit of a rabbithole and I'll fix it in a followup).
I've also avoided the use of multiple merge keys (<<) in the same object. Helm and Kubernetes are fine with this, but it's unspecified behaviour in YAML (see commit) and it makes VS Code complain a lot. There's an active feature request on the linter for this.
Sorry for the big PR. I've curated the commits for ease of reviewing, so hopefully it's not too much of a pain. Definitely recommend reviewing this commit-by-commit.
Tested:

Verified no important diffs in output using yq -j in the cases where I've introduced multiline strings.
Tested end-to-end in staging by pointing the Argo CD app-of-apps app's spec.source.helm.targetRevision at the PR branch temporarily via k -n cluster-services edit app/app-config. The sync resulted in no changes apart from the whitespace changes in the nginx configmaps.

Rebased to fix merge conflicts (deletion of cache-clearing service in staging/prod).


gnome: can't edit user profile

Changing user Full Name and Profile Picture using Settings -> Users -> My Profile from the settings application never gets applied and no errors are displayed.

This is not supported in nixos, and probably will never be. Changing full name will change /etc/passwd, which is managed by nixos. Same applies to datetime settings, it's not possible to change them from the desktop, the same reason why nixos disabled systemd-timedated.
Also changing users from the control panel will never be supported.
Everything that changes system stuff imperatively through systemd services is unsupported.

But, maybe we can disable changing these settings by patching gnome.

Yeah, if possible we should try providing a workaround for chaning the profiles and/or a warning or error message, just to know what's going on (the wiki is a good place for this)

Maybe a big fat warning in the NixOS installation guide that any system-wide settings can only be set by the NixOS way.

(triage) where should that documentation go?

I can set profile picture using the Control Center just fine on NixOS with GNOME 3.24, modulo #29983.
Regarding the real name setting, the problem is Control Center does not check if the real name was changed. It should display an error message on failure. Unfortunately, libaccountsservice does not return errors on failure:
https://lazka.github.io/pgi-docs/AccountsService-1.0/classes/User.html#AccountsService.User.set_real_name
We need to convince libaccountsservice maintainers to add functions with error handling and then convince gnome-control-center to use those methods.

triage: anything else that should be done?

We are waiting for AccountService rewrite so that Control Center could display errors.

Even if it were best-effort, I do not think manipulation file on the computer and then rebuilding is a good idea, there are just too many things that cannot be handled IMO:

The configuration can change but not yet be rebuilt, changing accounts would apply the other changes as well.
/etc/nixos can be read-only network mount.
The user might want to track the changes in version control.
The config is more than just setting nested attributes.

The only way to make configuration.nix machine-editable is if strong limitations on the syntax are enforced by something like visudo.

Even if it were best-effort, I do not think manipulation file on the computer and then rebuilding is a good idea, there are just too many things that cannot be handled IMO:

The configuration can change but not yet be rebuilt, changing
accounts would apply the other changes as well.

This is indeed a problem nixos has and emacs doesn't: emacs just adds
the lines to the file and then changes the running configuration live,
and next boot will take into account all the changes in the file, which
is expected while an automated rebuild isn't expected in nixos.

/etc/nixos can be read-only network mount.
The user might want to track the changes in version control.
The config is more than just setting nested attributes.

All these are also potential issues for emacs. What they mean (for
points 2 and 4) is that there must stay a way to make the edit fail --
but that should be handled by the accountservice bugfix, when it will be done.

The only way to make configuration.nix machine-editable is if strong
limitations on the syntax are enforced by something like visudo.

Not necessarily, emacs handles it by having a zone in the file where it
has its own syntax (and only a zone of it). In nixos terms, this could
translate into a /etc/nixos/autogenerated.nix that would be imported
from the default-generated config, and would have the strong limitations
on syntax (and nixos assertions would make sure no user settings
conflict with auto-generated settings).
See also https://discourse.nixos.org/t/user-friendly-nixos-distro/1348 ,
that is related to what I am speaking about -- here the “graphical
configurator” would be the gnome UI.

It's not clear to me whether I currently should be able to set a custom profile picture through Gnome's built-in settings or not. What I can say is that on unstable, with Gnome 3.36.1, it does not work for me.
Apr 15 23:29:12 laptop accounts-daemon[18839]: g_file_info_get_attribute_uint32: assertion 'G_IS_FILE_INFO (info)' failed
Apr 15 23:29:12 laptop accounts-daemon[18839]: g_file_info_get_file_type: assertion 'G_IS_FILE_INFO (info)' failed
Apr 15 23:29:12 laptop accounts-daemon[18839]: g_file_info_get_attribute_uint64: assertion 'G_IS_FILE_INFO (info)' failed
Apr 15 23:29:12 laptop .gnome-control-[23124]: SetIconFile call failed: GDBus.Error:org.freedesktop.Accounts.Error.Failed: file '/tmp/gnome-control-center-user-icon-K0IWI0' is not a regular file

@austinbutler Thanks, completely forgot about this one. Opened https://github.com/NixOS/nixpkgs/issues/85357

I can set profile picture using the Control Center just fine on NixOS with GNOME 3.24, modulo #29983.

This doesn't seem to be the case on GNOME 40.1 for me (in the Wayland variant at least, I haven't tried the XOrg one).

I can set profile picture using the Control Center just fine on NixOS with GNOME 3.24, modulo #29983.

This doesn't seem to be the case on GNOME 40.1 for me (in the Wayland variant at least, I haven't tried the XOrg one).

I second this. Can't set a profile picture using Control Center.  It allows me to choose an image, even crop it, but when I click "Select", the crop screen just closes and the selection icon has not changed.
I can however do cp icon.png /var/lib/AccountsService/icons/$USER which works fine.
$ nixos-version
21.05.1590.63ee5cd99a2 (Okapi)
$ gnome-shell --version
GNOME Shell 40.1

The file /var/lib/AccountsService/icons/$USER shows that it will look for the profile picture in /home/$USER/.face. Symlinking or putting an image file at this location will make it show up on your lock-screen/account.

Is this issue still not fixed? Can anyone verify this?

I'm on NixOS 24.05 (stable) and don't have this issue. I'm not using Wayland, though. Using Settings/Gnome Control Center for this works just fine.


PDA owned storage accounts

PDA owned storage-accounts
I would love to start an open discussion of how storage accounts could be owned by PDAs.
At the moment this is not possible. To upload, edit and delete files we need to make a call to the Shdw-drive API. We need to pass a signature by the owner of the storage-account we want to make the action to.
We can't directly invocate an action from a program so we must do it from a client. But we can't just get a PDA signature to be passed in the API request either.
The Problem
Imagine you want to design a solana program that in which accounts need to store some data. Not everything must be on the blockchain and for costs purposes you decide that a field of the on-chain account points to a file hosted on the SHDW drive. Like the metadata_uri field in a metaplex metadata account. Or wordcel linking the actual content of an article.
At the moment doing this would require a normal keypair that has the authority over the storage-account we want to upload to. Then we could make our own front-end and do the logic from there. Uploading from the front-end and therefore ensuring that the uploaded file that is linked in the program account is correct.
-> This makes the use of the program only possible from one centralized front-end which defeats the purpose of using Shdw.
Potential Solution
Uploading and all other actions will only be possible through a client, there's nothing we can do here. But we could come up with a solution that the API can have something else than a signature as way to confirm an upload.
An attestation that a program can produce for a PDA that has the authority over the storage-account. That can then be passed in the upload API call to authorize it.
Helmet face on discord had the idea that the program with the authority PDA could have an instruction create a transaction that logs the operation that should be done. The transaction signature could be passed into the API call. On the backend the Shdw Drive would need to confirm that transaction and make it invalid after a single action performed.

Maybe there are other ways as well how something like this could be achieved. Let's discuss!

Let's distill the problem here a bit.
Goal:
For fully program-driven usage of Shadow Drive, including:

Creating and managing storage accounts
Uploading and deleting files.

What's Easy to Do?
Any of the purely on-chain operations are doable, which basically encompasses the entire first bullet, i.e. storage account creation / management. Programmers will have to decide how exactly they'd like to provide the funds, etc, but this all basically can be done OOB.
What's Hard to Do?
Anything in the second bullet regarding uploading files, deleting them, editing them, etc. It's hard for two reasons:

PDAs do not produce cryptographic signatures, therefore the "off-chain Web3 signature" style of request validation doesn't apply for programs.
The whole interaction with Shadow Drive with respect to actual files takes place off-chain. There's not an obvious, general way to make a file known to a program, and for a program to essentially make the HTTP calls necessary to Shadow Drive.

A Possible Solution

For off-chain operations like e.g. uploading a file, some PDA can be stored with a message that describes all pertinent details about the file to be uploaded, its hash, etc.
Once this PDA is created, anyone with the actual file could upload it.

The Lingering Problem with the Above Solution
How do you know if/when you can delete a PDA that is authorizing some file upload? The on-chain storage account's usage metrics are updated as files are uploaded, but there is no way to disambiguate which file caused which particular update.
I'm not sure this could be solved with any degree of high assurance.

Hi,
Unfortunately this cannot be done with the current architecture as a PDA can't emit a signature like a wallet can. A few users have tried to implement this with no avail. We will keep this type of functionality in mind for Shadow Drive V2, but currently it's not possible.


Change name from PyOwl to PrOwl

PrOwl makes more sense because it utilized praw, a python reddit API. Drawing from the pr and appending owl will give this project better branding

Also change name of pipelines to CI and CD


Add Snackbar

The only major thing needed now is a Material Design review. Other than that it should be in a stable state for usage and review. Remember though, this is still an experimental component, no support or stability is implied nor promised.
To run the examples:

Checkout snackbar branch
gulp all && gulp serve
Open http://localhost:5000/components/snackbar/demo.html
Press the buttons to show notifications.

Caveats with demo:

Pressing both buttons where they will overlap in timing will show some display problems. This is because you should only have one snackbar node to a page that is always called and the demo infrastructure has two. So, they are not using the same queue system and things overlap.

Known issues:

No animation

In the move to using dynamic elements, animating them became problematic so I dropped it. If anyone knows how to handle that, go for it.

Nice work, @Garbee! Very happy to see that this is responsive, as well :+1:
Got a few comments on code. Also, could you add a memory test with an action button and clicking it a few hundred times and showing a couple hundred toasts? Probably wanna tune down the timeout :wink:

Fixed is a better positioning choice. Updated to use that over absolute positioning.

On the note of memory test, going to tackle this in a follow-up PR since at the same time I'm going to do some updating to keep things consistent and easier to follow for future additions.

Yay for Flexbox :star2:. LGTM! Let’s wait for another ACK and then merge at will :)

haha, got an emoji into the commit. :wink:
Fits perfectly too.

Can’t believe you beat @samccone to the punch.

🗿

@sgomes Updated with some initial comments for the closure compiler. Hitting an error where the data object provided during showing doesn't seem to be setup properly for closure to understand. Any idea on how to solve that?
Other than that, I think it all looks good. But double-check to be on the safe side.

No worries, @Garbee, I'll do a thorough review! Quickly looking at the issue you're mentioning, though, the problem seems to be that you're using the dot syntax when doing data.actionText, which is getting compiled and thus not found when receiving a data structure that hasn't been compiled. I'll add some notes on how to fix it!

Added some comments which should hopefully fix the Closure issues. Looks good otherwise, thanks! :)

Also, if you run into any trouble implementing any of these changes, just let me know and I'll be happy to commit some changes to your branch. :)

Going for flexibility looks like the simplest thing to do here. I think the current checking done at runtime is good enough to prevent errors. I'll update to brackets in a bit. Thanks for the great information @sgomes.

Should all be fixed up now. Please review for merge!
cc @sgomes @addyosmani @surma

@Garbee Looks great! Couple of questions on this that may lead to improvements-
Is there currently the ability to make a snackbar/toast last indefinitely or until there is another notification in the queue?
What do you suppose is the best route to add a dismiss action to a snackbar (especially with indefinite notifications)? Should this be it's own argument?
General MDL process question- What is the difference between feature/snackbar and snackbar branches?

Is there currently the ability to make a snackbar/toast last indefinitely or until there is another notification in the queue?

No since this goes against the specification.

What do you suppose is the best route to add a dismiss action to a snackbar (especially with indefinite notifications)? Should this be it's own argument?

None. It is against the spec to have a dismiss action. Dialogs should be used for that.

What is the difference between feature/snackbar and snackbar branches?

feature/ was the original work, but after a rebase messed up the PR, I copied into snackbar and continued working with a fresh history. Feature is going to get deleted soon once I purge my branches again this week.

Got it! Thanks, I appreciate the insight.

Thanks for coding this up, @Garbee, I'm sure it'll get a lot of users :) LGTM, merge at will! :+1: :fireworks:

Thanks for working on this @Garbee. This looks solid to land. Let's merge it in.


ollama run llamaX.X The directory where the model is downloaded and stored

I run ollama run llama3.1 on my local terminal. After downloading, where is the model stored? Why can't I find it?

https://github.com/ollama/ollama/blob/main/docs/faq.md#where-are-models-stored